Как мне связать мой внутренний IP с моим внешним ip?

Допустим, мой внутренний IP-адрес 192.168.0.1

А мой внешний IP-адрес 2.222.333.444

1.222.333.444 является динамическим и отслеживается при каждом изменении имени хоста www.website.com

Я хочу связать свой внешний ip, чтобы при подключении имени хоста он получал: www.website.com> 2.222.333.444> 192.168.0.1

1
задан 26 January 2014 в 20:26

2 ответа

Во-первых, вам необходимо зарегистрировать свой домен (www.my-website.com) у провайдера DNS, который предоставляет доступ к API, такого как Amazon Web Services (маршрут 53).

Затем вам нужно иметь небольшой сценарий в вашей домашней сети, который постоянно проверяет ваш публичный IP, например, как следующая команда bash.

wget -O - -q icanhazip.com.

Сценарий должен обнаруживать, изменился ли IP (отличается от кэшированного значения) и, если это так, использует IP в запросе API для обновления записей сервера имен.

Наконец, вам нужно использовать переадресацию портов на маршрутизаторе для маршрутизации входящих запросов на статический IP-адрес, который вы хотите обработать, например, запрос. 192.168.0.1. Вам также нужно будет сохранить частный IP-адрес вашего компьютера, либо установив статические IP-адреса, либо настроив все, что предоставляет службу DHCP (обычно это «домашний концентратор»). К сожалению, все хабы имеют разные функции, поэтому я не могу вам помочь. Например, мой BT-концентратор может отображать переадресацию портов на устройства на основе MAC, а не на IP-адреса, так что вы все равно можете иметь динамический статический IP-адрес.

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


Я только что заметил, что вы пометили вопрос «minecraft», и в этом случае я настоятельно рекомендую вместо этого просто получить VPS , поскольку это будет иметь гораздо лучшую скорость загрузки, а также гораздо более надежное подключение к интернету. например VPS будет иметь статический IP-адрес, поэтому у вас не будет простоев, пока обновляются серверы имен. Также немного сложнее перевести сервер minecraft в автономный режим с DDoS-атакой, чем домашнее соединение, в зависимости от поставщика, с которым вы работаете (некоторые даже предлагают защиту от DDoS как продукт , что выходит за рамки этот ответ).

Если, однако, вы решите продолжить маршрут по домашнему хостингу, вам нужно будет перенаправить TCP-порт 25565 на ваш частный IP-адрес на маршрутизаторе для Minecraft, если вы не измените порт по умолчанию на вашем сервере.

0
ответ дан 26 January 2014 в 20:26

Просто как 1, 2, 3 ...

  1. Подписаться на службу DNS
  2. Установить программу обновления DNS в локальной сети
  3. Направить входящий трафик на нужный компьютер

Подписаться на DNS service

Сервер доменных имен, или DNS, сопоставляет IP (внешние) адреса с доменными именами. Хотя возможно создать свой собственный DNS, лучше всего оставить это профессионалам, таким как:

  • DYN Удаленный доступ - это то, что я использую, $ 25 в год. Вы можете указать свое собственное доменное имя или выбрать поддомен из одного из множества собственных доменов (yourchoice.homedns.org). Вы можете направить 31 разных IP-адресов.
  • no-ip - имеет три версии, которые могут маршрутизировать 3 IP-адреса, и вы должны использовать их доменные имена. Оплата за версию составляет $ 19. Я никогда не использовал их, но они очень популярны.
  • Amazon Route 53 - $ 0,50 за каждую размещенную зону / месяц для первых 25 размещенных зон. Вероятно, самый дешевый маршрут, если вам нужен только маршрут 1 IP.

Вы не ошибетесь, просто выберите один и зарегистрируйтесь! Для получения дополнительной информации о DNS см .:

http://en.wikipedia.org/wiki/Domain_Name_System

Установите средство обновления DNS в вашей локальной сети

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

Однако я настоятельно рекомендую использовать ваш маршрутизатор, он потребляет мало энергии, всегда включен и более надежен, чем компьютер. Большинство маршрутизаторов позволят вам ввести имя пользователя и пароль для dyn (или других сервисов), и это сделает все остальное. Некоторые интернет-провайдеры предоставляют маршрутизаторы / модемы, которые не могут / не хотят этого делать. Если это ваш (или чей-то другой случай), просто прокомментируйте, и я включу эти инструкции.

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

Направляйте входящий трафик на нужный компьютер

В вашей домашней сети, скорее всего, есть маршрутизатор, который отвечает за входящий / исходящий трафик маршрутизатора через определенные порты через брандмауэр маршрутизатора. Основные шаги:

  1. Определите требуемые порты для переадресации. Это зависит от типа приложения, от того, кто написал программное обеспечение, и от того, как оно настроено, но для умственного развития вам нужно 25565. portforward.com предоставляет ресурсы для многих приложений.

  2. Войдите в свой маршрутизатор

  3. Назначьте вашему компьютеру фиксированный IP-адрес (вы можете использовать DHCP, если он способен перенаправлять на MAC-адрес

  4. Переадресация желаемых портов на IP / MAC-адрес

Дополнительные ресурсы

Этот ответ предназначен для обеспечения общего обзора необходимых основных шагов, а не подробности подробностей. На конкретные описанные задачи много раз отвечали в других формах. Если вы не можете найти информацию по конкретным задачам, оставьте комментарий к этому вопросу, и я свяжу соответствующие руководства.

Также обязательно проверьте:

http://portforward.com/softwareguides/minecraft/portforward-minecraft.htm

0
ответ дан 26 January 2014 в 20:26

Другие вопросы по тегам:

Похожие вопросы: