Linux команды для работы с сетью. Нерекомендуемые сетевые команды Linux и их замена. Сетевые команды в примерах в Linux

Linux команды для работы с сетью. Нерекомендуемые сетевые команды Linux и их замена. Сетевые команды в примерах в Linux

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

Устаревшая команда

Команда(ы) на замену

arp ip n (ip neighbor)
ifconfig ip a (ip addr ), ip link , ip -s (ip -stats)
iptunnel ip tunnel
iwconfig iw
nameif ip link , ifrename
netstat ss , ip route (для netstat -r ), ip -s link (для netstat -i ), ip maddr (для netstat-g )
route ip r (ip route )

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

Эта статья не будет нацелена на детальный разбор iproute2 и команды ip ; вместо этого будут перечислены нерекомендуемые команды и даны их новые аналоги. Если вместо команды замены стоит «не ясно» и вы знаете надлежащую замену, то вы можете написать её комментариях к статье.

Перейти к:

Команды nslookup и dig отдельно рассмотрены здесь.

Arp

Замена

arp -a или -- all
.
Показывает записи указанного имени хоста или IP адреса. Если параметр не используется, то будут отображены все записи.
ip n (или ip neighbor ), или ip n show
arp -d или -- delete
.
Удалить записи кэша ARP для указанного узла.
ip n del (это “развалидирует” соседние записи)
.
ip n f
(или ip n flush )
arp -D или -- use-device
.
Использует аппаратный адрес, связанный с указанным интерфейсом.
Не ясно
arp -e
.
Показывает записи в дефолтном (Linux) стиле.
Не ясно
arp -f или -- file
.
Похоже на опцию -s , только в этот раз информация берётся из указанного файла . Если не задан, то по умолчанию используется /etc/ethers .
Не ясно
arp -H или -- hw-type или -t
.
При установке или чтении ARP кэша, этот необязательный параметр говорит arp какой класс записей ей следует проверить. По умолчанию, значение этого параметра ether (к примеру аппаратный код 0x01 для IEEE 802.3 10Mbps Ethernet).
Не ясно
arp -i или -- device
.
Выбирает интерфейс. При дампе ARP кэша будут напечатаны только записи, соответствующие указанному интерфейсу. Например, arp -i eth0 -s 10.21.31.41 A321.ABCF.321A создаст статичную ARP запись ассоциирующую IP адрес 10.21.31.41 с MAC адресом A321.ABCF.321A на eth0 .
ip n dev [имя]
arp -n или -- numeric
.
Показывает IP адреса вместо попытки определить доменные имена.
Не ясно
arp -s или -- set
.
Вручную создаёт статичную запись отображения адресов ARP для хоста с аппаратным адресом установленным на .
ip n add lladdr dev [устройство] nud (смотри пример ниже)
arp -v
.
Использовать вербальный режим, для отображения большего количества подробностей.
ip -s n (или ip -stats n )

# ip n del 10.1.2.3 dev eth0

Развалидировать запись ARP кэша для хоста 10.1.2.3 на устройстве eth0 .

# ip neighbor show dev eth0

Показать ARP кэш для интерфейса eth0 .

# ip n add 10.1.2.3 lladdr 1:2:3:4:5:6 dev eth0 nud perm

Добавить “постоянную” запись ARP кэша для хоста 10.1.2.3 устройства eth0. Состояние Протокола обнаружения соседей (nud) может быть одним из следующих:

  • noarp - запись действительно. Не будут сделаны попытки подтвердить эту запись, но она может быть удалена когда истечёт срок её жизни.
  • permanent - запись действительна навсегда и может быть удалена только в административном порядке.
  • reachable - запись действительна до истечения годности тайм-аута достижимости.
  • stale - запись действительна, но подозрительна.

Ifconfig

Замена

ifconfig
.
Показать подробности о всех сетевых интерфейсах.
ip a (or ip addr )
ifconfig
.
Имя интерфейса. Это обычно имя драйвера, за которым следует номер устройства; например, eth0 для первого интерфейса Ethernet. Eth0 обычно является главным интерфейсом сетевой карты ПК.
ip a show dev
ifconfig
.
Чтобы включить интерпретацию различающихся схем наименования, используемых различными протоколами, используется для декодирования и отображения всех адресов протокола. В настоящее время поддерживаемые адресные семейства включают inet (TCP/IP, default), inet6 (IPv6), ax25 (AMPR Packet Radio), ddp (Appletalk Phase 2), ipx (Novell IPX) и netrom (AMPR Packet radio).
ip -f a
.
может быть inet (IPv4), inet6 (IPv6), или link . Дополнительно, -4 = -f inet и -6 =-f inet6 .
ifconfig add .
ifconfig address
.

Назначает указанный IP указанному .
ip a add dev
ifconfig allmulti или -allmulti
.
Включает или отключает режим all-multicast (многоадресной передачи). Если выбран, все широковещательные пакеты сети будут получены указанным . Это включает или отключает отправку входящих фреймов сетевого уровня ядра.
ip mr iif или ip mroute iif , где это интерфейс на котором принимаются широковещательные пакеты.
ifconfig arp или -arp
.
Включает или отключает использование протокола ARP на этом .
ip link set arp on или arp off
ifconfig broadcast
.
Определяет адрес для широковещательных передач. По умолчанию, широковещательным адрес для подсети является IP адрес, находящийся со всеми в одной части адреса подсети (т.е., a.b.c.255 для подсети /24).
ip a add broadcast
.
ip link set dev broadcast (устанавливает широковещательный адрес канального уровня)
ifconfig del
.
Удаляет IPv6 адрес из , такого как eth0 .
ip a del dev
ifconfig down
.
Отключает , такой как eth0 .
ip link set dev down
ifconfig hw
.
Устанавливает аппаратный адрес (MAC) этого "а, если драйвер устройства поддерживает эту операцию. Ключевое слово должно сопровождаться именем аппаратного средства и печатным ASCII эквивалентом аппаратного адреса. Поддерживаемые в настоящее время аппаратные классы включают: ether (Ethernet), ax25 (AMPR AX.25), ARCnet и netrom (AMPR NET/ROM).
ip link set dev address
ifconfig io_addr
.
Установить начальный в I/O space для этого устройства.
Не ясно; возможно ethtool .
ifconfig irq
.
Установить , используемую в сетевом интерфейсе.
Не ясно; возможно ethtool .
ifconfig mem_start
.
Установить начальный адрес в интерфейса.
Не ясно; возможно ethtool .
ifconfig media
.
Устанавливает физический порт или тип медиа. Примеры это10baseT , 10base2 и AUI . Величина auto скажет драйверу интерфейса автоматически определить тип медиа (поддержка этой команды меняется от драйвера к драйверу).
Не ясно; возможно ethtool .
ifconfig mtu [n]
.
Устанавливает максимальный блок передачи () интерфейса на [n] .
ip link set dev mtu [n]
ifconfig multicast
.
Устанавливает на интерфейсе (обычно не требуется, поскольку драйверы сами правильно устанавливают флаг).
ip link set dev multicast on или off
ifconfig netmask
.
Устанавливает маску подсети (не IP адреса) для этого "а. Используются значения по умолчанию масок для стандартных подсетей классов A, B или C (основываются на IP адресе), но могут быть изменены этой командой.
Не ясно
ifconfig pointopoint или -pointopoint
.
Включение или отключение режима на этом .
Не ясно; возможно ipppd . Команда ip a add peer определяет адрес удалённой точки для интерфейса точка-точка.
ifconfig promisc или -promisc
.
Включение или отключение (неразборчивого режима) на .
ip link set dev promisc on или off
ifconfig txquelen [n]
.
Установить . Рекомендуются меньшие величины для подключений с большой задержкой (например, dial-up modems, ISDN и т.д.).
ip link set dev txqueuelen [n] или txqlen [n]
ifconfig tunnel
.
Создать устройство Simple Internet Transition (IPv6-in-IPv4), которое туннелирует на предоставленный IPv4 .
ip tunnel mode sit (другие возможные режимы это ipip и gre) .
ifconfig up
.
Активировать (включить) указанный .
ip link set up

# ip link show dev eth0 # ip a add 10.11.12.13/8 dev eth0 # ip link set dev eth0 up # ip link set dev eth0 mtu 1500 # ip link set dev eth0 address 00:70:b7:d6:cd:ef

Iptunnel

Синтаксис между iptunnel и ip tunnel очень схож, это показывают и примеры ниже.

# add ipip-tunl1 mode ipip remote 83.240.67.86 (ipip-tunl1 - это имя туннеля, 83.240.67.86 - это IP адрес удалённой точки). # add ipi-tunl2 mode ipip remote 104.137.4.160 local 104.137.4.150 ttl 1 # add gre-tunl1 mode gre remote 192.168.22.17 local 192.168.10.21 ttl 255

Глубже о создании туннелей с помощью iproute2 вы можете познакомиться здесь.

Iwconfig

Замена

iwconfig
.
Отображает основные сведения о беспроводных интерфейсах, такие как поддерживаемые протоколы (), Extended Service Set ID (), режим и точка доступа. Для просмотра этих сведений о конкретном интерфейсе, используйте iwconfig где interface - это имя устройства, такое как wlan0 .
iw dev link
iwconfig ap
.
Если возможно, заставляет беспроводной адаптер зарегистрироваться с точкой доступа . Этим адресом является идентификатор ячейки точки доступа (по данным беспроводного сканирования), он может отличаться от своего MAC адреса.
Не ясно
iwconfig commit
.
Некоторые беспроводные адаптеры не применяют внесённые изменения немедленно (они могут ждать других изменений, чтобы применить их вместе, или применяют их только, когда карта поднимается с ifconfig ). Эта команда (когда доступна) заставляет адаптер немедленно применить все ожидающие изменения.
Не ясно
iwconfig essid
.
Подключение к беспроводной сети ESSID . На некоторых беспроводных адаптерах вы можете отключить проверку ESSID (неразборчивый ESSID) с помощью off или any (используйте on для повторного включения).
iw connect
iwconfig frag
.
Устанавливает максимальный размер фрагмента, который всегда ниже, чем максимальный размер пакета. Этот параметр может также управлять доступность Frame Bursting на некоторых беспроводных адаптерах (возможность отправлять несколько IP пакетов вместе). Этот механизм будет задействован, если размер фрагмента больше, чем максимальный размер пакета. другими валидными флагами параметра являются auto , on и off .
Не ясно
iwconfig
.
Устанавливает рабочую частоту или канал на беспроводном устройстве. Значение ниже 1000 указывает номер канала, значение, большее, чем 1000 - это частота в Hz. Вы можете оперировать суффиксами k , M или G для величин (например, “2.46G” для частоты 2.46 GHz). Вы также можете использовать off или auto чтобы позволить самому адаптеру выбрать наилучший канал (если поддерживает).
iw dev set freq
.
iw dev set channel
iwconfig key
.
Для установки текущего (ключа) шифрования, просто введите ключ в шестнадцатеричном виде как XXXX-XXXX-XXXX-XXXX или XXXXXXXX. Вы также можете ввести ключ как строку ASCII используя префикс s: . On и off (повторно) включают и отключают шифрование. Режим безопасности может быть open или restricted , и его значение зависит от используемой карты. С большинством карт, в режиме open не используется аутентификация и карта может также принимать не зашифрованные сессии, в то время как в режиме restricted принимаются только зашифрованные сессии и карта будет использовать аутентификацию, если она доступна.
iw connect keys (для WEP)
.
Для подключения к ТД с WPA или WPA2 шифрованием, вы должны использовать wpa_supplicant .
iwconfig mode
.
Устанавливает режим работы беспроводного устройства. Режим может быть Ad-Hoc , Auto , Managed , Master , Monitor, Repeater или Secondary .
.
Ad-Hoc
: семть состоит только из одной ячейки без точки доступа.
Managed : беспроводной узел подключается к сети, состоящей из множества точек доступа, с роумингом.
Master : беспроводной узел является ведущим синхронизации, или он действует в качестве точки доступа.
Monitor : беспроводной узел не связан с какой-либо ячейкой и пассивно мониторит все пакеты на частоте.
Repeater : беспроводной узел переправляет пакеты между другими беспроводными узлами.
Secondary : беспроводной узле действует в качестве запасного мастера/повторителя (master/repeater).
Не ясно
iwconfig modu
.
Заставляет адаптер беспроводной сети использовать определенный набор модуляций. Современные адаптеры поддерживают различные модуляции, такие как 802.11b, 802.11g или 802.11n. Список доступных модуляций зависит от адаптера/драйвера и может быть показан используя iwlist modulation . Некоторыми опциями являются 11g , CCK OFDMa и auto .
Не ясно
iwconfig nick
.
Устанавливает прозвище (или имя станции).
Не ясно
iwconfig nwid
.

Устанавливает Network ID для WLAN. Этот параметр используется только для железа до 802.11 поскольку протокол 802.11 для этой функции использует ESSID и адрес точки доступа. На некоторых адаптерах беспроводной сети вы можете отключить проверку Network ID (беспорядочный NWID) с off on для (повторного) включения).
Не ясно
iwconfig power
iwconfig power min | max
iwconfig power mode
iwconfig power on | off
.
Настраивает схему управления питанием и режимом. Допустимые опции : period (устанавливает период между пробуждениями), timeout (устанавливает таймаут перед возвращением ко сну), saving (устанавливает общий уровень экономии энергии).
Модификаторы min и max по умолчанию задаются в секундах, но принимаются суффиксы m или u для указания значений в миллисекундах и микросекундах.
Допустимые опции режима : all (принимать все пакеты), unicast (принимать только одноадресные пакеты, отвергать многоадресные и широковещательные) и multicast (принимать только многоадресные и широковещательные пакеты, отбрасывать одноадресные пакеты).
On и off (повторно) включают и отключают управление питанием.
Не ясно; некоторые связанные с мощностью команды:
.
iw dev set power_save on
.
iw dev get power_save
iwconfig rate/bit
.
Устанавливает скорость передачи данных в битах в секунду для карт, поддерживающих несколько скоростей передачи. Скорость передачи - это скорость, на которой в среднем передаются биты, пользовательская скорость подключения ниже из-за различных файторов. Можно добавлять суффиксы k , M или G к суффиксам (десятичный множитель: 10^3, 10^6 и 10^9 b/s), или достаточно добавить ‘0 ‘ (нули). Скорость также может быть auto для выбора автоматического режима скорости (будет откатываться на низкие скорости на зашумленных каналах), или fixed для возврата к фиксированному значению. Если указать значение скорости передачи и применить auto , драйвер будет использовать все скорости, которые ниже или равны этой величине.
iw set bitrates legacy-2.4 12 18 24
iwconfig retry
.
Для установки максимального числа повторных попыток (повторных передач MAC), введите limit . Для того, чтобы установить максимальную продолжительность времени во время которого MAC должен пытаться ещё раз lifetime . По умолчанию эта величина в секундах; добавьте суффикс m или u для указания величины в миллисекундах или микросекундах. Вы можете добавить модификаторы short , long , min и max .
Не ясно
iwconfig rts
.
Устанавливает размер самого маленького пакета, для которого узел отправляет RTS; значение, равное максимальному размеру пакета отключает этот механизм. Вы также можете установить пороговый параметр на auto , fixed или off .
Не ясно
iwconfig sens
.
Устанавливает порог чувствительности (определяет, насколько чувствителен беспроводной адаптер в плохих условиях, таких как низкий уровень сигнала, помехи и т.д.). Судя по всему, современные адаптеры контролируют этот порог автоматически.
Не ясно
iwconfig txpower
.
Для адаптеров, поддерживающих несколько мощностей передачи эта команда устанавливает мощность передачи в dBm. Если W это мощность в Ваттах, мощность в dBm это P = 30 + 10.log(W). Если оканчивается на mW , то значение будет автоматически конвертировано в dBm. Кроме того, on и off включают и отключают радиосигнал, а auto и fixed включают и отключают контроль мощности (если эти функции доступны).
iw dev set txpower
.
iw phy set txpower
iwconfig -- help
.
Показать справку по iwconfig.
iw help
iwconfig -- version
.
Показать версию установленной iwconfig.
iw -- version

# iw dev wlan0 link # iw wlan0 connect CoffeeShopWLAN # iw wlan0 connect HomeWLAN keys 0:abcde d:1:0011223344 (для WEP)

Nameif

Замена

nameif
.
Если не указано имя и MAC адрес, она пытается прочитать адрес из /etc/mactab . Каждая строка mactab должна содержать имя интерфейса и MAC адрес (или комментарии, начинающиеся с #).
ip link set dev name
.
ifrename -i -n
nameif -c
.
Читает из вместо of /etc/mactab .
ifrename -c
nameif -s
.
Сообщения об ошибках, отправляемые в системный журнал.
Не ясно

Netstat

Замена

netstat -a или -- all
.
Показать как прослушиваемые, так и не прослушиваемые сокеты .
ss -a или -- all
netstat -A или -- protocol=
.
Указывает адрес семейств, для которых должны быть показаны подключения. Семейства - это разделённый запятыми список ключевых слов вроде inet , unix , ipx , ax25 , netrom и ddp . Имеет такой же эффект как использование опций -- inet , -- unix (-x) , -- ipx , -- ax25 , -- netrom и -- ddp .
ss -f или -family=
.
Семейства: unix ,inet , inet6 ,link , netlink .
netstat -c или -- continuous
.
Настраивает netstat обновлять отображаемую информацию каждое количество секунд, пока не будет остановлена.
Не ясно
netstat -C
.
Выводит информацию маршрутизации из кэша маршрутов.
ip route list cache
netstat -e или -- extend
.
Отображает повышенный уровень детализации. Может быть введено два раза (как -- ee ) для максимальной детализации.
ss -e или -- extended
netstat -F
.
Печатает информацию маршрутизации из прямой базы данных ().
Не ясно
netstat -g или -- groups
.
Отображение групповой информации членства в группе для IPv4 и IPv6.
ip maddr , ip maddr show
netstat -i или -- interface=
.
Отображает таблицу всех сетевых интерфейсов или указанного .
ip -s link
netstat -l или -- listening
.
Показывает только прослушиваемые сокеты (которые netstat по умолчанию пропускает).
ss -l или -- listening
netstat -M или -- masquerade
.
Показывает список соединений (соединения, которые изменил преобразователь сетевых адресов Network Address Translation).
Не ясно
netstat -n или -- numeric
.
Показать численные адреса вместо того, чтобы пытаться определить символический хост, порт или имена пользователей (пропускает DNS преобразование).
ss -n или -- numeric
netstat -- numeric-hosts
.
Показывает числовые адреса узлов, но не влияет на преобразование портов или пользовательских имен.
Не ясно
netstat -- numeric ports
.
Показывает числовые номера портов, но не влияет на преобразование хост-имен или пользователей.
Не ясно
netstat -- numeric-users
.
Показывать цифровые идентификаторы пользователей, но не затрагивает разрешение имён хостов и портов.
Не ясно
netstat -N или -- symbolic
.
Отображает символические имена хоста, порта или пользователя вместо числовых представлений. Netstat делает это по умолчанию.
ss -r или -- resolve
netstat -o или -- timers
.
Включает в себя информацию, связанную с сетевыми таймерами.
ss -o или -- options
netstat -p или -- program
.
Показывает идентификатор ID (PID) и имя программы к которой принадлежит каждый сокет.
ss -p
netstat -r или -- route
.
Показывает таблицы маршрутизации ядра.
ip route , ip route show all
netstat -s или -- statistics
.
Отображает итоговую статистику для каждого протокола.
ss -s
netstat -t или -- tcp
.
Фильтровать результаты для отображения только TCP.
ss -t или -- tcp
netstat -T или -- notrim
.
Остановка обрезки длинных адресов
Не ясно
netstat -u или -- udp
.
Фильтровать результаты для отображения только UDP.
ss -u или -- udp
netstat -v или -- verbose
.
Давать подробный вывод
Не ясно
netstat -w или -- raw
.
Фильтровать результаты для отображения только .
ss-w или -- raw
netstat -Z или -- context
.
Если включён , то печатает контекст SELinux. На хостах с запущенным SELinux, все процессы и файлы маркированы таким образом, который представляет информацию, связанную с безопасностью. Эта информация называется контекст SELinux.
Не ясно

Route

Замена

route
.
Отображение таблицы маршрутизации хоста.
ip route
route -A или route --
.
Использование указанного семейства адресов с возможностью add (добавить) или del (удалить). Допустимые семьи это inet (DARPA Internet), inet6 (IPv6), ax25 (AMPR AX.25), netrom (AMPR NET/ROM), ipx (Novell IPX), ddp (Appletalk DDP) и x25 (CCITT X.25).
ip -f route
.
может быть inet (IP), inet6 (IPv6), или link . Дополнительно, -4 = -f inet и -6 = -f inet6 .
route -C или -- cache
.
Работает на кэш маршрутизации ядра вместо таблицы маршрутизации переадресации информационной базы (FIB).
Не ясно; ip route show cache сбрасывает кэш маршрутизации.
route -e или -ee
.
Использует для отображения формат netstat -r таблицы маршрутизации. -ee сгенерирует очень длинную строку со всеми параметрами из таблицы маршрутизации.
ip route show
route -F или -- fib
.
Работает на Forwarding Information Base () таблицы маршрутизации (поведение по умолчанию).
Не ясно
route -h или -- help
.
Напечатать справку.
ip route help
route -n
.
Показывает числовые IP адреса и обходит преобразование имени хоста.
Не ясно
route -v или -- verbose
.
Включает многословный вывод команды.
ip -s route
route -V или -- version
.
Показывает версию команд net-tools и route .
ip -V
route add или del
.
Добавление или удаление маршрута в таблицу маршрутизации.
ip route via
route dev
.
Связывает маршрут с конкретным устройством. Если dev - это последняя опция в командной строке, то слово dev можно опустить.
ip route dev
route gw
.
Маршрутизирует пакеты через указанный IP адрес шлюза.
ip route add default via
route -host
.
Указывает, что целью является хост (не сеть).
Не ясно
route -irtt [n]
.
Устанавливает начальное точное время прохождения () для TCP подключений через этот маршрут в [n] миллисекундах (1-12000). Это, как правило, используется только на сетях AX.25. Если пропустить , то используется значение по умолчанию в 300ms.
Не ясно; ip route rtt устанавливает оценку RTT; rttvar устанавливает первоначальную оценку дисперсии RTT.
route -net
.
Указывает, что целью является сеть (не хост).
Не ясно
route [-host или -net] netmask
.
Устанавливает маску подсети.
Не ясно
route metric [n]
.
Устанавливает поле показателя в таблице маршрутизации (используется демонами маршрутизации) к значению [n] .
ip route metric orpreference
route mod, dyn, или reinstate
.
Установите динамический или измененный маршрут. Эти флаги для диагностических целей, и, как правило, только устанавливаются демонами маршрутизации.
Не ясно
route mss
.
Установка максимального размера сегмента Maximum Segment Size () TCP на указанное количество байтов для подключений через этот маршрут.
ip route advmss (the MSS to advertise to these destinations when establishing TCP connections).
route reject
.
Устанавливает блокирующий маршрут, который принудительно приведёт к неудаче поиск маршрута. Это используется для маскировки сетей перед использованием маршрута по умолчанию. Это не предназначено для обеспечения функциональности файервола.
ip route add prohibit
route window [n]
.
Установить TCP для соединений по этому маршруту до значения [n] байт. Это, как правило, используется только на сетях AX.25 и с драйверами, которые не могут справиться с фреймами back-to-back.
ip route window [W]

Ниже несколько примеров синтаксиса команды ip route .

# ip route add 10.23.30.0/24 via 192.168.8.50 # ip route del 10.28.0.0/16 via 192.168.10.50 dev eth0 # ip route chg default via 192.168.25.110 dev eth1 # ip route get (показывает интерфейс и шлюз, которые использовались бы для достижения удалённого хоста. Эта команда будет особенно полезной при решении проблем с роутингом на хостах с большими таблицами роутинга и/или с множеством сетевых интерфейсов).

Сеть является неотъемлемой частью 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» завершена, но если я не упомянул о более хороших команд на Ваш взгляд, то пишите в комментарии и я дополню эту статью. Если есть вопросы и предложения, пишите все в комментарии. Спасибо.

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

Я все-таки предполагаю, что вы имеете представление об основных сетевых понятиях. Например, о таких вещах как: IP-адреса , MAC-адреса , DNS , DHCP и т.п.

Шаг 1. Анализ сетевых подключений

Основная команда Linux систем для анализа сети - это ifconfig . Она очень похожа на аналогичную по смыслу команду Windows - ipconfig . Давайте на нее взглянем.

Ifconfig

Как вы видите на этом скриншоте, ifconfig выдает пользователю весьма большой объем информации. В первой строке в левой части мы видим «eth0 ». Это первое проводное соединение ethernet 0 Linux все считается начиная с нуля).

Сразу за «eth0 » справа мы видим тот тип соединения, который используется (Ethernet ) и адрес сетевой карты (производители в любое сетевое оборудование «вшивают» его глобальный уникальный адрес, в данном случае это NIC - сетевой адаптер).

Вторая строка - IP-адрес , в данном случае это 192.168.1.114, так называемый broadcast address (широковещательный адрес). По этому адресу можно разослать информацию по всем IP адресам этой подсети. И наконец, network mask (маска подсети) - это информация о том, какая часть IP-адреса узла (хоста) относится к адресу сети, а какая - к самому адресу узла (хоста) в этой сети. Там есть еще много другой информации, но она уже не относится к теме основ Linux .

Если взглянуть на скриншот ниже, то мы увидим вторую колонку (слева). Она начинается с «lo ».

Это не что иное, как loopback address (обратный адрес) или localhost . То есть адрес той машины, за которой вы сейчас сидите. Он применяется обычно в случаях, когда нужно протестировать, скажем, сайт, который вы разрабатываете. Обычно этот IP-адрес выглядит как 127.0.0.1.

Шаг 2. Смена IP-адреса

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

Чтобы сменить IP-адрес нужно использовать команду ifconfig , указать ей сетевой интерфейс и тот IP-адрес , который мы хотим. Делается это так:

Ifconfig eth0 192.168.1.115

И теперь если мы введем в терминал ifconfig , то увидим, что IP-адрес изменился на тот, который мы назначили.

Точно таким же образом, если необходимо, мы можем изменить маску подсети (netmask ) и широковещательный адрес (broadcast address ):

Ifconfig eth0 192.168.1.115 netmask 255.255.255.0 broadcast 192.168.1.255

Шаг 3. DHCP (Сервер конфигурации динамических хостов)

У Linux есть DHCP-сервер - это демон, т.е. программа, которая работает в фоновом режиме и называется dhcpd . Это тот DHCP-сервер , который присваивает IP-адреса всем машинам в своей подсети. Еще он ведет логи (журналы) - какой IP-адрес был у какой машины и в какое время. Именно по этим логам отслеживают хакеров после совершения атак.

Если я хочу, чтобы DHCP-сервер присвоил мне новый адрес, то я просто вызывают его командой dhclient разных дистрибутивов Linux разные DHCP-клиенты , но BackTrack основан на Ubuntu , который использует именно dhclient ):

Dhclient

Как видите, команда dhclient посылает DHCPDISCOVER запрос от сетевого адаптера. На свой запрос dhclient получает предложение (DHCPOFFER ) - новый адрес: 192.168.1.114 от DHCP-сервера , а потом DHCP-сервер подтверждает назначение нового IP-адреса .

И если сейчас мы вызовем ifconfig , то увидим, что DHCP-сервер присвоил нам новый IP-адрес .

Шаг 4. DNS - служба доменных имен

DNS (Domain Name Service) или служба доменных имен - это сервис, позволяющий нам использовать доменные имена вроде www.google.com, которые он переводит в нужный IP-адрес . Без этой службы нам пришлось бы запоминать тысячи IP-адресов наших любимых сайтов.

Одна из самых полезных команд для хакинга - dig , которая является эквивалентом nslookup в Windows , но предлагает значительно больше информации о доменах. Например, если мы применим dig к доменному wonderhowto.com и добавим опцию ns , то dig покажет нам имя сервера wonderhowto.com

Dig wonderhowto.com ns

если мы воспользуемся опцией mx , то получим все почтовые сервера WonderHowTo :

Dig wonderhowto.com mx

Наиболее распространенным DNS-сервером Linux является Berkeley Internet Name Domain или BIND . В некоторых случаях пользователи Linux часто называют DNS как BIND , поэтому не смущайтесь. DNS или BIND просто сопоставляет отдельные имена доменов с их реальными IP-адресами .

В BackTrack мы можем указать в качестве DNS-сервера как локальный DNS-сервер , так и публичный. Чтобы это сделать нужно подредактировать файл /etc/resolv.conf . Давайте откроем его при помощи KWrite :

Kwrite /etc/resolv.conf

Как видите, в качестве провайдера DNS услуг у нас указаны публичные DNS-сервера . Если мы хотим их изменить или добавить другой сервер, нам нужно просто вставить его на новую строку и сохранить файл. И в следующий раз, когда нашей операционной системе потребуется DNS службы, она будет искать соответствующие DNS-серверы в этом файле.

Просто, правда?

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

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

Современный компьютер предоставляет пользователю много возможностей, без доброй половины которых он мог бы запросто обойтись. В сети по сей день идут дебаты о том, нужны ли ему 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 действительно создан для сети. И оценить это могут не только опытные пользователи, но и новички.



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows