Pull to refresh
10
Karma
0
Rating
Андрей @spectreob

Web-разработчик

Домашний хостинг сайтов с динамическим IP

Они указывают на ваш собственный DNS-сервер который занимается обслуживанием запросов посетителей сайта.

То есть обработка запроса выглядит примерно так:
  • Некий человек открыл свой браузер и ввел там имя forums.domain.ru
  • Данный запрос будет обрабатываться с конца, то есть сначала будет произведен поиск DNS-сервера который обрабатывает .ru домены
  • Потом будет найден DNS-сервер который обрабатывает domain.ru домен (это как раз и будет наш собственный сервер)
  • И вот уже на наш DNS-сервер придет запрос, мол «что за forums.domain.ru»?

Домашний хостинг сайтов с динамическим IP

Вы абсолютно правы, мой домашний NAS используется как торрент-качалка, DLNA-сервер для 2-х ТВ, для обучения, для бекапа данных и тому подобное.

Домашний хостинг сайтов с динамическим IP

Вы с одной стороны правы (используя PDD можно упростить настройку), но с другой стороны это ведь только часть работы. Вам все равно придется думать как обновлять IP через API, про настройку роутера (тот-же форвардинг портов), про правильную настройку записей в DNS (время жизни и прочее).
Я просто хотел дать готовую инструкцию для тех, кто хочет сделать именно так (с DDNS и своим DNS).
Для тех кто хочет сделать иначе (через тот-же Яндекс ПДД), я постараюсь написать отдельную инструкцию, по тому-же принципу — вот вам 5 шагов и радуемся.

Домашний хостинг сайтов с динамическим IP

Боюсь, что тут единственный вариант — это VPN-тунель. То есть ищем сервис который имеет статический IP и позволяющий пробивать к нему VPN-тунель. В комментариях тут подобные сервисы проскакивали, но я их не пробовал.

Принцип далеко не нов, тот-же Hamachi так работает, вопрос лишь в том, чтобы задействовать это под наши нужды (хостинг).

Домашний хостинг сайтов с динамическим IP

Какой смысл делать все это вручную, если даже старый D-Link может автоматом все это настроить прямо из веб-панели? потом просто пробросить порт на 80 порт своего устройства.

Извиняюсь, что именно позволяет делать старый D-Link? Если что, у меня был D-Link T500 (с родной и кастомной прошивками), но не могу догадаться как он поможет мне хостить сайты.

Первое — это то что канал связи узкий

ADSL да, Ethernet (или оптоволокно) нет.

Куча хостеров дают лимитированные бесплатные или почти бесплатные VDS, даже тот же самый Amazone, для типовых проектов есть шаред хостинги, для OpenSource тоже есть варианты.

Если можно, чуть больше конкретики. Вот мол, такой-то сервис, заходим туда-та, получаем то-то.

Домашний хостинг сайтов с динамическим IP

Честно говоря, посещаемость в районе плинтуса :), как я писал выше, это домашняя страница + домен для красивой почты (просто редиректит на мое резюме) + ряд демонстрационных сайтов.

Ну вот, просто ради интереса, сделал несколько тестов чтобы сравнить со своим прошлым хостингом. Использую стандартный ab из пакета Апача, делаю 1000 запросов, 100 параллельно (ab -n1000 -c100).

Сравнивал из дома, так что не обессудьте, что у домашнего сервера будет в этом плане преимущество. Позже постараюсь повторить тест извне.

Делаю 3 теста:
1. CGI-скрипт (Apache + Perl)

Сам скрипт:
#!/usr/bin/perl

print "Content-type: text/plain\n\n";
print "Hello world!\n";


NAS:
Requests per second:    248.15 [#/sec] (mean)


Проф. хостинг:
Time per request:       196.557 [ms] (mean)


2. PHP-скрипт (Apache)

Сам скрипт:
<? echo "Hello world" ?>


NAS:
Requests per second:    503.93 [#/sec] (mean)


Проф. хостинг:
Requests per second:    383.71 [#/sec] (mean)


3. Дергаю статику (картинку)

Картинка имеет размер 3Кб.

NAS (Apache):
Requests per second:    426.04 [#/sec] (mean)


Проф. хостинг (nginx):
Requests per second:    469.61 [#/sec] (mean)


Итог
Разумеется в реальной жизни проф. хостинг будет быстрее. Результаты выше объясняются исключительно тем, что домашний сервер находится ближе ко мне. С другой стороны, я не ожидал, что скорость будет примерно на одном уровне, думал порвут мой NAS как тузик грелку.

Домашний хостинг сайтов с динамическим IP

Спасибо за ссылку, но я тоже самое делаю сейчас скриптом (по API Яндекса). Это буквально 1 запрос который удобно Curl'ом выполнять.

Единственное, что для этого надо почитать доки, найти токен, найти что такое record_id, потом подумать как обрабатывать ошибки. Это все вполне потянет на небольшую статью, с примерами и скриптом обновления.

Домашний хостинг сайтов с динамическим IP

Почитайте, пожалуйста, внимательно — http://freedns.afraid.org/queue/explanation.php:

This area is only used if you own domain(s) in the system, of which there are 3 possibilities, based on FreeDNS being a shared DNS system.

1). Shared: Public — If you add your domain as public, this queue will not be used at all, others will be permitted to create subdomains off your domain without involving you.

2). Shared: Private — If you add your domain as private, this is the area you will screen your domains of which you decide to keep, or deny. While domains are in the queue they will function. By choosing this, you agree to only deny those that you deem offensive, or slanderous.

3). Non-Shared: Invisible / Stealth — If you add your domain as stealth (premium members only), your domain will not be available for anyone else but you to use, and this queue will not be used at all. (Becoming a premium member can be done at any time, easily).


То есть если кто-то добавляет свой сабдомен на ваш домен, то вы можете найти этот запрос в очереди и отказаться. Но пока вы этого не сделали, сабдомен будет замечательно работать.

Да и формулировка меня смущает «Выбирая это, вы согласны отвергать только те домены, которые сочтете оскорбительными или клеветническими».

Чтобы такого не было — платите деньги за 3-ий вариант.

Домашний хостинг сайтов с динамическим IP

Уж простите, но вы явно писатель, а не читатель.

Покупать сервер только для того, чтобы хостить на нем сайты дома — это бред. Я без понятия почему эту очевидную вещь еще должен доказывать.

В то же время, у кучи людей дома есть какой-нибудь Rapsberry (лично у меня есть odroid c1) или linux сервер на Ubuntu или FreeNAS. Почему бы его не задействовать?..

Домашний хостинг сайтов с динамическим IP

Уточните, пожалуйста, что вам выдает «nslookup domain.tk»? И что «host -a domain.tk»?

Bind при попытке указать домен в A-запись (вместо IP) выдаст ошибку. То есть единственный вариант — это вообще не создавать A-запись.

Домашний хостинг сайтов с динамическим IP

И да, экономические издержки спорны, домашний сервер — это не только его покупка, но и содержание, причем не только по администрированию, но и бесперебойному обеспечению электричеством… Я уж молчу про шум и охлаждение…

Автор уже 5 лет имеет свой сервер и покупать его надобности никакой нет. Поэтому все комментарии про расходы на покупку, содержание и шум идут мимо.

Могу провести такую аналогию — у меня в гараже стоит своя машина, так зачем мне ездить на такси?

Домашний хостинг сайтов с динамическим IP

Еще раз повторюсь, что под мои требования нужно 9$ (а не 2 или 3). Но дело не только в деньгах, а в том, что каждый месяц мне приходило напоминание оплатить эти самые 9$, на что приходилось тратить некоторое время.

В то-же время у меня есть свой сервер. Плюс задача мне была интересна и я с удовольствием ее решил на выходных.

Домашний хостинг сайтов с динамическим IP

Ничего не мешает, как я написал в постскриптуме если будут желающие, то я напишу вторую часть статьи именно про использование Яндекс DNS. Это по-сути уберет необходимость настраивать свой Bind, так-же можно полностью отказаться от DDNS-сервиса.

Правда прямо сейчас от меня висит заявка в суппорт Яндекса из-за того, что они время от времени возвращают старую запись зоны (3-х дневной давности). Так что у варианта со своим DNS-сервером есть свои плюсы.

Домашний хостинг сайтов с динамическим IP

Я не силен в SEO, но просто логически если мой сервер за 24 часа недоступен 2 минуты (ну пусть даже 5 минут) то вряд-ли именно в этот момент придет бот поисковика. Но даже если придет, неужели по одному отказу он сразу понизит рейтинг сайта?..

Экономические затраты у меня такие: свой домашний сервер стоит уже 5 лет, на нем хранится всяко-разно. То есть я плачу за интернет (50-100Мбит), электричество и железо при любых раскладах. Под хостинг требуются смешные несколько сотен мегабайт места, я просто на SSD-диске это место выкроил (который вообще на 30Гб и предназначен для быстрого запуска Ubuntu).

Про юридическую часть — как я писал в заметке, на этом хостинге живут мои личные сайты. Плюс домены у меня в зоне .org (а не .ru). В общем, в этом отношении я спокоен.

Домашний хостинг сайтов с динамическим IP

Минимальный тарифный план который подходил мне (на тот момент было 3 домена, с кучей поддоменов, плюс пара MySQL баз, плюс почта) стоил 9$ в месяц.

VPS — это получится некий промежуточный вариант — надо и самому с настройкой сервера возится, плюс платить за него каждый месяц.

А про почту — я в итоге пришел к решению от Яндекса — http://pdd.yandex.ru

Домашний хостинг сайтов с динамическим IP

Вы абсолютно правы, CNAME с доменом прописать можно. Я пару дней именно на такой схеме и поработал, но у нее есть глобальный недостаток — ваш domain.com не будет резолвится DNS-серверами в IP-адрес.

То есть www.domain.com будет работать, тут проблем нет. А вот сам domain.com не будет, поскольку для него обязательно наличие A-записи с реальным IP-адресом. Редирект посредством DNS вы не настроите (на www версию), а web-редирект или rewrite rule опять-таки требуют чтобы посетители попадали на ваш domain.com, а они тут просто не попадают.

Именно чтобы исправить этот недостаток, я и поднимал свой DNS-сервер (что не помогло), а потом в итоге добавил эту злосчастную A-запись.

Домашний хостинг сайтов с динамическим IP

Автор просто это забыл за давностью лет (9 лет назад ушел из админства). :) Спасибо за отзыв, поправил.

Домашний хостинг сайтов с динамическим IP

У вас обычная задача доступа к серверу с динамическим реальным IP, она несложная. Вот если бы вы действительно с серым (приватным) адресом сайт подняли и сделали к нему доступ из интернета…

Ни в коем случае не преувеличиваю сложность задачи. :) Просто на выходных появилась такая задача, гугл никаких готовых решений не выдал. Поэтому пришлось делать самому, ну и заодно отписал, что и как сделал.

Рассматривал и вариант с VPN-тунелем, но опять-таки надо где-то иметь сервер с статическим IP.

Домашний хостинг сайтов с динамическим IP

Спасибо за отзыв, поправил терминологию: белый -> статический, серый -> динамический.

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity