Сетевой уровень: адресация и маршрутизация
Задачи:
- Глобальная идентификация (адресация)
- Возможность доставки (маршрутизация)
IPv4
- Структура адреса.
- адрес сети + адрес абонента
- сетевая маска
- широковещателный адрес
Legacy: классы (NB: 1110 — multicast)
Адреса интерфейсов в Linux: ip a (add, del и т. п.)
- Принятие решения о маршрутизации
Таблица маршрутизации Linux: ip route
- Заполнение маршрутных таблиц:
- автоматическое при добавлении сети
- ручное
- Локальные протоколы (RIP*, IGRP)
- Автономные системы. Маршрутизация на уровне AS (BGP)
- Достижимость
- Стоимость
Специальные адреса и сети (rfc5735)
0.0.0.0/8
"This" Network
rfc1122, Section 3.2.1.3
10.0.0.0/8
Private-Use Networks
127.0.0.0/8
Loopback
rfc1122, Section 3.2.1.3
169.254.0.0/16
Link Local
172.16.0.0/12
Private-Use Networks
192.0.0.0/24
IETF Protocol Assignments
192.0.2.0/24
TEST-NET-1
192.88.99.0/24
6to4 Relay Anycast
192.168.0.0/16
Private-Use Networks
198.18.0.0/15
Network Interconnect Device Benchmark Testing
198.51.100.0/24
TEST-NET-2
203.0.113.0/24
TEST-NET-3
224.0.0.0/4
Multicast
240.0.0.0/4
Reserved for Future Use
rfc1112, Section 4
255.255.255.255/32
Limited Broadcast
Протоколы сетевого и сетевого/интерфейсного уровня
- ARP
ip neigh
- proxy arp
ICMP (rfc1122)
работа traceroute
Path MTU Discovery (4821)
- IPSec, RARP, BOOTP, ...
IPv6
Адрес (IPv6_address)
- 128 бит, включает идентификатор интерфейса (например, MAC)
- Unicast: [48+] — routing prefix; [16-] — subnet id; [64] — interface identifier
- Unicast / Anycast / Link local / Multicast (нет широковещания)
Запись: 2001:0db8:85a3:0000:0000:8a2e:0370:7334 == 2001:db8:85a3::8a2e:370:7334
- 128 бит, включает идентификатор интерфейса (например, MAC)
- Нет фрагментации (обязательное PMTUD), нет CRC заголовка (есть же в data link)
- Маршрутизация
- (адрес)/(битовый размер префикса) — как в IPv4
- + Multicat (IGMP) / Anycast и т. п.
Д/З
IP: адресация и маршрутизация
Какие адреса выдаёт команда ip a?
Что умеет ip addr (краткий список: ip a help)
Как устроена таблица маршрутизации (ip r)?
Каков адрес маршрутизатора по умолчанию?
Какой интерфейс ведёт в интернет?
Что можно узнать из команды whois 158.250.10.1?
в частности — номер автономной системы (ASномер). Что выдаёт команда whois этот_номер?
ARP
Сколько машин показывает ip n?
[root@uneex ~]# ip n [root@uneex ~]# ip n | wc -l
Добиться, чтобы выдача ip n менялась после ping чего-нибудь
- Сеанс работы протокола ARP
убедиться, что в ip n на клиенте пропал адрес сервера
- Выполнить
[root@uneex ~]# tcpdump -v -n -i enp0s8 arp
[root@uneexclient ~]# ping -c1 srv
- пронаблюдать сеанс заполнения ARP-таблицы в выдаче tcpdump
ICMP
Сеанс работы traceroute
- запустить
[root@uneex ~]# tcpdump -v -i enp0s3 host www.ru or icmp
[root@uneexclient ~]# traceroute -q1 -w1 www.ru
пронаблюдать работу traceroute. Обратить внимание на увеличивающиеся значения ttl
- запустить