![ifconfig dev 0.0.0.0 と同等](https://rvso.com/image/760646/ifconfig%20dev%200.0.0.0%20%E3%81%A8%E5%90%8C%E7%AD%89.png)
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