Існують два пристрої в різних містах, причому обидва вони мають однакові приватні IP-адреси. Як я можу отримати їх комунікації (SSH, RDP, FTP, Telnet, і т.д.). Будь ласка, поясніть детально.
Дякую
Існують два пристрої в різних містах, причому обидва вони мають однакові приватні IP-адреси. Як я можу отримати їх комунікації (SSH, RDP, FTP, Telnet, і т.д.). Будь ласка, поясніть детально.
Дякую
Відповіді:
Я припускаю, що ви говорите про два стандартних житлових або комерційних інтернет-з'єднання (а не орендовану лінію або два сайти, пов'язані VPN або подібними).
У прикладі мережі нижче ми маємо дві будівлі та сервер (у будь-якій точці світу), які підключені через Інтернет. У нас є два маршрутизатори - R1 і R2 - кожен з яких має інший громадськості IP-адреса (або "" зовнішній " IP-адреса).
У будинках маршрутизатори та пристрої мають загальні IP-адреси - маршрутизатори ( R1 і R2 ) використовувати a приватний IP of 192.168.0.1та пристрої ( DA і DB ) використовувати a приватний IP of 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 ), який потім пересилатиме пакети до Інтернету.
У цьому випадку маршрутизатор буде трохи переписати пакет, позначивши " Адреса джерела "as R1 Публічна адреса користувача ( 203.0.113.5 ), замість DA адреса користувача ( 192.168.0.10 ). Коли пакет повертається R1, він перевірить таблиці підключень, переписати пакет так, щоб призначення було DA і переадресуйте пакет до локальної мережі.
Це називається Переклад мережевих адрес (NAT), і перезаписування вихідних пакетів для використання власної адреси маршрутизатора називається " Маскарад "- тобто: всі вихідні пакети, здається, походять від маршрутизатора, а не пристрою, що стоїть за ним.
Це дозволяє здійснювати зв'язок між пристроями в приватній мережі (наприклад: DA і DB ) і публічний сервер в Інтернеті.
Щоб представити деякі послуги, що надаються в мережі будівлі A, ми повинні зробити R1 виглядає більше як сервер у 203.0.113.42... Для цього ми вводимо перенаправлення портів .
Це техніка, яка дозволяє нам налаштовувати R1 прийняти вхідні запити на порт (наприклад 22 для SSH ), і пересилати їх іншому хосту в межах приватної мережі.
В цьому випадку, DA на сервері працює сервер SSH 22, так ми налаштовуємо R1 перенаправити порт 22 на його зовнішній інтерфейс (тобто: 203.0.113.5:22 ) на сервер на його внутрішньому інтерфейсі (тобто: 192.168.0.10:22 ).
Тепер, коли ми налаштували перенаправлення портів, DB може отримати доступ DA Сервер SSH для підключення R1 Публічна адреса ... яка є 203.0.113.5, порт 22. Примітка: DB не використовує або ніколи не знає DA приватна IP-адреса та навпаки.
Для вас піклуватиметься про переклад мережевої адреси, а повний ланцюжок буде виглядати приблизно так:
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 розглядається як джерело, так і призначення, або може бути досягнуто через два інтерфейси. Якби це було так, то посилання явно не спрацювало.
Деякі примітки: