13 команд настройки сети Linux и устранения неполадок

Компьютеры соединены в сеть для обмена информацией или ресурсами друг с другом. Два или более компьютера соединены через средства сети, называемые компьютерной сетью. Для формирования компьютерной сети требуется ряд сетевых устройств или средств.

Компьютер, загруженный операционной системой Linux, также может быть частью сети, будь то маленькая или большая сеть, благодаря своим многозадачным и многопользовательским свойствам. Задачей администратора системы / сети является поддержание системы и сети в рабочем состоянии.

[ Вам также может понравиться: 22 команды сетевого взаимодействия Linux для системного администратора ]

В этой статье мы рассмотрим часто используемые команды конфигурации сети и устранения неполадок в Linux.

1. Команда ifconfig

ifconfig (интерфейсный конфигуратор) используется для инициализации интерфейса, назначения IP-адреса интерфейсу и включения или отключения интерфейса по требованию.

С помощью этой команды можно просматривать IP-адрес и адрес / MAC-адрес, назначенные интерфейсу, а также размер MTU (максимальная единица передачи).

# ifconfig

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 будет отображаться вся доступная информация об интерфейсе, если она отключена также.

# ifconfig eth0

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-адреса и шлюза в Linux

Назначение IP-адреса и шлюза для интерфейса на лету. Эти настройки будут удалены в случае перезагрузки системы.

# ifconfig eth0 192.168.50.5 netmask 255.255.255.0

Включение или отключение определенного интерфейса

Чтобы включить или отключить определенный интерфейс, мы используем следующую команду примера.

Включить eth0
# ifup eth0
Отключить eth0
# ifdown eth0

Установка размера MTU

По умолчанию размер MTU составляет 1500. Мы можем установить требуемый размер MTU с помощью следующей команды. Замените XXXX на размер.

# ifconfig eth0 mtu XXXX

Установить интерфейс в режиме Promiscuous

Сетевой интерфейс принимает только пакеты, принадлежащие этому конкретному NIC. Если вы переведете интерфейс в режим промискуитета, он будет принимать все пакеты. Это очень полезно для захвата пакетов и их последующего анализа. Для этого может потребоваться доступ суперпользователя.

# ifconfig eth0 - promisc

Обновление: Команда ifconfig заменена командой IP в большинстве современных дистрибутивов Linux.

2. Команда Ping

Пинг (Пакетный Интернетовский Проверятор) – лучший способ проверить соединение между двумя узлами, будь то локальная сеть (LAN) или глобальная сеть (WAN).

Пинг использует ICMP (Протокол управляющих сообщений Интернета) для общения с другими устройствами. Вы можете выполнить пинг хоста или IP-адреса, используя следующие команды.

# ping 4.2.2.2

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

OR

# ping www.tecmint.com

PING tecmint.com (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms

В команде пинг в Linux выполнение продолжается до прерывания. Пинг с помощью опции -c завершается после N числа запросов (успешных или с ошибкой).

# ping -c 5 www.tecmint.com

PING tecmint.com (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms

--- tecmint.com ping statistics ---
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 – это служебная утилита для диагностики сети, которая показывает количество прыжков до достижения пункта назначения и определяет путь следования пакетов. Ниже мы отслеживаем маршрут к глобальному 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 (Сетевая статистика) отображает информацию о подключении, информацию о таблице маршрутизации и т. д. Для отображения информации о таблице маршрутизации используйте опцию -r.

# netstat -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.

Обновление: В большинстве современных дистрибутивов Linux команда netstat заменена командой ss (статистика сокетов).

5. Команда Dig

Dig (информационный исследователь домена) запрашивает связанную с DNS информацию, такую как запись A, CNAME, запись MX и т. д. Эта команда в основном используется для устранения неполадок, связанных с DNS.

# dig www.tecmint.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> www.tecmint.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<

Для получения дополнительных примеров использования команды Dig прочитайте статью о 10 командах Dig в Linux для запроса DNS.

6. Команда Nslookup

Команда nslookup также используется для определения связанных с DNS запросов. Приведенные ниже примеры показывают запись A (IP-адрес) для tecmint.com.

# nslookup www.tecmint.com
Server:         4.2.2.2
Address:        4.2.2.2#53

Non-authoritative answer:
www.tecmint.com canonical name = tecmint.com.
Name:   tecmint.com
Address: 50.116.66.136

Для получения дополнительной информации о команде nslookup прочитайте статью о 8 примерах использования команды nslookup в Linux.

7. Команда Route

Команда route также отображает и управляет таблицей маршрутизации ip. Чтобы увидеть таблицу маршрутизации по умолчанию в Linux, введите следующую команду.

# route

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

Добавление, удаление маршрутов и шлюза по умолчанию с помощью следующих команд.

Добавить маршрут в Linux
# route add -net 10.10.10.0/24 gw 192.168.0.1
Удалить маршрут в Linux
# route del -net 10.10.10.0/24 gw 192.168.0.1
Добавить шлюз по умолчанию в Linux
# route add default gw 192.168.0.1

8. Команда хоста

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 (Протокол разрешения адресов) полезен для просмотра/добавления содержимого таблицы 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.

# iwconfig [interface]

12. Команда Hostname

Hostname используется для идентификации в сети. Выполните команду hostname, чтобы узнать имя хоста вашего компьютера. Имя хоста можно установить постоянно в /etc/sysconfig/network. После установки правильного имени хоста необходимо перезагрузить компьютер.

# hostname 

tecmint.com

13. Инструменты Nmcli и Nmtui

Инструменты Nmcli и Nmtui используются для настройки сетевых параметров и управления сетевыми устройствами, создания, изменения, активации/деактивации и удаления сетевых подключений в системах Linux.

# nmcli
# nmtui
Nmtui Network Manager

Эта статья может быть полезна для ежедневного использования сетевыми администраторами Linux в операционных системах Linux / Unix-подобных. Пожалуйста, поделитесь своими комментариями, если что-то упущено.

Source:
https://www.tecmint.com/linux-network-configuration-and-troubleshooting-commands/