Разве NAT НЕ ДОЛЖЕН, когда в локальной сети используются частные IP-адреса rfc 1918? Может ли организация назначать своим хостам частные IP-адреса и при этом общаться с внешним миром без NAT?
как внутренний хост с частным IP (скажем, 10.1.1.1) может общаться с внешним миром без NAT? Я имею в виду, как может пакет ответа / ответа из внешнего мира достичь исходного источника, поскольку пакет с IP-адресом назначения = 10.1.1.1 будет потерян, поскольку его нельзя маршрутизировать, поскольку многие организации могут использовать один и тот же IP-адрес.
Почему RFC 1918 (Распределение адресов для частных сетей) не упоминает NAT?
зависит от определения термина «общение». Я видел пару сетей, в которых доступ в Интернет был только через прокси. прямой обмен пакетами между локальной сетью и «диким интернетом» был невозможен. ping был невозможен, но веб-приложения работали благодаря прокси.
Нет. Такие инструменты, как прокси-серверы, могут использоваться для «переинтерпретации» пакетов, не требуя наличия NAT. NAT - это просто удобный инструмент, позволяющий подключаться без явного прокси.
Маршрутизация работает следующим образом:
Большинство маршрутизаторов (и все хосты, которые хотят связываться с внешним словом) имеют маршрут по умолчанию 0.0.0.0/0, который является кратчайшим совпадением префикса (0 бит сетевой маски), и будут пересылать пакеты, не соответствующие какой-либо другой записи в связанный интерфейс. Они будут пересылать пакеты в RFC1918 адреса тоже. Так почему же мы не можем использовать их без NAT?
Поскольку основные Интернет-маршрутизаторы (я упрощаю) не имеют маршрута по умолчанию в своих таблицах маршрутизации, они участвуют в так называемой зона, свободная по умолчанию. Из-за этого они ДОЛЖНЫ иметь маршрут ко всем существующим сетям в Интернете (что означает, что в наши дни они проходят около 316K маршрутов). Поскольку они знают, какие адреса RFC1918 определяет как частные адреса, они не позволят этим сетям существовать в их таблицах маршрутизации. Вот почему вы не можете связаться с ними без NAT, и поэтому RFC1918 не упоминает о них.
Чтобы ответить на ваш вопрос, NAT НЕ является обязательным, если вы не хотите пересекать DFZ, и люди не активно фильтруют ваш трафик RFC1918 (что обычно делает ваш провайдер).
Независимо от того, используете ли вы прокси-сервер или какой-либо другой механизм, в какой-то момент внутренние IP-адреса необходимо «сопоставить» с внешним IP-адресом, который в моей интерпретации является NAT. Итак, мой ответ - да, требуется какая-то форма NAT.
Рабочий язык RFC 1918 находится в разделе 3:
Предприятие, решившее использовать IP-адреса из адресного пространства, определенного в этом документе, может сделать это без какой-либо координации с IANA или Интернет-реестром.
Подразумевается, что адреса в пуле RFC 1918 не должны появляться в глобальной свободной по умолчанию зоне, что является свойством, которое они разделяют с уникальными локальными адресами IPv6, то есть fc00 :: / 7, определенными в RFC 4193. Где они различаются. , конечно, заключается в том, что уникальные локальные адреса IPv6 явно помечаются как глобальные, а не как локальные для сайта, тогда как адреса IPv4 не имеют официального понятия об области адресации. На практике адреса RFC 1918 часто используются, как если бы они имели локальную область действия или локальную организацию, но в этом нет строгой необходимости.
Также нет необходимости использовать NAT, чтобы предоставить узлам с частным адресом доступ к общедоступному Интернету. Теоретически альтернативой является назначение таким хостам дополнительных адресов общедоступного интерфейса наряду с частными адресами. Выбор адреса источника должен работать.
Увы, когда людям предлагают существующую практику, которая работает, люди часто не обращают внимания на то, насколько она работает в теории.