Адресация в сети интернет. Частные и публичные IP

Оглавление

1. Адресация

Для начала поставим задачу:

У нас есть невероятное множество компьютеров, подключенных к огромной сети. Мы хотим отправить данные от одного компьютера к другому. Как это сделать?

Правильный ответ - дать компьютерам адреса. И отправить данные, указав адрес компьютера, которому мы хотим их доставить. Именно так происходит взаимодействие между устройствами в сети, работающей по протоколу TCP/IP. Далее речь пойдёт только о сетях, использующих протокол IPv4. Адрес в таких сетях задаётся 4 байтами. Но здесь мы сталкиваемся с проблемой. Количество адресов ограничено, а вот компьютеров нет и их уже гораздо больше, чем максимальное число адресов.

Решением проблемы является деление сети на части. Компьютеры делят на подсети, в пределах которых они могут свободно "общаться". Адреса внутри подсети называют частными или серыми.

2. Частный IP адрес

Частные IP - это IP адрес, выданный компьютеру в пределах его подсети. В пределах этой подсети можно отправлять запросы компьютеру, используя его частный IP адрес.

Обычно частный IP адрес можно узнать, посмотрев параметры адаптера сети. В Windows это можно сделать, открыв консоль (сочетание Win+R, затем ввод последовательности "cmd") и написав команду ipconfig. Если компьютер может быть подключен к сети, вы получите список сетевых адаптеров. Графа IPv4-адрес - этот адрес и является вашим серым ip адресом.

У компьютера может быть несколько адаптеров, каждый из которых имеет свой IP. Эти адаптеры могут находиться в разных подсетях. Например, адаптеры эмуляторов локальной сети и адаптеры Ethernet.

3. Публичный IP адрес

Публичный IP - это IP видимый во всей глобальной сети. Число таких IP адресов ограничено, а их выдача контролируется компаниями и сложными системами. Для того, чтобы получить публичный IP адрес, вам надо обратиться к вашему провайдеру. Но для работы с сетью вам необходим такой IP адрес. Поэтому, при выходе в сеть вы автоматически запрашиваете у провайдера публичный IP адрес, но данный так IP адрес не позволяет подключиться к вам. Чаще всего этот же IP адрес выдаётся не только вам, но и множеству людей, а кому какой запрос отправлен - решает оборудование провайдера. Также такой IP адрес зачастую меняется при каждом выходе в сеть и называется динамическим.

Публичный IP адрес бывает статическим или динамическим.

Статический не меняется в течении длительного периода времени. Он видим из всей глобальной сети. Получить его навсегда очень сложно, но зачастую можно выкупить адрес на время у провайдера.

Динамический меняется с каждым подключением. Чаще всего не позволяет подключиться по нему к компьютеру из глобальной сети напрямую.

Публичный статический IP адрес имеют некоторые крупные серверы, различные DNS серверы, серверы крупных сайтов, некоторые игровые серверы и так далее.

4. Локальные сети

Чаще всего программисты сталкиваются с таким понятием, как локальные сети или LAN. Это сеть из нескольких устройств либо соединённых кабелем напрямую, либо подключенных с помощью беспроводного соединения, либо через туннель, построенный поверх глобальной сети. Данная конструкция очень удобна для организации быстрой и безопасной связи между устройствами.

Локальную сеть можно построить физически или эмулировать поверх интернета, построив туннель, связывающий ваши устройства. Второе можно сделать очень просто, достаточно поставить программу-эмулятор и драйвер, который делает вид, что он сетевой адаптер. Таких программ множество: Radmin VPN, Hamachi и так далее. Затем компьютеры, которые нужно объединить в сеть должны подключиться внутри программы.

5. Вывод

Таким образом, чтобы отправить пакет какому-то конкретному компьютеру требуется знать его белый ip адрес, если он есть, или находится с ним в одной подсети и знать его серый ip адрес.