В разных городах есть два устройства, и оба имеют одинаковые частные IP-адреса. Как мне их связать (SSH, RDP, FTP, Telnet и т.д.). Пожалуйста, объясните подробно.
Спасибо
В разных городах есть два устройства, и оба имеют одинаковые частные IP-адреса. Как мне их связать (SSH, RDP, FTP, Telnet и т.д.). Пожалуйста, объясните подробно.
Спасибо
Я предполагаю, что вы говорите о двух стандартных жилых или коммерческих интернет-соединениях (а не об арендованной линии или двух сайтах, связанных VPN или подобными).
В приведенном ниже примере сети у нас есть два здания и сервер (в любой точке мира), которые подключены через Интернет. У нас есть два маршрутизатора - R1 и R2 - каждый из которых имеет свой публичный IP-адрес (или « внешний » IP-адрес).
Внутри зданий все маршрутизаторы и устройства имеют общие IP-адреса - маршрутизаторы (R1 и R2) используют частный IP-адрес 192.168.0.1 , а устройства (DA и DB) используют частный IP-адрес 192.168.0.10 .
Внешне к зданиям маршрутизаторы имеют разные публичные IP-адреса - 203.0.113.5 и 203.0.113.219 . Сервер доступен по общедоступному IP-адресу 203.0.113.42 .
Здесь есть важное различие между двумя типами IP-адресов, дополнительную информацию можно найти на вики-странице « Зарезервированные IP-адреса ».
Чтобы DA мог получить доступ к серверу или хосту в Интернете (например, 203.0.113.42), ему необходимо получить помощь от маршрутизатора - потому что 203.0.113.42 не доступен в локальной сети. Таким образом, он отправит пакеты на настроенный маршрутизатор (R1), который затем перенаправит пакеты в Интернет.
В этом случае маршрутизатор будет слегка перезаписывать пакет, помечая « Адрес источника » как открытый адрес R1 (203.0.113.5) вместо адреса DA (192.168.0.10). Когда пакет затем возвращается в R1 , он проверит таблицы соединений, перезапишет пакет так, чтобы адрес назначения снова был DA , и перенаправил пакет в локальную сеть.
Это называется преобразованием сетевых адресов (NAT), а перезапись исходящих пакетов для использования собственного адреса маршрутизатора называется « маскарадингом », т. Е. Все исходящие пакеты, по-видимому, исходят от маршрутизатора, а не от устройства, находящегося за ним.
Это позволяет осуществлять связь между устройствами в частной сети (например, DA и DB) и общедоступным сервером в Интернете.
Чтобы представить некоторые услуги, предоставляемые внутри сети здания А, нам нужно, чтобы R1 больше походил на сервер в 203.0.113.42 ... Для этого мы вводим переадресацию портов .
Это метод, который позволяет нам настроить R1 для приема входящих запросов на соединение через порт (например, 22 для SSH) и пересылать их на другой хост в частной сети, которую он обслуживает.
В этом случае DA имеет SSH-сервер, работающий на порту 22 , поэтому мы настраиваем R1 для переадресации порта 22 на его внешнем интерфейсе (т. 203.0.113.5:22) на сервер на его внутреннем интерфейсе (т. 192.168.0.10:22).
Теперь, когда мы настроили переадресацию портов, DB может получить доступ к SSH-серверу DA , подключившись к общему адресу R1 ... 203.0.113.5 , порт 22 . Примечание: DB не использует или никогда не должен знать частный IP-адрес DA , и наоборот.
Трансляция сетевых адресов позаботится о вас, и вся цепочка будет выглядеть примерно так:
DB отправляет пакет в R2 - Источник: 192.168.0.10 , Назначение: 203.0.113.5R2 переписывает пакет - Источник: 203.0.113.219 , Назначение: 203.0.113.5
R2 отправляет пакет через Интернет, а R1 получает егоR1 переписывает пакет - Источник: 203.0.113.219 , Назначение: 192.168.0.10
R1 отправляет пакет по локальной сети, а DA получает егоОбратный путь / ответ обратный:
DA отправляет пакет на R1 - Источник: 192.168.0.10 , Назначение: 203.0.113.219R1 переписывает пакет - Источник 203.0.113.5 , Назначение: 203.0.113.219
R1 отправляет пакет через Интернет, а R2 получает егоR2 переписывает пакет - Источник: 203.0.113.5 , Назначение: 192.168.0.10
R2 отправляет пакет по локальной сети, а DB принимает егоКак видите, конфликтующие частные адреса вообще не имеют значения - ни одно устройство никогда не находится в ситуации, когда 192.168.0.10 рассматривается как источник и пункт назначения, или может быть достигнуто через два интерфейса. Если бы это было правдой, то ссылка явно не работала бы.
Некоторые заметки: