На моем сервере я хочу присвоить несколько IP-адресов одному NIC, но не используя устаревшее ifconfig
или устаревшая нотация "псевдонима" (как eth0:0
) в /etc/network/interfaces
потому что в Искажении IP (на www.kernel.org) можно читать
Псевдонимы IP являются устаревшим способом управлять несколькими IP-АДРЕСАМИ/МАСКАМИ на интерфейс
При необходимости в дополнительном IP-адресе просто в настоящий момент, можно добавить его к любому интерфейсу на машине с
sudo ip address add <ip-address>/<netmask> dev <interface>
например,
sudo ip address add 172.16.100.17/24 dev eth0
добавил бы 172.16.100.17
использование сетевой маски на 24 бита к списку адресов, настроенных для Вашего eth0
.
Можно проверить результат с
ip address show eth0
и можно удалить этот адрес снова с
sudo ip address del 172.16.100.17/24 dev eth0
Конечно, эти изменения потеряны при перезагрузке машины.
Для создания дополнительных адресов постоянными, можно отредактировать файл /etc/network/interfaces
путем добавления как много строк файла конфигурации формы
iface eth0 static
address 172.16.100.17/24
так, чтобы это было похоже
iface eth0 inet dhcp
iface eth0 inet static
address 172.16.100.17/24
iface eth0 inet static
address 172.16.24.11/24
Можно даже сохранить dhcp
для основного адреса.
Активировать эти настройки без использования перезагрузки ifdown/ifup
как
sudo ifdown eth0 && sudo ifup eth0
Важно поместить те две команды в одну строку, если Вы - дистанционная работа в сервер, потому что первый отбросит Ваше соединение! Учитывая таким образом ssh-сессию выживет.
С новым инструментарием это столь же легко как со старым для добавления новых IP-адресов:
ip addr add 192.168.1.1/24 dev eth0
При взгляде с ip addr show
снова, Вы видите второй IP-адрес, присвоенный интерфейсу:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.0.100/24 brd 192.168.0.255 scope global eth0
inet 192.168.1.1/24 scope global eth0
inet6 fe80::223:54ff:fe45:f307/64 scope link
valid_lft forever preferred_lft forever
Удаляют тот IP-адрес с:
ip addr del 192.168.1.1/24 dev eth0
<час> iproute2 комплект:
iproute2 комплект является коммуникационным комплектом для межпроцессного взаимодействия beween ядро и пространство пользователя по netlink протоколу. Это должно заменить целые стандартные сетевые инструменты. Вот то, что они заменяют:
ifconfig
-> ip addr
и ip link
route
-> ip route
arp
-> ip neigh
iptunnel
-> ip tunnel
ipmaddr
-> ip maddr
netstat
-> ss
Один путь:
sudo ip addr add 192.168.0.2/24 dev eth1