Сетевые команды Linux

Управление сетью — критически важный навык для администрирования Linux. Эта шпаргалка содержит все основные команды для настройки, диагностики и мониторинга сетевых соединений.

КОМАНДЫ НАСТРОЙКИ СЕТЕВЫХ ИНТЕРФЕЙСОВ

Команда ip (современная замена ifconfig):

Команда Описание Пример
ip addr show Показать все интерфейсы ip a
ip addr add IP/маска dev интерфейс Добавить IP адрес ip addr add 192.168.1.10/24 dev eth0
ip addr del IP/маска dev интерфейс Удалить IP адрес ip addr del 192.168.1.10/24 dev eth0
ip link show Показать состояние интерфейсов ip link
ip link set интерфейс up Включить интерфейс ip link set eth0 up
ip link set интерфейс down Выключить интерфейс ip link set eth0 down
ip route show Показать таблицу маршрутизации ip route
ip route add сеть via шлюз Добавить маршрут ip route add 10.0.0.0/8 via 192.168.1.1
ip route del сеть Удалить маршрут ip route del 10.0.0.0/8
ip neigh show Показать ARP таблицу ip neigh

Устаревшие, но еще используемые (ifconfig, route):

Команда Описание
ifconfig Показать настройки интерфейсов
ifconfig интерфейс IP

Назначить IP адрес

ifconfig eth0 192.168.1.10

ifconfig интерфейс up/down Включить/выключить интерфейс
route -n Показать таблицу маршрутизации
route add -net сеть шлюз Добавить маршрут
route del -net сеть Удалить маршрут

ДИАГНОСТИКА СЕТИ

Ping и трассировка:

Команда Описание Опции
ping хост Проверить доступность -c N (число пакетов), -i N (интервал)
ping6 хост Ping для IPv6  
traceroute хост Трассировка маршрута -n (без DNS), -I (использовать ICMP)
tracepath хост Альтернатива traceroute -n (без DNS)
mtr хост Комбинация ping+traceroute -r (отчет), -c N (число циклов)

Примеры диагностики:

ping -c 4 google.com # 4 пакета ping
ping -i 0.5 8.8.8.8 # Ping каждые 0.5 секунд
traceroute -n youtube.com # Трассировка без DNS
mtr —report google.com # Расширенная диагностика

РАБОТА С ПОРТАМИ И СОЕДИНЕНИЯМИ

Команда ss (замена netstat):

Команда Описание Эквивалент netstat
ss -tulpn Все слушающие порты netstat -tulpn
ss -tun Все TCP/UDP соединения netstat -tun
ss -s Статистика сокетов netstat -s
ss -lt Только слушающие TCP порты netstat -lt
ss -lu Только слушающие UDP порты netstat -lu
ss -at Все TCP соединения netstat -at
ss dst IP:порт Соединения к адресу  
ss src IP:порт Соединения от адреса  

Команда netstat (устаревшая, но еще используется):

Команда Описание
netstat -tulpn Все слушающие порты с процессами
netstat -rn Таблица маршрутизации
netstat -i Статистика интерфейсов
netstat -s Статистика по протоколам

Другие утилиты для портов:

Команда Описание Пример
lsof -i :порт Какие процессы используют порт lsof -i :80
nmap localhost Сканирование портов nmap -p 1-1000 хост
nc -zv хост порт Проверка порта nc -zv example.com 443
telnet хост порт Проверка TCP подключения telnet mail.ru 25
 

DNS И СЕТЕВЫЕ УТИЛИТЫ

DNS запросы:

Команда Описание Пример
dig домен Детальная DNS информация dig google.com
dig домен @сервер Запрос к конкретному DNS dig google.com @8.8.8.8
dig -x IP Обратный DNS запрос (PTR) dig -x 8.8.8.8
host домен Простой DNS запрос host yandex.ru
nslookup домен Интерактивный DNS запрос nslookup github.com
whois домен Информация о домене whois example.com

Скачивание и передача данных:

Команда Описание Опции
curl URL Получить содержимое URL -I (заголовки), -o файл (сохранить)
wget URL Скачать файл -c (продолжить), -r (рекурсивно)
scp файл user@хост:путь Копирование по SSH -r (рекурсивно), -P порт
rsync -avz исходный целевой Синхронизация файлов -e ssh (через SSH), --delete
ssh user@хост Подключение по SSH -p порт, -i ключ

Примеры curl:

curl -I https://google.com # Только заголовки ответа
curl -o file.txt http://example.com # Сохранить в файл
curl -u user:pass http://site.com # Аутентификация
curl -X POST -d ‘data’ http://api.example.com # POST запрос

МЕЖСЕТЕВЫЕ ЭКРАНЫ (FIREWALL)

iptables (традиционный):

Команда Описание Пример
iptables -L Показать правила iptables -L -n -v
iptables -A INPUT -p tcp --dport 80 -j ACCEPT Разрешить порт 80  
iptables -A INPUT -s IP -j DROP Блокировать IP  
iptables -F Очистить все правила  
iptables-save > файл Сохранить правила  
iptables-restore < файл Загрузить правила  

nftables (современная замена iptables):

Команда Описание
nft list ruleset Показать все правила
nft add table inet filter Создать таблицу
nft add chain inet filter input { type filter hook input priority 0; } Цепочка
nft add rule inet filter input tcp dport 22 accept Правило

firewalld (Red Hat/CentOS):

Команда Описание
firewall-cmd --state Статус firewalld
firewall-cmd --list-all Все правила
firewall-cmd --add-port=80/tcp --permanent Открыть порт
firewall-cmd --reload Применить изменения
firewall-cmd --zone=public --add-service=http Разрешить службу

ufw (Ubuntu/Debian):

Команда Описание
ufw status Статус
ufw enable Включить
ufw disable Выключить
ufw allow 22/tcp Разрешить порт
ufw deny from IP Заблокировать IP

СЕТЕВОЙ МОНИТОРИНГ И АНАЛИЗ

Просмотр трафика:

Команда Описание
tcpdump -i интерфейс Перехват пакетов
tcpdump port 80 Только порт 80
tcpdump host IP Только хост
tcpdump -w файл.pcap Сохранить в файл
tshark -i интерфейс Wireshark в терминале
iftop -i интерфейс Показать трафик в реальном времени
nethogs Потребление трафика по процессам
bmon Мониторинг пропускной способности
vnstat -i интерфейс Статистика трафика

Информация о сети:

Команда Описание
ethtool интерфейс Информация о сетевой карте
iwconfig Беспроводные интерфейсы (Wi-Fi)
iw dev интерфейс scan Сканирование Wi-Fi сетей
nmcli device show NetworkManager информация
brctl show Мосты (bridge)
bonding status Агрегация каналов

НАСТРОЙКА СЕТИ В ФАЙЛАХ

Debian/Ubuntu (/etc/network/interfaces):

auto eth0
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

RHEL/CentOS (/etc/sysconfig/network-scripts/ifcfg-eth0):

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.10
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

Системный резолвер (/etc/resolv.conf):

nameserver 8.8.8.8
nameserver 8.8.4.4
search example.com

БЫСТРАЯ ДИАГНОСТИКА ПРОБЛЕМ С СЕТЬЮ

# 1. Проверить физическое подключение
ip link show eth0 # Статус интерфейса
ethtool eth0 # Статус сетевой карты

# 2. Проверить IP настройки
ip addr show # IP адреса
ip route show # Маршрутизация

# 3. Проверить связность
ping -c 2 127.0.0.1 # Локальный интерфейс
ping -c 2 192.168.1.1 # Шлюз
ping -c 2 8.8.8.8 # Внешний IP
ping -c 2 google.com # DNS разрешение

# 4. Проверить порты
ss -tulpn | grep :80 # Слушает ли порт 80
nc -zv localhost 22 # Проверка SSH порта

# 5. Проверить DNS
dig google.com # DNS запрос
cat /etc/resolv.conf # Настройки резолвера

# 6. Проверить firewall
iptables -L -n # Правила iptables
ufw status # Статус ufw (Ubuntu)

# 7. Мониторинг трафика
tcpdump -i eth0 -c 10 # 10 пакетов с интерфейса
iftop -i eth0 # Трафик в реальном времени

 

Дата последнего обновления: 12/05/2025.