Ако живеете в типично домакинство, вероятно имате смартфон, лаптоп, смарт телевизор и може би конзола за игри, всички свързани към интернет едновременно. Всички тези устройства споделят един публичен IP адрес, предоставен от вашия интернет доставчик. И така, когато заредите видео на телефона си, как рутерът знае да изпрати видеото към телефона ви, а не към вашия смарт телевизор?
Магията зад това е процес, наречен Превод на мрежови адреси (NAT).
Частни срещу публични IP адреси
Вашият рутер създава частна локална мрежа във вашия дом. Той присвоява частен IP адрес (обикновено започващ с 192.168... или 10.0...) на всяко устройство, свързано към Wi-Fi. Тези частни адреси обаче не могат да се маршрутизират в обществения интернет.
Ролята на NAT
Когато докоснете видео връзка на телефона си, телефонът ви изпраща заявка до рутера. Рутерът разглежда заявката и прави няколко неща:
- Той записва личния IP адрес на вашия телефон в таблица за превод.
- Той заменя личния IP адрес на вашия телефон с публичния IP адрес на рутера.
- Той присвоява уникален "номер на порт" на заявката и я изпраща към интернет.
За видеосървъра заявката изглежда така, сякаш идва директно от рутера. Сървърът изпраща видео данните обратно към публичния IP адрес на рутера, маркиран с този конкретен номер на порт.
Доставка на пакета
Когато видео данните пристигнат във вашия дом, рутерът проверява номера на порта на входящите данни, преглежда своята таблица за превод и казва: „Ах, порт 55432 съответства на заявката, направена от смартфона на частен IP 192.168.1.5.“ След това препраща данните към вашия телефон.
Целият този процес на превод на адреси и проверка на портове се случва за милисекунди за хиляди пакети всяка секунда, като се гарантира, че всеки в къщата получава правилните данни без намеса.
