эквивалент для ifconfig dev 0.0.0.0

эквивалент для ifconfig dev 0.0.0.0

Когда мне нужно создать временный мост с интерфейсом на Linux, я бы использовал следующее:

brctl addbr br0
brctl addif br0 eth0
ifconfig eth0 0.0.0.0
ifconfig br0 192.168.10.100 netmask 255.255.255.0
ifconfig br0 up

Я обновил свой процесс, чтобы использоватьipкоманда, однако я не нашел эквивалента для удаления IP-стека (ifconfig eth0 0.0.0.0) с помощью ipкоманды

Я попробовал следующее:

ip addr add 0.0.0.0 dev eth0
ip addr add 0.0.0.0/24 dev eth0

ipно удалить существующее на этом устройстве не получится .

кто-нибудь случайно не знает, возможно ли это с помощью ipкоманды

решение1

В Linux старая ifconfigкоманда и ее старый API ядра Linux ограниченыодинАдрес IPv4 на интерфейс (и поэтому псевдонимы интерфейсов, которые на самом деле являются дополнительными адресами, а не интерфейсами, используются для обхода этого ограничения). Это объясняет, почему следует удалитьtheАдрес IPv4, метод заключался в том, чтобынаборэто (на самом деле не добавить) 0.0.0.0.

Сiproute2инструменты, если вы хотите удалитьлюбойадрес из интерфейса (всегда хорошая идея для порта моста), не заботясь о том, какие там адреса, вы можете использовать ip address flush, которая является командой массового удаления:

ip address flush- сброс адресов протокола

Эта команда очищает адреса протоколов, выбранные по некоторым критериям.

[...]

Предупреждение: Эта команда и другие команды очистки не прощают ошибок. Они безжалостно очистят все адреса.

[...]

Итак, в конце концов вы можете использовать:

ip address flush dev eth0

(можно добавить -4, чтобы ограничить эффект IPv4).


Есть и другие применения. Например, эта команда:

  ip address flush to 10.1.0.0/16

удалит из любого интерфейса любой адрес, соответствующий блоку 10.1.0.0/16какова бы ни была его сетевая маска.

# ip -s -s address flush to 10.1.0.0/16
2: lxcbr0    inet 10.1.3.1/24 brd 10.1.3.255 scope global lxcbr0
       valid_lft forever preferred_lft forever
158: eth0    inet 10.1.1.1/8 scope global eth0
       valid_lft forever preferred_lft forever

*** Round 1, deleting 2 addresses ***
*** Flush is complete after 1 round ***

решение2

Ты не можешьудалитьIP-адрес с помощью addкоманды!

Если вы хотите удалить IP-адрес из интерфейса, вам delнужно это сделать.

ip addr del 203.0.113.187 dev eth0

Связанный контент