
Возможно ли из частной сети получить доступ к публичному серверу (т. е. серверу с публичным IP-адресом) без NAT? Другими словами, может ли Интранет предоставлять публичные услуги, если я даю публичные адреса серверу и частные адреса хостам в Интранете?
решение1
Нет.
Частная сеть, скорее всего, сможет отправить пакет на публичные IP-адреса (при условии, что частная сеть имеет правильно настроенный маршрутизатор с интерфейсом как в публичном Интернете, так и в частной внутренней сети). Но сервер в публичном Интернете не сможет отправить ответ обратно в не-NAT-частную сеть, просто потому, что сервер не будет знать, куда отправлять эти данные ответа.
Чтобы компьютеры могли общаться по IP друг с другом в сети, они должны знать IP-адрес другого человека, с которым они общаются, и какой следующий шаг для получения этого IP-адреса. Если IP-адрес находится в той же подсети, то ваш компьютер просто спросит «у кого есть IP-адрес wxyz» в локальной подсети, а затем напрямую обратится к компьютеру, который ответит. Если IP-адрес не находится в той же подсети, то компьютер будет следовать инструкциям в своей таблице маршрутизации (обычно отправит пакет на локальный маршрутизатор, указанный как «шлюз по умолчанию» в конфигурациях IP).
Каждый межсетевой узел (обычно маршрутизаторы в этой точке), который получает пакет, будет смотреть на IP-адрес назначения и делать аналогичное определение того, кто является следующим звеном в цепочке, которое доставит этот пакет в конечный пункт назначения. И так далее, пока он, наконец, не прибудет туда, куда ему положено.
Но все это зависит от того, указан ли пункт назначения в заголовке пакета (как того требует протокол IP) и что шлюзы и маршрутизаторы знают, как отправлять данные в сеть, к которой принадлежит IP. Если у вас частный IP-адрес без NAT, то эти маршрутизаторы не будут знать, как доставить пакет, и они его отбросят. Он становится электронным эквивалентом «мертвого письма», которое просто исчезает навсегда.
NAT использует публичный IP-адрес (или адресэс) в качестве подставного лица для посредничества в коммуникациях для вашей частной сети. Когда он видит исходящий трафик, он изменяет часть заголовков "ответьте мне по этому адресу" для использования своего собственного публичного IP; и устройство NAT хранит таблицу поиска для тех, кому оно передает коммуникации, так что когда приходят ответы, оно может перенаправить их на правильный IP в частной сети. Без этой функции преобразования адресов компьютер в частной сети не может общаться по TCP/IP с компьютером в публичном Интернете.
решение2
За исключением «нет» вверху ответ @Ruscal правильный, но неполный.
Ответ предельно определен: «Да, иногда, в ограниченных масштабах, в зависимости от того, как это организовано».
Есть как минимум 2 обходных пути:но все они требуют систему, доступ к которой возможен по частному IP, но которая в свою очередь имеет доступ в Интернет, например, второй интерфейс с публичным IP- это распространено на маршрутизаторах и не является чем-то необычным на серверах (но не является чем-то необычным)
В приведенном выше случае обходные пути включают:
- Используя эту систему в качестве прокси.
- Настройка VPN между этой системой и внешней, а затем использование VPN или туннеля через эту систему.