Урок 3 из 8 · 25 мин · обновлено

Сети и интернет: IP-адреса, DNS и порты

Как устроена локальная сеть и как она выходит в интернет: коммутатор и маршрутизатор, IP-адреса и частные сети, шлюз, DHCP, DNS и порты. Что происходит, когда вы открываете сайт, и какими командами проверять сеть: ipconfig, ping, tracert и nslookup.

Локальная сеть

Локальная сеть соединяет устройства в офисе или дома: компьютеры, принтеры, серверы, телефоны.

  • Коммутатор (свитч) соединяет устройства внутри одной сети кабелями.
  • Точка доступа Wi-Fi подключает устройства без проводов.
  • Маршрутизатор (роутер) соединяет локальную сеть с другими сетями и интернетом.

Домашний роутер обычно совмещает всё сразу: маршрутизатор, коммутатор на несколько портов и Wi-Fi.

IP-адреса

У каждого устройства в сети есть IP-адрес — например, 192.168.1.25. По нему устройства находят друг друга.

  • Частные адреса — 192.168.x.x, 10.x.x.x, 172.16.x.x–172.31.x.x — используют внутри локальных сетей. Из интернета они не видны, и в разных офисах могут повторяться.
  • Публичный адрес — один на роутер, через него вся локальная сеть выходит в интернет.
  • Маска сети показывает, какие адреса находятся в той же сети. Маска 255.255.255.0 означает: все адреса 192.168.1.x — соседи.
  • Шлюз — адрес роутера, через который устройство отправляет всё, что не в своей сети.

DHCP и DNS

DHCP раздаёт адреса автоматически. Новый ноутбук подключился к Wi-Fi и получил от роутера адрес, маску, шлюз и адреса DNS-серверов. Без DHCP всё это пришлось бы вводить вручную на каждом устройстве.

Если компьютер получил адрес вида 169.254.x.x, значит, DHCP не ответил, и система назначила себе адрес сама. Интернета не будет — проверяют кабель, Wi-Fi и роутер.

DNS превращает имена в адреса. Человеку удобно писать имя сайта, а компьютеру нужен IP-адрес. DNS-сервер отвечает: «у этого имени такой адрес». Сломался DNS — сайты по имени не открываются, хотя интернет есть.

Порты

На одном сервере работает много сервисов: сайт, почта, удалённый доступ. Порт — номер, по которому понятно, к какому сервису обращаются:

Порт Сервис
22 SSH — удалённое управление
53 DNS
80 HTTP — сайты без шифрования
443 HTTPS — сайты с шифрованием
3389 удалённый рабочий стол Windows

Что происходит, когда вы открываете сайт

  1. DNSимя → IP-адрес
  2. Шлюззапрос уходит из сети
  3. Интернетмаршрутизаторы провайдеров
  4. Серверпорт 443, ответ

Компьютер узнаёт у DNS адрес сайта, отправляет запрос через шлюз, запрос проходит через сети провайдеров до сервера, веб-сервер на порту 443 отвечает страницей. Если сайт не открывается, сисадмин проверяет этот путь по шагам.

Команды для проверки сети

Терминал
ipconfig /all              # Windows: адрес, маска, шлюз, DNS
ip a                       # Linux: адреса устройства
ping 192.168.1.1           # отвечает ли шлюз
tracert ya.ru              # Windows: путь до сайта по шагам
traceroute ya.ru           # Linux и macOS
nslookup ya.ru             # какой IP-адрес у имени по мнению DNS

Попробуйте сами. Узнайте IP-адрес своего компьютера, шлюз и DNS-серверы. Проверьте командой ping, отвечает ли шлюз и известный сайт, и узнайте IP-адрес сайта через nslookup.

Решение и как читать результат

В Windows:

Терминал
ipconfig /all
ping 192.168.1.1
ping ya.ru
nslookup ya.ru

Вместо 192.168.1.1 подставьте адрес шлюза из ipconfig: строка «Основной шлюз». В Linux и macOS адрес смотрят командой ip a или в настройках сети, а ping останавливают Ctrl + C.

Как читать:

  • адрес вида 192.168.x.x — частный, вы в локальной сети за роутером;
  • шлюз отвечает на ping — связь с роутером есть;
  • сайт отвечает — есть интернет и работает DNS;
  • nslookup показывает IP-адрес имени и какой DNS-сервер ответил.

Некоторые серверы не отвечают на ping специально, из соображений безопасности. Поэтому отсутствие ответа ещё не значит, что сервер выключен.

Мини-тест: проверьте себя

Закрепите урок: несколько вопросов, разбор ответов — в конце.

  1. Сайты по имени не открываются, а по IP-адресу — открываются. Что вероятнее всего сломалось?

  2. Компьютер получил адрес 169.254.12.7. О чём это говорит?

  3. Какой порт обычно у HTTPS?

  4. Что делает команда ping?