Введение
В этом практическом занятии (лабораторной работе) вы научитесь использовать основные команды Linux для сбора сетевой информации и тестирования сетевых соединений. Эти навыки являются важными для системных администраторов и сетевых специалистов при диагностике и устранении сетевых проблем. Мы проведем вас по каждому шагу, предполагая, что вы новичок в концепциях сетей Linux.
Результаты
К концу этого практического занятия (лабораторной работы) вы сможете:
- Использовать команду
ipдля просмотра и управления сетевыми интерфейсами - Тестировать сетевое соединение с помощью команды
ping - Изучать сетевые статистики с использованием команды
netstat
Просмотр сетевых интерфейсов
Начнем с изучения ваших сетевых интерфейсов с помощью команды ip.
Откройте окно терминала. Вы должны увидеть приглашение, заканчивающееся символом
$.Введите следующую команду и нажмите Enter:
ip addrЭта команда показывает информацию о всех сетевых интерфейсах на вашей системе.
Вы должны увидеть вывод, похожий на следующий:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 86484: eth1@if86485: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:14:00:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.20.0.3/16 brd 172.20.255.255 scope global eth1 valid_lft forever preferred_lft foreverРазберем этот вывод:
lo: Это локальный петлевой интерфейс (loopback interface). Это специальный сетевой интерфейс, который компьютер использует для общения с самим собой.eth1: Это основной Ethernet-интерфейс. Он используется для подключения к сетям.inet: Эта строка показывает IP-адрес, назначенный интерфейсу. Дляeth1в этом примере это172.20.0.3.
Примечание: Виртуальная среда LabEx может изменяться, поэтому ваш вывод может быть несколько другим. Главное - распознать структуру вывода.
Проверка конкретного сетевого интерфейса
Теперь сосредоточимся на конкретном сетевом интерфейсе, обычно eth1 для основного Ethernet-соединения.
В том же окне терминала введите следующую команду и нажмите Enter:
ip addr show eth1Эта команда отображает подробную информацию о интерфейсе
eth1.Вы должны увидеть вывод, похожий на следующий:
86484: eth1@if86485: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:14:00:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.20.0.3/16 brd 172.20.255.255 scope global eth1 valid_lft forever preferred_lft foreverПопытаемся понять этот вывод:
eth1: Это имя интерфейса.<BROADCAST,MULTICAST,UP,LOWER_UP>: Это флаги, указывающие на возможности и состояние интерфейса.link/ether 02:42:ac:14:00:03: Это MAC-адрес интерфейса, уникальный идентификатор сетевого оборудования.inet 172.20.0.3/16: Это IPv4-адрес, назначенный интерфейсу, за которым следует маска подсети в нотации CIDR.
Примечание: Если вы не видите
eth1, ваш основной интерфейс может иметь другое имя. В таком случае заменитеeth1именем интерфейса, которое вы увидели на шаге 1.
Тестирование сетевого соединения
Команда ping используется для проверки базового сетевого соединения. Мы используем ее, чтобы проверить наше соединение с хорошо известным сервером.
В терминале введите следующую команду и нажмите Enter:
ping -c 4 8.8.8.8Эта команда отправляет 4 запроса
pingна публичный DNS - сервер Google по IP - адресу 8.8.8.8.Вы должны увидеть вывод, похожий на следующий:
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=117 time=1.61 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=1.55 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=1.57 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=117 time=1.57 ms --- 8.8.8.8 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 1.545/1.573/1.607/0.022 msЭтот вывод показывает успешные ответы на запросы
ping. Точные значения времени могут отличаться в вашей среде.Примечание: Если вы видите "100% packet loss" (100% потеря пакетов) или "Destination Host Unreachable" (Целевой хост недоступен), это может указывать на проблемы с сетевым соединением в виртуальной машине LabEx. У бесплатных аккаунтов ограничен доступ к сети, поэтому вам может потребоваться обновить до платного аккаунта, чтобы решить эту проблему.
Тестирование разрешения доменных имен
Теперь давайте проверим нашу способность разрешать доменные имена с помощью команды ping.
В терминале введите следующую команду и нажмите Enter:
ping -c 4 google.comЭта команда похожа на предыдущую, но вместо IP-адреса мы используем доменное имя (google.com).
Вы должны увидеть вывод, похожий на следующий:
PING google.com (172.217.16.142) 56(84) bytes of data. 64 bytes from ham02s14-in-f14.1e100.net (172.217.16.142): icmp_seq=1 ttl=117 time=11.8 ms 64 bytes from ham02s14-in-f14.1e100.net (172.217.16.142): icmp_seq=2 ttl=117 time=11.7 ms 64 bytes from ham02s14-in-f14.1e100.net (172.217.16.142): icmp_seq=3 ttl=117 time=11.7 ms 64 bytes from ham02s14-in-f14.1e100.net (172.217.16.142): icmp_seq=4 ttl=117 time=11.7 ms --- google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 11.677/11.719/11.814/0.052 msЭтот вывод демонстрирует успешное разрешение доменного имени и наличие сетевого соединения. IP-адрес и точные значения времени могут отличаться в вашей среде.
Примечание: Если вы видите ошибку типа "could not resolve google.com" (не удалось разрешить google.com), это может указывать на проблемы с DNS в виртуальной машине LabEx. У бесплатных аккаунтов ограничен доступ к сети, поэтому вам может потребоваться обновить до платного аккаунта, чтобы решить эту проблему.
Просмотр активных сетевых соединений
Команда netstat представляет собой мощный инструмент для просмотра сетевой статистики и активных соединений. Мы воспользуемся ею, чтобы увидеть, какие сетевые соединения в данный момент активны на вашей системе.
В терминале введите следующую команду и нажмите Enter:
sudo netstat -tulnВам будет предложено ввести пароль. Введите его, чтобы продолжить.
Вы должны увидеть вывод, похожий на следующий:
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3001 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3002 0.0.0.0:* LISTEN tcp 0 0 127.0.0.11:42051 0.0.0.0:* LISTEN tcp6 0 0 :::22 :::* LISTEN udp 0 0 0.0.0.0:3001 0.0.0.0:* udp 0 0 127.0.0.11:40380 0.0.0.0:*Этот вывод показывает активные TCP- и UDP-соединения. Точные порты и адреса могут отличаться в виртуальной машине LabEx.
Примечание: Конкретные записи, которые вы увидите, будут зависеть от служб, запущенных в вашей виртуальной машине LabEx в момент выполнения команды.
Резюме
Поздравляем! Вы завершили лабораторную работу по сетевой информации и соединению. В рамках этой лабораторной работы вы научились:
- Просматривать информацию о сетевых интерфейсах с помощью команды
ip - Тестировать сетевой доступ и разрешение доменных имен с помощью команды
ping - Проверять активные сетевые соединения с помощью команды
netstat
Эти инструменты являются обязательными для понимания и устранения сетевых проблем в системах Linux. По мере продвижения в области администрирования систем Linux вы обнаружите, что эти команды незаменимы для диагностики и решения проблем, связанных с сетью.
Не забывайте, что среда виртуальной машины LabEx может изменяться, поэтому всегда будьте готовы адаптировать эти команды к своим конкретным условиям. Практикуйте использование этих команд в различных сценариях, чтобы стать более знакомым с их выводом и параметрами.
Удачи в работе с сетями!



