13 команд настройки и устранения неполадок сети в Linux
Компьютеры соединены в сеть для обмена информацией или ресурсами друг с другом. Два или более компьютера соединены через сетевой носитель, называются компьютерной сетью. Существует множество сетевых устройств или носителей, участвующих в формировании компьютерной сети. Компьютер с операционной системой Linux также может быть частью сети, будь то небольшая частная или большая корпоративная сеть. Поддержание системы и сети в рабочем состоянии — задача системного администратора.
В этой статье мы рассмотрим часто используемые настройки сети и варианты устранения неполадок с помощью разнообразных команд в Linux.
1. ifconfig
Команда ifconfig (interface configurator) используется для инициализации интерфейса, назначения IP-адреса интерфейсу и включения или отключения интерфейса. С помощью этой команды вы можете просмотреть IP-адрес и аппаратный/MAC-адрес, назначенный интерфейсу, а также размер MTU (максимальная полезного блока данных):
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6125302 (5.8 MiB) TX bytes:536966 (524.3 KiB)
Interrupt:18 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
Команда ifconfig с номером интерфейса (eth0) отображает только конкретные сведения об интерфейсе, такие как IP-адрес, MAC-адрес и т. д., с помощью параметра -a будут отображаться все доступные сведения об интересующем вас интерфейсе:
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6127464 (5.8 MiB) TX bytes:539648 (527.0 KiB)
Interrupt:18 Base address:0x2000
Назначение IP-адреса и шлюза
Ниже вы можете увидеть назначение IP-адреса и шлюза для интерфейса. Данная настройка будет потеряна в случае перезагрузки системы:
Включение или отключение определенного интерфейса
Чтобы включить или отключить конкретный интерфейс, мы используем пример команды следующим образом.
Включение eth0
Отключение eth0
Установка размера MTU
По умолчанию размер MTU равен 1500. Мы можем установить требуемый размер MTU с помощью команды представленной ниже. Замените XXXX необходимым размером:
Установка интерфейса в режиме Promiscuous
Сетевой интерфейс получает пакеты принадлежащие только этой конкретной сетевой карте (NIC). Если вы переведете интерфейс в режим Promiscuous, он начнёт получать все кадры. Это очень полезно для захвата пакетов и последующего их анализа. Для этого вам может потребоваться доступ суперпользователя:
2. Команда PING
Команда PING (Packet INternet Groper) — лучший способ проверить соединение между двумя узлами. Будь то локальная сеть (LAN) или глобальная сеть (WAN). Пинг использует ICMP (Internet Control Message Protocol) для связи с другими устройствами. Вы можете пропинговать имя хоста IP-адреса, используя следующую команду:
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms
Или же:
PING sedicomm.com (80.222.66.136) 56(84) bytes of data.
64 bytes from 80.222.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 80.222.66.136: icmp_seq=2 ttl=47 time=287 ms
[code]64 bytes from 80.222.66.136: icmp_seq=3 ttl=47 time=285 ms
В Linux команда ping будет выполняться до тех пор, пока вы её не прервете. Пинг с параметром —c завершит свою работу после N-ого запроса.
PING sedicomm.com (80.222.66.136) 56(84) bytes of data.
64 bytes from 80.222.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 80.222.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 80.222.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 80.222.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 80.222.66.136: icmp_seq=5 ttl=47 time=285 ms
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms
3. Команда TRACEROUTE
traceroute — это утилита для устранения неполадок в сети, которая показывает количество переходов для достижения места назначения и определения пути прохождения пакетов. Ниже мы отслеживаем маршрут к глобальному IP-адресу DNS-сервера и также смотрим путь перемещения этого пакета:
# traceroute 4.2.2.2
traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
1 192.168.50.1 (192.168.50.1) 0.217 ms 0.624 ms 0.133 ms
2 227.18.106.27.mysipl.com (27.106.18.227) 2.343 ms 1.910 ms 1.799 ms
3 221-231-119-111.mysipl.com (111.119.231.221) 4.334 ms 4.001 ms 5.619 ms
4 10.0.0.5 (10.0.0.5) 5.386 ms 6.490 ms 6.224 ms
5 gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25) 7.798 ms 7.614 ms 7.378 ms
6 115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49) 10.852 ms 5.389 ms 4.322 ms
7 ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5) 5.836 ms 5.590 ms 5.503 ms
8 if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17) 216.909 ms 198.864 ms 201.737 ms
9 if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2) 203.305 ms 203.141 ms 202.888 ms
10 if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6) 200.552 ms 202.463 ms 202.222 ms
11 if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26) 205.446 ms 215.885 ms 202.867 ms
12 if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2) 202.675 ms 201.540 ms 203.972 ms
13 if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18) 203.732 ms 203.496 ms 202.951 ms
14 if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2) 203.858 ms 203.373 ms 203.208 ms
15 66.198.111.26 (66.198.111.26) 201.093 ms 63.243.128.25 (63.243.128.25) 206.597 ms 66.198.111.26 (66.198.111.26) 204.178 ms
16 ae9.edge1.NewYork.Level3.net (4.68.62.185) 205.960 ms 205.740 ms 205.487 ms
17 vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254) 202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 202.351 ms
18 ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21) 201.771 ms 201.185 ms 201.120 ms
19 ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74) 202.407 ms 201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46) 208.145 ms
20 ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80) 200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208) 200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16) 203.573 ms
21 b.resolvers.Level3.net (4.2.2.2) 199.725 ms 199.190 ms 202.488 ms
4. Команда NETSTAT
Команда Netstat (Network Statistic) отображает информацию о соединении, информацию о таблице маршрутизации и т.д. Чтобы отобразить информацию о таблице маршрутизации, используйте параметр «-r«:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 0 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Для получения дополнительных примеров команды Netstat, пожалуйста, прочитайте нашу предыдущую статью: «20 команд netstat для управления сетью Linux и Windows«.
5. Команда DIG
Dig (запрос информации о домене) запрашивает информацию, связанную с DNS, такую как запись A, CNAME, запись MX и т.д. Эта команда используется в основном для устранения неполадок, связанных с запросом DNS:
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
6. Команда NSLOOKUP
Команда nslookup также используется для поиска DNS-запроса. В следующих примерах показана запись (IP-адрес) sedicomm.com:
# nslookup www.sedicomm.com
Server: 4.2.2.2
Address: 4.2.2.2#53
Non-authoritative answer:
www.sedicomm.com canonical name = sedicomm.com.
Name: sedicomm.com
Address: 80.222.66.136
7. Команда ROUTE
Команда route также показывает и управляет таблицей IP-маршрутизации. Чтобы увидеть таблицу маршрутизации по умолчанию в Linux, введите следующую команду:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Добавьте/удалите маршруты и шлюзы по умолчанию с помощью следующих команд.
Добавление маршрута
Удаление маршрута
Добавление шлюза по умолчанию
8. Команда host
Команда host, обычно используется чтобы найти имя хоста по IP или же сам IP по имени в IPv4 или IPv6, а также для запросов записи DNS:
# host www.google.com
www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014
Используя опцию -t, мы можем найти записи ресурсов DNS, такие как CNAME, NS, MX, SOA и т. Д.
# host -t CNAME www.redhat.com
www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.
9. Команда ARP
ARP (Address Resolution Protocol) полезна для просмотра/добавления содержимого таблиц ARP. Чтобы увидеть таблицу ARP, используйте команду arp:
# arp -e
Address HWtype HWaddress Flags Mask Iface
192.168.50.1 ether 00:50:56:c0:00:08 C eth0
10. Команда ETHTOOL
ethtool — это замена mii-tool. Эта команда используется для просмотра, настройки скорости и дуплекса вашей сетевой карты (NIC). Вы можете установить дуплекс в /etc/sysconfig/network-scripts/ifcfg-eth0 с переменной ETHTOOL_OPTS.
# ethtool eth0
Settings for eth0:
Current message level: 0x00000007 (7)
Link detected: yes
11. Команда IWCONFIG
Команда iwconfig в Linux используется для настройки интерфейса беспроводной сети. Вы можете увидеть и установить основные детали Wi-Fi, такие как канал SSID и шифрование. Вы можете обратиться к справочной странице iwconfig, чтобы узнать больше информации о её использовании:
12. Команда HOSTNAME
Команда HOSTNAME используется для идентификации в сети. Выполните команду hostname, чтобы увидеть имя хоста вашей системы. Вы можете установить постоянное имя хоста в /etc/sysconfig/network. Необходимо перезагрузить систему, как только установите правильное имя хоста:
# hostname
sedicomm.com
13. GUI инструмент system-config-network
Введите system-config-network в командной строке, чтобы настроить параметры сети, и вы получите красивый графический интерфейс пользователя (GUI), который также можно использовать для настройки IP-адреса, шлюза, DNS и т.д., как показано на скриншоте ниже:
Эта статья может очень полезна для повседневного использования сетевым администратором Linux в Unix-подобной операционной системе.
Спасибо за уделенное время на прочтение статьи!
http://blog.sedicomm.com/2019/10/23/13-komand-nastrojki-i-ustraneniya-nepoladok-seti-v-linux/
|