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コマンドとその古いLinuxカーネルAPIは、1つインターフェースごとにIPv4アドレス(そのため、インターフェースエイリアスは実際にはインターフェースではなく追加のアドレスであり、この制限を回避するために使用されます)。これが、削除する理由です。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

関連情報