Лучшие сетевые утилиты linux

  • 30.05.2019

Сеть, это один из самых важных компонентов администрирования серверов или просто компьютеров с операционной системой Linux. Пользователям домашнего компьютера вряд ли понадобятся все эти утилиты. Но вот для администраторов серверов или даже сетей, это вещь незаменимая. Особенно когда нужно понять почему не работает сеть или выяснить на каком сетевом узле прерывается передача пакетов.

В этой статье мы рассмотрим лучшие сетевые утилиты linux, это самые основные команды, которые можно использовать для администрирования сети в Linux. Эта статья не научит вас всем тонкостями использования таких команд, это всего лишь небольшой список с кратким описанием. Если у вас уже есть небольшой опыт их использования, то вы можете использовать статью как шпаргалку, для лучшего запоминания.

ping <хост> - отправляет один эхо запрос по протоколу ICMP на удалённый хост. Пакеты будут отправляется непрерывно, пока вы не нажмете Ctrl+C. Когда пакет будет отправлен, хост должен отправить ответное ICMP сообщение, это и будет означать, что другой хост работает.

telnet хост <порт> - проверить доступность определенного порта на хосте. По умолчанию telnet использует порт 23, но также можно использовать и другие. Например, 7 - эхо порт, 25 - SMTP, почтовый сервер, 79 - Finger, предоставляет информацию о других пользователях сети. Нажмите Ctrl+] чтобы завершить работу telnet.

ARP

ARP используется для преобразования IP-адресов в адреса физической сети, к которой подключен компьютер, например, Ethernet или Wifi. Суперпользователь может добавлять и удалять Arp записи. Их удаление может быть полезно, если arp запись была подделана или просто неверная. Явно добавленные записи - постоянные и система может им доверять. Таблица ARP хранится в ядре и может изменяться динамически. Полученные от других компьютеров ARP записи кэшируются и удаляются по истечении таймаута в 20 минут.

arp –a - вывести таблицу ARP

arp -s - добавить запись в таблицу маршрутизации

arp –a –d - удалить все записи из таблицы ARP

Маршрутизация

Эти утилиты позволяют выполнять администрирование сети linux, а также настраивать маршрутизацию между узлами.

netstat –r - вывести таблицу маршрутизации

Таблица маршрутизации хранится в ядре и используется для маршрутизации IP пакетов за пределами локальной сети.

route add - эта команда используется для установки статических (нединамических) маршрутов вручную. Все пакеты, отправляемые с этого компьютера в определенную сеть должны пройти через определенный шлюз. Этот шлюз мы и устанавливаем командой route. Мы можем задать маршрут по умолчанию, чтобы все отправляемые пакеты, для которых не определен шлюз отправлялись через него, для этого используйте в качестве целевого адреса 0.0.0.0.

routed - BSD демон, который выполняет динамическую маршрутизацию. Он работает по протоколу RIP. Запускать программу можно только с правами суперпользователя.

gated - это альтернатива для routed, может использовать протоколы RIP, OSPF, EGP одновременно. Тоже нужны права root.

traceroute - очень полезная утилита, для отслеживания маршрута пакетов. Чаще всего с помощью этой команды выполняется проверка сети linux. Пакет отправляет сообщение на компьютер со всех шлюзов между источником и пунктом назначения.

netstat –rnf inet - отображает таблицу маршрутизации ipv4

sysctl net.inet.ip.forwarding=1 - разрешает прохождение пакетов через этот компьютер.

route flush - удалить все маршруты

route add -net 0.0.0.0 192.168.10.2 - добавить маршрут по умолчанию

routed -Pripv2 –Pno_rdisc –d [-s|-q] - запустить демон routed по протоколу RIP2 без поддержки ICMP автообнаружения и подробном (s) или минимальном (q) режиме вывода информации.

route add 224.0.0.0/4 127.0.0.1 - добавить маршрут, используемый RIP2

rtquery –n - попросить RIP демона отправить запрос на другой хост (ручное обновление таблицы маршрутизации.

Другое

Иногда нужно не только управление сетью linux, но и работа с другими протоколами, такими как DNS или FTP.

nslookup - отправить запрос DNS серверу, на преобразование доменного имени в IP. Например, nslookup facebook.com вернет ip адрес сервера facebook.com.

ftp хост - передать файлы на хост. Часто нужно использовать также логин и пароль.

rlogin -l - подключиться к виртуальному терминалу с помощью telnet. Не рекомендуется использовать эту конструкцию, лучше используйте защищенное соединение по ssh.

Важные файлы

/etc/hosts - локальные имена для ip адресов

/etc/networks - имена сетей относительно ip адресов

/etc/protocols - имена протоколов для номеров протоколов

/etc/services - tcp/udp сервисы для номеров портов

Анализ сети

ifconfig интерфейс адрес - запустить интерфейс

ifconfig интерфейс - остановить интерфейс

ethereal & - позволяет запустить ethereal в фоновом режиме

tcpdump –i -vvv - инструмент для записи и анализа пакетов

netstat –w секунды –I интерфейс - отобразить настройки сети и статистику

udpmt –p порт –s байт целевой_хост - генерирует UDP трафик

udptarget –p порт - получать UDP трафик

tcpmt –p порт –s байт целевой_хост - генерировать TPC трафик

tcptarget –p порт - получать TCP трафик

ifconfig - посмотреть состояние сетевых интерфейсов

netmask - позволят посмотреть подсети

Свитчинг

ifconfig sl0 srcIP dstIP - настроить серийный интерфейс(сначала выполните slattach –l /dev/ttyd0 а затем sysctl net.inet.ip.forwarding=1

telnet 192.168.0.254 - подключится к свитчу из этой подсети

sh ru или show running-configuration - отобразить текущую конфигурацию

configure terminal - перейти в режим настройки

exit - выйти из режима настройки

VLAN

vlan n - создать VLAN с ID n

no vlan N - удалить VLAN с ID N

untagged Y - добавить порт Y к VLAN N

ifconfig vlan0 create - создать интерфейс vlan0

ifconfig vlan0 vlan ID vlandev em0 - соединить vlan0 с em0

ifconfig vlan0 up - активировать виртуальный интерфейс

UDP / TCP

Это программы для работы с сетью linux, которые позволяют передавать пакеты между машинами.

socklab udp - запустить socklab по протоколу udp.

sock - создать udp соект

sendto ид_сокета хост - порт передача пакетов данных

recvfrom ид_сокета размер_байт - получить данные из сокета

socklab tcp - запустить socklab по протоколу tcp

passive - создать сокет в пассивном режиме.

accept - разрешает входящие соединения

connect хост порт - эквивалент socklab

clase - закрывает соединение

write - записать несколько байт в сокет

NAT/Фаервол

rm /etc/resolv.conf - отключает разрешение доменных имен, что гарантирует правильную фильтрацию по правилам фаервола.

ipnat –f имя_файла -записывает правила фаервола в файл

ipnat –l - получить список активных правил

ipnat –C –F - Очистить таблицу правил

map em0 192.168.1.0/24 -> 195.221.227.57/32 em0 - привязать IP адреса к интерфейсу

map em0 192.168.1.0/24 -> 195.221.227.57/32 portmap tcp/udp 20000:50000 - привязка IP адреса вместе с портом.

ipf –f имя_файла - записать правила в файл

ipf –F –a - очистить таблицу правил

ipfstat –I - информация о фильтрации, отфильтрованных пакетах и правилах.

Выводы

В этой статье мы рассмотрели самые полезные сетевые утилиты linux, с помощью них вы можете выполнять тестирование сети linux, проверить сеть на работоспособность и обнаружить неполадки сети. Более подробную информацию по каждой из них вы можете найти в официальной документации.

Современный компьютер предоставляет пользователю много возможностей, без доброй половины которых он мог бы запросто обойтись. В сети по сей день идут дебаты о том, нужны ли ему 3D-графика и высококачественный звук. Однако есть одна функция, необходимость которой не оспаривается ни кем, — это выход в сеть.

Знатоки свободной ОС утверждают, что Linux создана для сети, как птица для полета. Правда, тут же делают поправку на то, что истинную мощь этой системы увидят только избранные, поскольку настройка сетевых интерфейсов — занятие сложное и требующее серьезных знаний.

Спорить с этим утверждением сложно, поскольку очевиден его всеобъемлющий характер. Действительно, не обладая специальными умениями, даже табуретки не сколотить. Тем не менее мы и тут имеем дело с некоторым преувеличением. Linux —система простая. Пользователю Windows приходится держать в памяти значительно больше информации для того, чтобы обеспечить комфортную работу с ней.

Дабы последнее утверждение не выглядело голословным, рассмотрим процедуру настройки сети в системе Linux. Причем, как это принято в мире свободного ПО, не один путь, а несколько вариантов. А пользователь сам выберет тот, который ему больше понравится.

Команда ifconfig

Как правило, подключение драйверов сетевых адаптеров происходит при установке системы. Чтобы убедиться в этом, достаточно в консоли набрать ifconfig -a. Кстати, данное название вовсе не является исковерканным имени команды ipconfig, знакомой пользователям Windows. Это просто сокращение от Interface Configuration.

В ответ пользователь получит информацию о характеристиках Ethernet-соединения и о параметрах так называемого кольцевого интерфейса. Первый обозначается как eth0 (если сетевых адаптеров несколько, то для каждого будет своя секция eth[порядковый номер]), а второй — как lo.

Эту же команду можно использовать для активации интерфейса. Чаще всего она выглядит так:

ifconfig [обозначение интерфейса] netmask [маска сети] broadcast [широковещательный адрес] up.

Впрочем, на практике все параметры можно и не указывать. Например, если маска сети и широковещательный адрес не задаются явно, то система применит стандартные значения (сетевой адрес с машинной частью 255 и маской 255.255.255.0).

Для активации PLIP, SLIP и РРР необходимо использовать опцию pointopoint. При этом интерфейсы будут именоваться так:

– plip[порядковый номер начиная с нуля] — для PLIP;

– slip[порядковый номер начиная с нуля] — для SLIP;

– ppp[порядковый номер начиная с нуля] — для PPP.

Например, для того чтобы сконфигурировать интерфейс PLIP, соединяющий два компьютера с адресами [адрес1] и [адрес2], следует в консоли набрать:

ifconfig plip0 [адрес1] pointopoint [адрес2].

Отключение интерфейса производится командой ifconfig [обозначение интерфейса] down. Таким образом, используя всего одну команду, вы можете управлять сетевым устройством. И разумеется, держать в памяти все ее опции нет никакого смысла — если что-то забыли, то man ifconfig всегда придет на помощь.

Команда route

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

Данная команда выводит на экран таблицу маршрутизации. При этом каждая запись состоит из нескольких полей:

– Destination — IP-адрес конечного пункта маршрута;

– Gateway — IP-адрес или имя шлюза (если его нет, то используется символ “*”);

– Genmask — маска сети маршрута;

– Flags — указатель типа или состояния маршрута (может принимать следующие значения: U — активный, Н — хост, С — шлюз, D — динамический, М — модифицированный);

– MSS — максимальное количество данных, предаваемых за один раз;

– Metric — число переходов до шлюза;

– Ref — количество обращений к маршруту на определённый момент времени;

Window — максимальное количество данных для принимающей стороны;

– Use — число пакетов, переданных по маршруту;

– Iface — тип интерфейса.

Чтобы добавить адрес в таблицу маршрутизации, надо использовать команду route с ключом add. При этом следует учесть, что если соответствующий интерфейс уже сконфигурирован при помощи ifconfig, то система сама может получить сведения о нем. В таком случае нет смысла в употреблении спецификаторов — достаточно указать адрес пункта назначения. Все остальные данные будут избыточными, а стало быть, и необязательными.

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

Для удаления маршрута используйте команду route del -net .

Другие команды

Если настройки интерфейса хранятся в системе, то для быстрой активации и деактивации можно использовать команды ifup и ifdown следующим образом:

– ifup [обозначение интерфейса] — для включения.

– ifdown [обозначение интерфейса] — для отключения.

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

Например, LISTEN означает, что служба ждет соединения с другой машиной, а ESTABLISHED говорит о том, что оно уже установлено. Если нет запущенных программ, для которых такое состояние является нормальным, то это может быть небезопасным и свидетельствовать об атаке на хост.

Конфигурационые файлы

Указанных выше команд вполне достаточно для настройки сети. Однако у этих утилит есть один существенный недостаток: результат их работы будет действителен в течение только одной сессии. После перезагрузки все придется начинать сначала. По этой причине значительно удобнее один раз отредактировать конфигурационные файлы.

Несмотря на то что их устройство не зависит от дистрибутива, располагаться они могут в разных местах. Например, в Debian за настройку интерфейсов и маршрутизации отвечает файл /etc/init.d/network, а в Slackware (MOPS, Zenwalk) — /etc/rc.d/rc.inet1. На этот счет можно дать только один универсальный совет: приступая к работе с тем или иным продуктом, обязательно ознакомьтесь с технической документацией.

В качестве примера рассмотрим дистрибутив ASPLinux. Для хранения настроек сетевых интерфейсов там используется каталог /etc/sysconfig/network-scripts/. Каждый из них определяется файлом ifcfg-[обозначение интерфейса].

Этот файл состоит из строк вида: [параметр]=[значение]. Параметры могут быть следующие:

– NAME — произвольное название соединения;

– DEVICE — обозначение интерфейса;

– IPADDR — IP-адрес интерфейса;

– NETMASK — маска сети;

– GATEWAY — IP-адрес шлюза;

– ONBOOT — указатель на необходимость активации во время загрузки;

– USERCTL — указывает на то, что активировать интерфейс может обычный пользователь;

– MTU — значение MTU (максимальный размер пакета, передаваемого через интерфейс);

– PEERDNS — указывает на необходимость использования серверов DNS, полученных при активации интерфейса;

– DNS1, DNS2 — IP-адреса первичного и вторичного серверов DNS;

– BOOTPROTO — указатель режима настройки интерфейса (none — при помощи пользовательских параметров, boottp или dhcp — при помощи соответствующих протоколов).

За настройку DNS отвечают файлы /etc/host.conf и /etc/resolv.conf. Первый из них — это обычный текстовый файл, в котором задаются правила работы подсистемы поиска имен и адресов узлов. Его устройство типично для всех объектов такого типа — в каждой строке содержится параметр и его значения (их может быть несколько).

Параметр order задает метод поиска IP-адреса узла. Он может принимать следующие значения: bind (использовать сервер DNS), hosts (использовать локальную базу адресов), nis (использовать сервер NIS). Они должны располагаться в том порядке, в котором будет осуществляться поиск.

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

Параметр reorder может принимать значения on/off. Он отвечает за включение режима работы, при котором локальные адреса получают приоритет перед всеми найденными. Spoofalert включает режим записи в системный журнал результатов проверки ложных имен. А multi позволяет настроить метод обработки локальной базы узлов. Разумеется, все параметры указывать не обязательно. На практике часто встречаются файлы /etc/host.conf, состоящие из двух строк.

Файл /etc/resolv.conf описывает некоторые параметры, которые используются подсистемой поиска имен. Он может состоять из следующих строк:

– nameserver — адреса серверов DNS;

– domain — имя локального домена для поиска адресов в локальной сети;

– search — список доменов для поиска адресов.

Очевидно, что параметры domain и search не могут быть актуальными одновременно. Если система обнаружит это противоречие, то будет учитывать только последнюю запись.

А может ли Linux вообще не использовать сервер имен? Теоретически — да, хотя на практике описанный ниже способ применяется только в очень маленьких сетях, где другие методы не оправданны.

Способ заключается в использовании файла /etc/hosts. Он представляет собой список имен хостов и их IP-адресов, причем для одного адреса можно указывать несколько имен.

Графические средства настройки

Хотя настройка сети путем прямого редактирования конфигурационных файлов — задача не очень сложная, практически все современные дистрибутивы предлагают пользователю графические инструменты, предназначенные для её решения. Даже Zenwalk, который не принято считать дружественным в Windows-понимании этого слова, позволяет сконфигурировать сетевые интерфейсы без помощи командной строки.

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

Так, пользователи дистрибутива Linux XP Desktop настраивают VPN-соединение при помощи удобного инструмента с графическим интерфейсом, который устроен даже проще, чем аналогичное средство в Windows. Примерно то же самое предлагают потребителю ASPLinux, Mandriva и SuSE Linux.

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

– просмотр сетный информации

– просмотр информации беспроводных устройств

sudo iwlist scan

– исследовать беспроводные сети

sudo /etc/init.d/networking restart

– перезапустить сеть

(file) /etc/network/interfaces

– файл для прирученный настройки сети

– поднять interface

ifdown interface

– положить interface

— представить конфигурацию сетевого интерфейса eth0

— активировать (поднять) интерфейс eth0

— деактивировать (спустить) интерфейс eth0

ifconfig eth0 192.168.1.1 netmask 255.255.255.0

— выставить интерфейсу eth0 ip-адрес и маску подсети

ifconfig eth0 promisc

— перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)

ifconfig eth0 -promisc

— выключить promiscuous-режим на интерфейсе eth0

— активировать интерфейс eth0 в dhcp-режиме.

— вывести локальную матрицу маршрутизации

— вывести локальную таблицу маршрутизации

route add -net 0/0 gw IP_Gateway

— подать ip-адрес шлюза по умолчанию (default gateway)

route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1

— приплюсовать статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1

route del 0/0 gw IP_gateway

— выслать ip-адрес шлюза по умолчанию (default gateway)

echo "1" > /proc/sys/net/ipv4/ip_forward

— позволить пересылку пакетов (forwarding)

— отобразить имя компьютера

host www.linuxguide.it

— разрешить имя www.linuxguide.it хоста в ip-адрес и и наоборот host 62.149.140.85

— отобразить состояние всех интерфейсов

— отобразить статус и тип слияния для интерфейса eth0

— отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и нынешные режимы соединения

— отображает все установленные сетевые соединения по протоколам TCP и UDP без позволения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединения

— отображает все сетные соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, слушающих порты

tcpdump tcp port 80

— показать весь трафик на TCP-порт 80 (обычно — HTTP)

— просканировать эфир на объект, доступности беспроводных точек доступа

— показать конфигурацию беспроводного сетевого интерфейса (общая граница между двумя функциональными объектами, требования к которой определяются стандартом; совокупность средств, методов и правил взаимодействия (управления, контроля и т.д.) между ) eth1

Видео по теме: Команды для работы с сетью в Linux

От переводчика Практически год назад вышла третья версия системы виртуализации Xen. За это время система замечательно зарекомендовала себя и завоевала большое количество сторонников, как во всём мире, так и среди русскоязычных пользователей. Возможно, она была бы у нас ещё популярнее, но для многих барьером, мешающим использовать Xen, является недостаток русскоязычной документации. Этот документ является первым полным переводом руководства пользователя Xen на русский язык. Следует отметить...

Продолжение статьи Руководство пользователя Xen v3.0 Часть 3 Дальнейшая поддержка Если у вас есть вопросы, на которые нет ответов в этом руководстве, возможно, вам смогут помочь источники указанные ниже. Отчёты об ошибках, предложения и дополнения к программному обеспечению (а также документации) Xen нужно высылать в список разработчиков Xen (адрес ниже). Другая документация Разработчикам, интересующими портированием другим операционных систем на Xen, может оказаться полезным руковод...

Для чего ведать собственный IP адресок? Но собственно я уже не раз разыскивал протест на данный вопрос и безусловно искает на него протест. Когда вы декламируете эту заметку, то у вас также появился вопрос, как разузнать ip адресок собственного провайдера или элементарно собственного пк. Маловажно, c какой-никаким дистрибутивом Linux или Unix вы трудитесь, есть методы испробовать ваш врождённый IP адресок, начиная с обыкновенного графичного интерфейса и заканчивая приобретением детальной данных...

После настройки сетевых служб важно обратить внимание на порты, принимающие подключения на сетевых интерфейсах. Любые открытые порты могут быть доказательством вторжения. Просмотреть открытые порты можно двумя способами. Менее надёжный способ - опросить сетевой стек с помощью команды netstat -an или lsof -i. Этот способ не очень надёжен, так как эти программы не подключаются к компьютеру по сети, а просто определяют, что происходит в системе. По этой причине, эти приложения часто подменяются нап...

Продолжение статьи Руководство пользователя Xen v3.0 Часть 1 Поддержка virtual Trusted Platform Module (vTPM)Поддержка virtual Trusted Platform Module (vTPM) Паравиртуализированным доменам можно предоставить доступ к виртуализированной версии TPM. Это даёт возможность приложениям в этих доменах использовать TPM-устройства, например, через TSS-стек Trousers TSS stack . В репозитории Xen есть все необходимые компоненты для обеспечения доступа к TPM. Поддержка выполняется за счёт нескольких в...

Навигация по записям

Доступ к удаленным системам

sx , rx

Команды sx и rx xmodem . Входят в состав пакета minicom .

sz , rz

Команды sz и rz служат для приема/передачи файлов на/из удаленный узел в сети, по протоколу zmodem . Протокол zmodem имеет некоторые преимущества перед протоколом xmodem , в качестве такого преимущества можно назвать более высокую скорость передачи и возможность возобновления передачи, в случае ее разрыва. Входят в состав пакета minicom .

ftp

Под этим именем подразумевается утилита и протокол передачи файлов. Сеансы ftp могут устанавливаться из сценариев (см. Пример 17-6 , Пример A-5 и Пример A-14).

uucp

Unix to Unix copy . Это коммуникационный пакет для передачи файлов между Unix серверами. Сценарий на языке командной оболочки - один из самых эффективных способов автоматизации такого обмена.

Похоже, что с появлением Интернет и электронной почты, uucp постепенно уходит в небытие, однако, она с успехом может использоваться в изолированных, не имеющих выхода в Интернет, сетях.

cu

C all U p - выполняет соединение с удаленной системой, как простой терминал. Эта команда является частью пакета uucp и, своего рода, упрощенным вариантом команды telnet .

telnet

Утилита и протокол для подключения к удаленной системе.

wget

wget - неинтерактивная утилита для скачивания файлов с Web или ftp сайтов.

    wget -p < a href =

    wget" title ="http://www.xyz23.com/file01.html

    wget" >

    wget -r < a href = title ="ftp://ftp.xyz24.net/~bozo/project_files/" > ftp :// ftp.xyz24.net/ ~bozo/ project_files/ -o $SAVEFILE

lynx

lynx - Web браузер, внутри сценариев (с ключом -dump) может использоваться для скачивания файлов с Web или ftp сайтов, в неинтерактивном режиме.

    lynx -dump < a href = title ="http://www.xyz23.com/file01.html" > http:// www.xyz23.com/ file01.html > $SAVEFILE

rlogin

Remote login - инициирует сессию с удаленной системой. Эта команда небезопасна, вместо нее лучше использовать ssh .

rsh

Remote shell - исполняет команду на удаленной системе. Эта команда небезопасна, вместо нее лучше использовать ssh .

rcp

Remote copy - копирование файлов между двумя машинами через сеть. Подобно прочим r* утилитам, команда rcp небезопасна и потому, использовать ее в сценариях нежелательно. В качестве замены можно порекомендовать ssh или expect .

ssh

Secure shell - устанавливает сеанс связи и выполняет команды на удаленной системе. Выступает в качестве защищенной замены для telnet , rlogin , rcp и rsh . Использует идентификацию, аутентификацию и шифрование информации, передаваемой через сеть. Подробности вы найдете в man ssh .

Сеть является неотъемлемой частью Linux и предлагает множество инструментов и команд для диагностики любой сетевой проблемы.

Сетевые команды в примерах в Linux

Найти хост / доменное имя и IP-адрес — hostname
Сделать тест сетевого соединения — ping-
Получение конфигурации сети — Ifconfig
Сетевые соединения, таблицы маршрутизации, статистики интерфейсов — NETSTAT
Поиск имени DNS запрос — Nslookup
Подключение к другим хостам — Telnet
Получить сетевой хост — информация для пользователя трассировку
Сделать трассировку — traceroute
Просмотр информации пользователя – finger
Проверка статуса хоста назначения — Telnet

Примеры использования сетевых команд в Linux

Давайте посмотрим некоторые примеры различных сетевых команд в Linux. Некоторые из них довольно элементарные например пинг и телнет, а некоторые являются более мощными, например Nslookup и NetStat. Когда вы использовали эти команды в комбинации вы можете получить все, что вы ищете, например, имя хоста, конечные соединения точек, состояние соединения и т.д.

hostname — Имя хоста

Имя хоста (hostname) без вариантов отображает хозяина машины. По этому чтобы проверить кто владелец выполните команду:

# hostname

Эта команда отображает доменное имя машины. Чтобы увидеть IP -адрес для текущей машины выполните эту же команду с ключом «i»:

# hostname -i

ping — пинг

Он посылает пакеты информации в определенный пользователем источник. Если будут получены пакеты, устройство назначает и посылает пакеты обратно. Ping можно использовать для двух целей

1 . Чтобы гарантировать, что сетевое соединение может быть установлено.

2 . Timing соединения. Если у вас пинг www.. Используйте Ctrl + C , чтобы остановить тест. Выполнить команду можно так:

# ping сайт

Можно задать время перед отправкой пакета, например подождать 3 секунды перед отправкой следующего пакета.

# ping -i 3 your_IP

Чтобы проверить локальный интерфейс существует несколько способов:

# ping 0 # ping localhost # ping 127.0.0.1

Можно так же посылать N количество пакетов и после чего завершить работу, для этого:

# ping -c 5 www.сайт

Так же можно узнать версию самого пинга, для этого выполните команду:

# ping -V

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

# ping -a IP # ping -a 192.168.244.134

С опцией «-q» Вы сможете пропустить ответы от вашего удаленного хоста и показать полученную статистику:

# ping -c 5 -q www.сайт

Можно изменить размер передаваемого пакета (допустим с 56 на 120), а сделать это можно так:

# ping -s 100 192.168.244.134

Мы так же можем изменять длительность выполнение команды пинг, например нам нужно пинговать сервис 15 секунд, то для этого выполните:

# ping -w 15 192.168.244.134

Не прервав команду пинг, вы сможете увидеть статистику выполнения, нужно нажать CTRL + |

Посмотреть конфигурацию сети, он отображает текущую конфигурацию сетевого адаптера. Это удобно, чтобы определить, если вы transmit (ТХ) или receive (RX) ошибки.

traceroute

Удобная программа для просмотра количества количество прыжков и время отклика, чтобы добраться до удаленной системы или веб-сайта. Но вам нужно подключение к интернету, чтобы использовать этот инструмент. Но ее возможно будет Вам установить, чтобы воспользоватся.

# traceroute 192.168.244.133

Можно вывести информацию о всех сетевых картах что подключены, для этого выполните:

# ip link show

netstat

Самая полезная и очень универсальная для нахождения подключений к и от хозяина. Вы можете узнать все о многоадресной группы (multicast groups) сети выполнив:

# netstat -g

Чтобы увидеть кто «сидит» на порту (допустим на 21) выполните команду:

# netstat -nap | grep 21

Чтобы увидеть все соединения в том числе TCP и UDP выполните команду:

# netstat -a

# netstat –all

Параметр что выполнена программа будет отображать только соединение TCP:

# netstat –tcp

# netstat –t

Параметр что выполнена программа будет отображать только соединение UDP:

# netstat –udp

# netstat –u

nslookup

Если вы знаете IP-адрес он будет отображать как имя хоста. Чтобы найти все IP-адреса для данного доменного имени, команда Nslookup используется. Вы должны быть подключение к Интернету для этой утилиты. Пример использования:

# nslookup google.com

Вы также можете использовать Nslookup преобразовать имя хоста в IP-адрес и с IP-адреса из имени хоста.

finger

Посмотреть информацию о пользователях, отображает имя пользователя логин, настоящее имя, имя терминала и статус записи. это довольно старая команда для Linux и редко используемые в настоящее время.

telnet

Подключается хозяина назначения по протоколу Telnet, если телнет соединение установить на любом порту означает соединения между двумя хостами работает нормально.

# telnet # telnet 192.168.244.134 23

Обычно он используется для того чтобы узнать жив ли хост ​​или сетевое соединение в порядке.

Тема «Топ-10 Основных сетевых команд в Linux» завершена, но если я не упомянул о более хороших команд на Ваш взгляд, то пишите в комментарии и я дополню эту статью. Если есть вопросы и предложения, пишите все в комментарии. Спасибо.