дповідь пакети на зовнішній IP-адресу та порт пристрою NAT (маршрутизатора), вказуючи в полях джерела свої власні IP-адресу та порт (рис. 2). У розглянутому прикладі відповідь пакет від сервера буде містити в заголовку таку інформацію:
Малюнок 1. - Принцип роботи маршрутизатора при передачі пакету із зовнішньої мережі. Примітка: [складено автором]
під внутреннююадрес джерела - 64.233.183.104;
порт джерела - 80; адреса одержувача - 195.2.91.103;
порт одержувача - 3210;
протокол - TCP.
Маршрутизатор приймає ці пакети від сервера і аналізує їх вміст на основі своєї таблиці зіставлення портів. Якщо в таблиці буде знайдено зіставлення порту, для якого IP-адреса джерела, порт джерела, порт призначення і мережевий протокол з вхідного пакету збігаються з IP-адресою віддаленого вузла, з віддаленим портом і з мережевим протоколом, зазначеним у зіставленні портів, то маршрутизатор виконає зворотне перетворення: замінить зовнішній IP-адресу та зовнішній порт в полях призначення пакета на IP-адресу та внутрішній порт клієнта внутрішньої мережі. Таким чином, пакет, переданий у внутрішню мережу, для розглянутого вище прикладу матиме наступні атрибути: адреса джерела - 64.233.183.104;
порт джерела - 80; адреса одержувача - 192.168.0.1;
порт одержувача - тисяча двісті п'ятьдесят один;
протокол - TCP.
Однак якщо в таблиці зіставлення портів чи не знаходиться відповідності, то вхідний пакет відкидається і з'єднання розривається.
Будь ПК внутрішньої мережі може передавати дані в Глобальну мережу з використанням зовнішнього IP-адреси і порту маршрутизатора. При цьому IP-адреси внутрішньої мережі, як присвоєні сесіям порти, залишаються невидимими з боку зовнішньої мережі.
Однак маршрутизатор дозволяє обмінюватися даними між комп'ютерами внутрішньої і зовнішньої мереж тільки в тому випадку, якщо цей обмін ініціюється комп'ютером внутрішньої мережі. Якщо ж який-небудь комп'ютер зовнішньої мережі спробує отримати доступ до комп'ютера внутрішньої мережі за власною ініціативою, то таке з'єднання маршрутизатором відкидається. Саме тому отримати віддалений доступ до комп'ютера, розташованому у внутрішній локальній мережі, захищеної маршрутизатором, не так-то просто. У той же час існують технології, що дозволяє вирішити проблему доступу до комп'ютера в складі локальної мережі з Інтернету.
Для того щоб зробити комп'ютер у складі локальної мережі доступним з Інтернету, необхідно провести специфічні налаштування на маршрутизаторі, тобто або організувати так звану демілітаризовану зону і додати в неї потрібний комп'ютер, або реалізувати статичну перенаправлення портів на маршрутизаторі (Port Forwarding, Port mapping).
Демілітаризована зона (DMZ-зона) - це спосіб обходу обмежень протоколу NAT. Комп'ютер внутрішньої локальної мережі, розміщений в зоні DMZ, стає прозорим для протоколу NAT. Фактично це означає, що комп'ютер внутрішньої мережі віртуально розташовується перед брандмауером. Для ПК, що знаходиться в DMZ-зоні, здійснюється перенаправлення всіх портів на один внутрішній IP-адресу, що дозволяє організувати передачу даних із зовнішньої мережі у внутрішню.
Якщо, приміром, комп'ютер з IP-адресою 192.168.1.10, що знаходиться у внутрішній локальній мережі, розміщений в DMZ-зоні, а сама локальна мережа захищена маршрутизатором, то при вступі за будь-якого порту запиту з зовнішньої мережі за адресою WAN-порту маршрутизатора цей запит буде переадресований на IP-адреса 192.168.1.10, тобто на адреса комп'ютера в DMZ-зоні.
Оскільки комп'ютер, розміщений у DMZ-зоні, стає доступним із зовнішньої мережі і ніяк не захищений брандмауером, він стає вразливим місцем мережі. Вдаватися до розміщення комп'ютерів в демілітаризованій зоні потрібно тільки в самому крайньому випадку, коли ніякі інші способи обходу обмежень протоколу NAT з тих чи інших причин не підходять.
Найбільш часто для віддаленого доступу до комп'ютера, розташованому у внутрішній мережі, застосовується так зване статичне перенаправлення портів. Технологія статичного перенаправлення портів дозволяє зробити доступними із зовнішньої мережі певні програми, що запускаються на комп'ютері у внутрішній мережі. Для того щоб реалізувати перенаправлення портів, в маршрутизаторі слід задати зіставлення між портами, використовуваними певними додатками, і IP-адресами тих комп'ютерів внутрішньої мережі, на яких ці програми працюють (такі комп'ютери називають віртуальними серверами). У результаті будь-який запит із зовнішньої мережі на зовнішній IP-адресу маршрутизатора за вказаною порту буде автоматично перенаправлений на вказаний віртуальний ...