Содержимое
Ручное конфигурирование
Для функционирования разных стеков протоколов сетевым интерфейсам должны быть предварительно назначены корректные сетевые адреса и сконфигурированы прочие параметры, что может быть выполнено вручную администратором или автоматически специальными службами этих стеков.
Ручное назначение сетевых адресов стека TCP/IP выполняется при помощи команд ifconfig или ip, а простейшая диагностика — при помощи команды ping, как проиллюстрировано в листинге ниже.
Ручное конфигурирование сетевых интерфейсов
lurnpy@ubuntu:~$ sudo ifconfig ethO 10.0.0.10 up
lunpyfjubuntu:~$ sudo ifconfig eth0
eth0 Link encap:Ethernet Hwaddr e8:03:9a:0a:73:40
inet addr:10.0.0.10 Bc ast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST MULTICAST MTU: 1500 Metrtc:1
RX packets:2103481 errors:0 dropped:0 overruns:0 frame:0
TX packets:2510799 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:636720606 (636.7 MB) TX bytes:3451876716 (3.4 GB)
lumpy@ubuntu:~$ ping -с 1 10.0.0.10
PING 10.0.0.1 (10.0.0.10) 56(84) bytes of data.
64 bytes from 10.0.0.10: icmp_req=1 ttl=64 time=0.134 ms
— 10.0.0.10 ping statistics —
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.134/0.134/0.134/0.000 ms
lumpy©ubuntu:~$ sudo ip address add 172.16.10.172/16 dev ethO
lumpy@ubuntu:~$ ip address show dev ethO
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 l link/ether e8:03:9a:0a:73:40 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.10/8 brd 10.255.255.25S scope global eth0
valid_lft forever preferred_lft forever
inet 172.16.16.172/16 scope global eth0
valld_lft forever preferred_lft forever
lurpy@ubuntu:~$ ping -c 1 172.16.16.172
PING 172.16.0.1 (172.16.16.172) 56(84) bytes of data.
64 bytes from 172.16.16.172: icmp_req=1 ttl=64 time=0.121 ms
— 172.16.16.172 ping statistics —
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/nax/mdev = 0.121/0.121/0.121/0.000 ms
Просмотр таблиц маршрутизации и ручное конфигурирование IP-маршрутов выполняется при помощи команд route или ip, а простейшая диагностика — при помощи команды traceroute.
В примере из листинга ниже показана процедура ручного добавления маршрута «по умолчанию» через интернет-шлюз 10.0.0.1 с последующей диагностикой доступности узлов за ним.
Ручное конфигурирование таблицы маршрутизации
lumpy@ubuntu:~$ sudo ip route add 0.0.0.0/0 via 10.0.0.1
lumpy@ubuntu:~$ route -n
Таблица маршутизации ядра протокола IP
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 eth0
172.16.0. 0.0.0.0 255.255.0.0 U 0 0 0 eth0
lumpy@ubuntu:~$ ip route show
default via 10.0.0.1 dev eth0 proto static
10.0. 6.0/8 dev eth0 proto kernel scope link src 10.0.6.1
172.16.0. 0/16 dev eth0 proto kernel scope link src 172.16.0.1
lumpy@ubuntu:-$ traceroute bad.horse
traceroute to bad.horse (162.252.205.157), 30 hops max, 60 byte packets
1 10.0.0.1 (16.0.0.1) 1.025 ms 1.080 ms 1.236 ms
16 bad.horse (162.252.265.130) 231.840 ms 230.451 ms 236.294 ms
17 bad.horse (162.252.205.131) 225.436 ms 229.919 ms 234.079 ms
18 bad.horse (162.252.205.132) 236.432 ms 224.638 ms 237.708 ms
19 bad.horse (162.252.205.133) 247.277 ms 244.117 ms 236.279 ms
20 he. rides.across, the.nation (162.252.205.134) 248.204 ms 236.705 ms 233.131 г
21 the. thoroughbred.of.sin (162.252.205.135) 264.369 ms 261.428 ms 274.971 ms
22 he.got.the.application (162.252.265.136) 261.681 ms 264.942 ms 264.636 ms
23 that.you. just.sent.in (162.252.205.137) 252.373 ms 264.443 ms 248.169 ms
24 it.needs.evaluation (162.252.205.138) 269.286 ms 266.914 ms 267.678 ms
25 so.let.the.games.begin (162.252.205.139) 269.224 ms 266.428 ms 274.339 ms
26 a.heinous.crime (162.252.205.140) 297.513 ms 289.543 ms 292.710 ms
27 a.show.of.force (162.252.205.141) 273.900 ms 290.666 ns 295.939 ms
28 a.nurder.would.be.nice.of.course (162.252.205.142) 292.588 ms 279.658 ns 276.165 ms
29 bad.horse (162.252.205.143) 282.689 ms 292.198 ns 283.833 ms
30 bad.horse (162.252.205.144) 301.530 ms 286.082 ns 302.532 ms
Автоматическое конфигурирование
За автоматическое конфигурирование сетевых интерфейсов отвечает менеджер сетевых подключений — системная служба networkmanager, отслеживающая физическую активацию сетевых адаптеров (подключение сетевого кабеля Ethernet или поключения к сети Wi-Fi) и запускающая «подчиненные» службу, в частности W:[DHCP] -клиент dhclient для автоматического получения IP-адреса и простейший W:[DNS]-cepBep dnsmasq для подключения к доменной системе имен.
Для взаимодействия с менеджером сетевых подключений предназначены команды nmcli, nm-tool и GUI-приложение nm-applet, позволяющие опрашивать его состояние и управлять его действиями.
Конфигурирование сетевых интерфейсов (автоматически)
lumpy@ubuntu:~$ ps axfwwww
1121 ? Ssl 0:04 NetworkManager
15537 ? S 0:00 \_ /sbin/dhclient -d -4 … wlan0
15541 ? S 0:00 \_ /usr/sbin/dnsnasq … —conf-file=/var/run/nm-dns-dnsnasq.conf …
lumpy@ubuntu:~$ nmcli dev
УСТРОЙСТВО ТИП СОСТОЯНИЕ
eth0 802-3-ethernet отключено
wlan0 802-11-wireless подключено
lumpy@ubuntu:~$ nmcli dev list iface wlan0
GENERAL. УСТРОЙСТВО: wlan0
GENERAL.АППАРАТНЫЙ АДРЕС: B8:03:05:A2:28:4E
GENERAL.СОСТОЯНИЕ: 100 (подключено)
1Р4.АДРЕС[1]: ip = 192.168.100.4/24, gw = 192.168.100.1
IP4.DNS[1]: 192.168.100.
lumpy@ubuntu:~$ ip address show dev wlan0
3: wlano: «BROADCAST,MULTICAST,UP,L0WER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether b8:03:05:a2:28:4e brd ff:ff:ff:ff:ff:ff
inet 192.168.100.4/24 brd 192.168.100.255 scope global wlan0
valid_lft forever preferred_lft forever
inet6 fe80::ba03:5ff:fea2:284e/64 scope link
valid_lft forever preferred_lft forever
lumpy@ubuntu:~$ ip route show
default via 192.168.160.1 dev wlan0 proto static
lumpy@ubuntu:~$ cat /var/run/nm-dns-dnsmasq.conf
server=192.168.160.1
В листинге выше проиллюстрирован результат работы менеджера подключений при подключении к Wi-Fi-сети. сетевого интерфейса wlan0. Полученные при помощи DHCP-клиента конфигурационные параметры были активированы автоматически: IP-адреса и маска назначены на интерфейс, шлюз «по умолчанию» задан в соответствующем маршруте, а адрес DNS-сервера указан в, конфигурационном файле DNS-сервера.