4686
Комментарий:
|
← Версия 13 от 2013-12-22 16:58:40 ⇥
4887
|
Удаления помечены так. | Добавления помечены так. |
Строка 60: | Строка 60: |
'''Внимание!''' [[static/Nano.7z|Образ виртуальной машины]] обновлён (добавлен whois). | ==== IP: адресация и маршрутизация ==== |
Строка 62: | Строка 62: |
* Что умеет `ip addr` (краткий список: `ip a help`) | * <!> Что умеет `ip addr` (краткий список: `ip a help`) |
Строка 64: | Строка 64: |
* Каков адрес маршрутизатора по умолчанию? * Какой интерфейс ведёт в интернет? |
* {*} Каков адрес маршрутизатора по умолчанию? * {*} Какой интерфейс ведёт в интернет? |
Строка 67: | Строка 67: |
* в частности — номер автономной системы (AS`номер`). Что выдаёт команда `whois этот_номер`? | * {*} в частности — номер автономной системы (AS`номер`). Что выдаёт команда `whois этот_номер`? ==== ARP ==== |
Строка 69: | Строка 70: |
{{{ [root@uneex ~]# ip n [root@uneex ~]# ip n | wc -l }}} |
|
Строка 70: | Строка 75: |
* <!> * убедиться, что в `ip n` пропал адрес маршрутизатора * запустить `tcpdump -i интерфейс_ведущий_в_интернет arp` * запустить `ping чего-нибудь` (в соседней консоли, ALT+F2) * пронаблюдать сеанс заполнения ARP-таблицы (в первой консоли, ALT+F1) * <!> * запустить `tcpdump -i eth0 host www.ru or icmp` * запустить `traceroute www.ru` * пронаблюдать работу `traceroute` |
* Сеанс работы протокола 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` |
Сетевой уровень: адресация и маршрутизация
Задачи:
- Глобальная идентификация (адресация)
- Возможность доставки (маршрутизация)
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
- запустить