LFCA: Изучаем базовые сетевые команды – Часть 4

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

Что такое компьютерная сеть?

A computer network is defined as a group of 2 or more computers that are connected and can electronically communicate with each other. The computers are identified using their hostnames, IP, and mac addresses.

A simple home or office network is referred to as a LAN, short for Local Area Network. A LAN covers a small area such as a home, office, or restaurant network. In contrast, a WAN (Wide Area Network) spans a large geographical region. WAN is mostly used to connect various sites such as office buildings in different locations.

Эта статья является Частью 4 серии LFCA, здесь вы познакомитесь с общими сетевыми командами и узнаете, насколько они могут быть полезны при устранении проблем с подключением.

1. Команда hostname

Команда hostname отображает имя хоста системы Linux. Обычно оно устанавливается или настраивается во время установки. Чтобы проверить имя хоста, выполните команду:

$ hostname

tecmint

2. Команда ping

Кратко для пакетного интернет-проверяющего, команда ping используется для проверки связи между 2 системами или серверами. Она отправляет запрос на эхо ICMP на удаленный хост и ожидает ответа. Если хост работает, запрос на эхо отскакивает от удаленного хоста и отправляется обратно к отправителю, уведомляя пользователя, что хост работает или доступен.

Команда ping имеет показанный синтаксис.

$ ping options IP address 

Например, чтобы проверить хост в моей локальной сети с IP-адресом 192.168.2.103, я запущу команду:

$ ping 192.168.2.103

PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data.
64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.043 ms
64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.063 ms
64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.063 ms
64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.061 ms
64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.062 ms

Команда ping продолжает отправлять пакеты ICMP пинга, пока вы не прервете его, нажав Ctrl + C на клавиатуре. Однако вы можете ограничить количество отправляемых пакетов, используя опцию -c.

В приведенном ниже примере мы отправляем 5 пакетов запроса на эхо, и после завершения команда ping останавливается.

$ ping 192.168.2.103 -c 5

PING 192.168.0.123 (192.168.0.123) 56(84) bytes of data.
64 bytes from 192.168.2.103: icmp_seq=1 ttl=64 time=0.044 ms
64 bytes from 192.168.2.103: icmp_seq=2 ttl=64 time=0.052 ms
64 bytes from 192.168.2.103: icmp_seq=3 ttl=64 time=0.066 ms
64 bytes from 192.168.2.103: icmp_seq=4 ttl=64 time=0.056 ms
64 bytes from 192.168.2.103: icmp_seq=5 ttl=64 time=0.066 ms

--- 192.168.2.103 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4088ms
rtt min/avg/max/mdev = 0.044/0.056/0.066/0.008 ms

Кроме того, вы также можете проверить доменное имя хоста или сервера. Например, вы можете проверить Google, как показано.

$ ping google.com

PING google.com (142.250.183.78) 56(84) bytes of data.
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=1 ttl=117 time=2.86 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=2 ttl=117 time=3.35 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=3 ttl=117 time=2.70 ms
64 bytes from bom12s12-in-f14.1e100.net (142.250.183.78): icmp_seq=4 ttl=117 time=3.12 ms
...

Также вы можете проверить DNS. Например, вы можете проверить адрес Google, который является 8.8.8.8.

$ ping 8.8.8.8 -c 5

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=3.24 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=3.32 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=118 time=3.40 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=118 time=3.30 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=118 time=2.92 ms

--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 2.924/3.237/3.401/0.164 ms

A failed ping test is pointed to one of the following:

  • A host that is offline.
  • Общий сбой сети.
  • Наличие брандмауэра, который блокирует запросы ICMP.

3. Команда трассировки

Команда traceroute отображает маршрут, который проходит пакет ICMP ping от вашего устройства к целевому хосту или серверу. Она отображает IP-адреса устройств, через которые проходит пакет, прежде чем достигнуть удаленного места назначения.

На второй строке вывода отображается знак звездочки * в пинге. Это индикатор того, что пакет был отброшен и ответ не был получен. Это показывает, что пакет ping был отброшен маршрутизатором, и это может быть по разным причинам, таким как сетевая перегрузка.

Команда Traceroute – это удобная диагностическая команда, которую можно использовать для устранения неполадок в сети, где команда ping дает неудачные результаты. Она показывает устройство, на котором пакеты отбрасываются.

$ traceroute google.com
Traceroute – Network Diagnostic Tool

4. Команда mtr

Команда mtr (моя трассировка) объединяет функциональность команды ping и traceroute. Она отображает множество статистических данных, включая хост, через который проходит каждый пакет, и времена отклика для всех сетевых переходов.

$ mtr google.com
mtr – network analysis and troubleshooting tool

5. Команда ifconfig

Команда ifconfig перечисляет сетевые интерфейсы, подключенные к ПК, вместе с другой статистикой, такой как IP-адреса, связанные с каждым интерфейсом, маска подсети и MTU, чтобы упомянуть только некоторые.

$ ifconfig
ifconfig – lists network interfaces

Параметр inet показывает адрес IPv4 сетевого интерфейса, в то время как inet6 указывает на адрес IPv6. Вы можете просмотреть подробности отдельного интерфейса, указав интерфейс, как показано:

$ ifconfig enp0s3
Check Network Interface

6. Команда IP

Другой способ просмотра статистики интерфейса – использование команды ip address, как показано.

$ ip address
IP Network Configuration Tool

7. Команда ip route

Команда ip route выводит таблицу маршрутизации вашего ПК.

$ ip route 
OR
$ ip route show
List Network Routing Table

8. Команда dig

Утилита dig (сокращение от Domain Information Groper) – это инструмент командной строки для исследования DNS-серверов. Она принимает доменное имя в качестве аргумента и отображает информацию, такую как адрес хоста, запись A, запись MX (почтовые обменники), именные серверы и т. д.

В общем, команда dig – это утилита для поиска DNS и в основном используется системными администраторами для устранения неполадок DNS.

$ dig ubuntu.com
dig – Network Administration Tool

9. Команда nslookup

Утилита nslookup – это еще один инструмент командной строки, который используется для выполнения DNS-запросов с целью извлечения имен доменов и A-записей.

$ nslookup ubuntu.com
Domain Name Server Lookup

10. Команда netstat

Команда netstat выводит статистику сетевых интерфейсов. Она может отображать таблицу маршрутизации, порты, на которых слушаются различные службы, TCP- и UDP-соединения, PID и UID.

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

$ netstat -i

Kernel Interface table
Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
enp1s0    1500        0      0      0 0             0      0      0      0 BMU
lo       65536     4583      0      0 0          4583      0      0      0 LRU
wlp2s0    1500   179907      0      0 0        137273      0      0      0 BMRU

Чтобы просмотреть таблицу маршрутизации, используйте опцию -r, как показано.

$ netstat -r

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
default         _gateway        0.0.0.0         UG        0 0          0 wlp2s0
link-local      0.0.0.0         255.255.0.0     U         0 0          0 wlp2s0
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 wlp2s0

Чтобы изучить активные TCP-соединения, вызовите команду:

$ netstat -ant
List Active TCP Connections

11. Команда ss

Команда ss – это сетевой инструмент, который используется для вывода статистики сокетов и показа системных сетевых метрик аналогично команде netstat. Команда ss работает быстрее, чем netstat, и отображает больше информации о TCP и сетевой статистике, чем netstat.

$ ss     #list al connections
$ ss -l  #display listening sockets 
$ ss -t  #display all TCP connection
Сводка

Это был обзор основных сетевых команд, которые будут полезны, особенно при устранении незначительных проблем сети в домашней или офисной среде. Попробуйте их время от времени, чтобы отточить свои навыки по устранению проблем сети.

Source:
https://www.tecmint.com/basic-networking-commands/