По мотивам статьи на Habrahabr.

Небольшая заметка в качестве напоминания, что бы перестать использовать ifconfig и часть утилит, входящих в пакет net-tools.

Вообще пакет net-tools содержит и другие важные утилиты:

/bin/netstat
/sbin/ifconfig
/sbin/ipmaddr
/sbin/iptunnel
/sbin/mii-tool
/sbin/nameif
/sbin/plipconfig
/sbin/rarp
/sbin/route
/sbin/slattach
/usr/sbin/arp

Ну и самым популярным из них для меня долгое время являлся ifconfig. Однако, прогресс не стоит на месте и появилась новая утилита ip. Синтаксис ее достаточно прост и понятен, присутствуют сокращения. Почему он лучше чем старый ifconfig? Есть много разных причин, и одни из них:

  • Показ адресов тунельных (tap*, tun*) интерфейсов;
  • В одной утилите находится функционал ifconfig, route;
  • В свежей centos7-minimal ifconfig по умолчанию отсутствует.

Эти причин достаточно, что бы захотеть научится новым штукам. Итак, приступим:

  1. Самое простое - показать IP адреса на интерфейсах:
ip a # показать все адреса на всех интерфейсах
ip -4 a # показать интерфейсы только с IPv4 адресами
ip -6 a # показать интерфейсы только с IPv6 адресами
  1. Назначить/удалить c интерфейса IP адрес
ip a [add/del] {ip_addr/mask} dev {interface} # пример:
ip a add 10.0.0.1/24 dev eth0 # добавить адрес на интерфейс eth0
ip a del 10.0.0.1/24 dev eth0 # удалить адрес с интерфеса eth0
  1. Настройка маршрутизации
ip r # показать таблицу маршрутизации
ip r add {network/mask} via {gatewayip} # элементарно, как и обычное выполнение route

На этом все.

Дополнительные ссылки

  1. Настройка сети в Linux
  2. Wikipedia - IP (утилита)
  3. Настройка сети в Debian