Як і чому всі пристрої у вашій домашній частині одного IP-адреси
Якщо ви подібні до більшості користувачів, ваш постачальник послуг Інтернету надає вам єдину адресу протоколу Інтернету, а маршрутизатор надасть вам доступ до всіх підключених пристроїв у вашому домі..
Це фактично порушує принцип наскрізного, який був розроблений в Інтернеті. Тим не менш, є тільки так багато IP-адрес, щоб обійти - ми закінчуємося.
Публічні IP-адреси є обмеженим ресурсом
Існує менше 4,2 мільярди IP-адрес IPv4. Інакше кажучи, на планеті більше підключених пристроїв, ніж єдині для них загальнодоступні IP-адреси. В Інтернеті закінчуються адреси IPv4, навіть якщо ми їх нормуємо.
Замість того, щоб ваш Інтернет-провайдер привласнював кожному пристрою у вашому домі унікальний публічний IP-адресу - вам потрібно було б додаткову IP-адресу кожного разу, коли ви купували новий комп'ютер, планшет, смартфон, ігрову консоль або що-небудь інше - ваш провайдер, як правило, призначає єдину IP-адресу.
Загальнодоступні та приватні IP-адреси
Ваш маршрутизатор підключений безпосередньо до Інтернету, і вам присвоєно загальнодоступну IP-адресу (яка може змінюватися з часом). Ваш маршрутизатор відповідає за спільне використання IP-адреси серед інших комп'ютерів і підключених пристроїв у вашому домі.
Ваш маршрутизатор призначає локальні IP-адреси до підключених пристроїв. Це дозволяє їм спілкуватися один з одним за вашим маршрутизатором у вашому домі. Однак ці локальні IP-адреси недоступні з Інтернету. Іншими словами, ваш загальнодоступний IP-адресу може бути подібним до 23.24.35.63. Будь-хто в Інтернеті може спробувати з’єднатися з цією адресою, і вони дістануться до вашого маршрутизатора. Приватна IP-адреса вашого комп'ютера може бути подібною до 192.168.1.100. Коли хтось в Інтернеті намагається з'єднатися з цією адресою, комп'ютер буде шукати адресу 192.168.1.100 у своїй локальній мережі.
Якщо це трохи заплутано, спробуйте подумати про офісну будівлю. Адреса офісної будівлі може бути 500 Fake Street, Fake Town, США. Будь-хто може надсилати пошту на цю адресу з будь-якої точки світу - ця адреса еквівалентна загальнодоступній. Офіс в офісній будівлі може бути «Номер 203». Як і місцеві IP-адреси, «Номер 203» не є глобальною унікальною адресою - він використовується у багатьох офісних будівлях. Ви не можете направляти пошту безпосередньо до кімнати 203, якщо ви живете на іншій стороні світу. Ви повинні звернутися до поштової розсилки до самої офісної будівлі.
Переклад мережевих адрес (NAT) і переадресація портів
Коли ви підключаєтеся до чогось в Інтернеті - веб-сайт, наприклад - ваш комп'ютер посилає пакети через ваш маршрутизатор. Ваш маршрутизатор змінює пакети і призначає унікальний порт для кожного вихідного з'єднання на маршрутизаторі. Коли веб-сайт або інший сервер надсилає дані назад, він відправляє дані до цього конкретного порту, і ваш маршрутизатор знає, що він повинен відправити дані назад на той самий пристрій, який ініціював вихідне з'єднання. Ось як маршрутизатори обробляють інтернет-трафік для декількох комп'ютерів одночасно, використовуючи єдину IP-адресу і знають, куди повинен йти весь трафік.
Проте, це може привести до виходу з ладу при непроханні вхідного трафіку. Наприклад, якщо хтось намагається підключитися до IP-адреси вашого маршрутизатора самостійно, ваш маршрутизатор не знає, куди слід пересилати цей трафік. Все, що ваш маршрутизатор може зробити, це взяти трафік і відкинути його. Це по суті означає, що ваш маршрутизатор виступає як свого роду брандмауер, відкидаючи незатребуваний вхідний трафік.
Якщо ви хочете отримати цей вхідний трафік, ви можете налаштувати перенаправлення портів на маршрутизаторі. Наприклад, ви можете сказати вашому маршрутизатору, що ви запускаєте сервер Minecraft на порт 25565 на певній локальній IP-адресі. Коли ваш маршрутизатор отримує підключення до порту 25565, він знає, що він повинен передати цей трафік до вказаної локальної IP-адреси. Ось чому перенаправлення портів необхідно для програм, які функціонують як сервери і отримують непроханий вхідний трафік за межі вашої локальної мережі.
Два можливі ф'ючерси
Як ми вже згадували вище, нам не вистачає IP-адрес IPv4, незважаючи на нормування. У довгостроковій перспективі, кожен пристрій, сподіваємося, матиме власну IP-адресу. У короткостроковій перспективі ви навіть не можете мати єдину загальнодоступну IP-адресу.
- Адреси IPv6 для кожного пристрою: IPv4 має менше 4,2 мільярда адрес, але IPv6 може запропонувати 2128 можливі IP-адреси. Вольфрам Альфа може допомогти нам поставити цю величезну кількість в перспективі: це - різні IP-адреси, або близько 50100000000000000000000000000 унікальних IP-адрес для кожної людини на планеті. Як тільки IPv6 стане більш поширеним і замінить IPv4, ми можемо призначити кожному підключеному пристрою унікальну IP-адресу в Інтернеті.
- Рівень несучої NAT: У короткостроковій перспективі деякі провайдери намагаються надати своїм клієнтам адреси IPv4. NAT-клас оператора є запропонованим рішенням, яке розглядають деякі провайдери. Провайдер, що використовує NAT-клас оператора, міг би зберегти свої загальнодоступні IP-адреси. Для використання локальних IP-адрес всім своїм клієнтам було б використано NAT (як і ваш домашній маршрутизатор). Клієнти не матимуть власної власної IP-адреси в Інтернеті і не зможуть використовувати серверне програмне забезпечення, яке вимагає переадресації портів або прямих з'єднань.
Інтернет ніколи не був розроблений для багатьох підключених пристроїв, і домашні маршрутизатори з технологіями NAT є єдиною причиною, по якій ми можемо підключити стільки пристроїв без переходу на IPv6.
Зображення: Matt J Newman на Flickr, Bob Mical на Flickr, webhamster на Flickr, Jemimus на Flickr