linux-labs

Вики / Сеть

ip (адреса и маршруты)

Команда Ubuntu 24.04 · iproute2 Сеть

Управление интерфейсами, адресами и маршрутами (iproute2) — замена ifconfig/route.

ip (пакет iproute2) — современный инструмент для интерфейсов, адресов и маршрутов. Заменяет устаревшие ifconfig, route, arp.

Подкоманды можно сокращать: ip a = ip address, ip r = ip route, ip l = ip link. Полезный модификатор -br (brief) — компактный вывод, -c — цвет, -s — статистика.

Объект О чём Частое
ip address (a) IP-адреса на интерфейсах ip -br a
ip link (l) сами интерфейсы (up/down, MTU, MAC) ip -br l
ip route (r) таблица маршрутов ip r
ip neigh (n) ARP/соседи (IP↔MAC) ip n
ip -s link счётчики пакетов/ошибок по интерфейсу
ip addr ...get какой маршрут выберется ip route get IP
ip -br a                          # адреса кратко (имя · состояние · адрес)
ip -c a                           # с подсветкой
ip a show eth0                    # один интерфейс
ip -br l                          # список интерфейсов и состояние линка
ip -s link show eth0              # счётчики RX/TX, ошибки, дропы
ip r                              # таблица маршрутов
ip route get 8.8.8.8              # каким маршрутом/интерфейсом пойдёт пакет
ip neigh                          # ARP-таблица (соседи)

# изменения (ВРЕМЕННЫЕ, до ребута):
sudo ip link set eth0 up          # поднять интерфейс
sudo ip link set eth0 mtu 1400    # сменить MTU
sudo ip a add 192.168.1.10/24 dev eth0    # добавить адрес
sudo ip a del 192.168.1.10/24 dev eth0    # снять адрес
sudo ip r add default via 192.168.1.1     # шлюз по умолчанию
sudo ip r add 10.10.0.0/16 via 192.168.1.254   # статический маршрут
sudo ip neigh flush all           # очистить ARP-кэш

Изменения ip ... временные (до перезагрузки). Постоянная конфигурация в Ubuntu Server — через netplan (/etc/netplan/*.yaml, sudo netplan apply).

ip -br a                          # есть ли вообще адрес
ip -br l                          # линк up? (NO-CARRIER = кабель/порт)
ip route get 8.8.8.8              # есть ли маршрут наружу и через что
ping -c3 192.168.1.1              # доступен ли шлюз
getent hosts example.com          # работает ли DNS (см. dns-resolv)
ss -tlnp                          # какие порты слушаются локально

Естественная лесенка: адрес → линк → маршрут/шлюз → внешний IP → DNS → порт (см. network-diagnostics).

Нет адреса (ip -br a пусто/down)

Интерфейс down (sudo ip link set <if> up) или не отработал DHCP/netplan (sudo netplan apply, journalctl -u systemd-networkd).

NO-CARRIER в ip -br l

Нет физического линка: кабель/порт/коммутатор. Проверь железо через ethtool.

Есть адрес, но «Network is unreachable»

Нет маршрута по умолчанию: ip r без строки default → добавь шлюз (в netplan).

Два интерфейса, трафик идёт «не туда»

ip route get <IP> покажет реальный выбор. Управляется метриками маршрутов и порядком; правится в netplan (metric:) или policy-routing.

Пингуется IP, но не имена

Это уже DNS, а не ip: resolvectl status, getent hosts имя (см. dns-resolv).

ip -br a ; ip -br l               # адреса / интерфейсы кратко
ip r ; ip route get 8.8.8.8       # маршруты / путь пакета
ip -s link show eth0              # счётчики и ошибки
ip neigh                          # ARP
sudo ip a add IP/CIDR dev eth0    # временно добавить адрес
# постоянно: /etc/netplan/*.yaml + sudo netplan apply

См. также