Ну, это может быть простой сетевой вопрос, но вопрос, который меня озадачивает. Я надеюсь, что кто-то может кое-что прояснить для меня. У меня есть физические компьютеры, ноутбук с Linux и игровой компьютер (действительно актуальный), который я использую для двойной загрузки win7 и сервера Ubuntu. Затем я установил apache, ssl, php, mysql на моем сервере. Затем я изменил /etc /hosts /, чтобы мой внутренний IP-адрес сервера вызывался, например: myserver.com

Сейчас.. Я хочу получить свой внешний IP-адрес в /etc /hosts, чтобы я мог подключиться с моего ноутбука к моему серверу (который будет включен)

Однако я не знаю, нормально ли это, но я выполнил команду:

curl ifconfig.me 

и мне дали мой внешний ip на моем сервере, который является xx.xxx.xxx.21 я был счастлив, и я использовал это, чтобы соединиться с моим браузером, и все это работает (это сделало меня счастливым), теперь я попробовал ту же самую команду на своем ноутбуке и мне дали тот же IP:

xx.xxx.xxx.21

Как два разных компьютера (которые я тестировал сетевое подключение) могут иметь одинаковый IP-адрес?

И затем мой второй вопрос: почему, когда я набираю xx.xxx.xxx.21 в своем браузере, он переводит меня на серверный apache, а не на ноутбук?

На моем маршрутизаторе перенаправление портов я включил HTTPS для внутреннего IP-адреса моих серверов, и я включил 80 на внутреннем IP-адресе моего ноутбука.

Буду рад, если кто-нибудь сможет уточнить это для меня.

1 ответ1

0

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

Если вы проверите IP-адрес на сетевом интерфейсе каждого компьютера с помощью, например, команды ifconfig , вы увидите, что у них действительно разные IP-адреса на внутренней стороне.

Выше приведены основные элементы NAT; если вы хотите получить более подробную информацию, вы можете перейти к Wikipedia: Network Address Translation.

Обычно вы будете использовать внутренний, а не внешний IP-адрес в /etc /hosts на узлах "внутренней" (локальной) сети. Таким образом, вам не нужно беспокоиться о том, что ваш провайдер назначит вам новый адрес.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .