Armadilloフォーラム

IPアドレスの設定について

manamana

2022年3月7日 19時03分

ETH0に固定アドレスを192.168.223.100に設定した後、nmcliコマンドにて192.168.223.90に変更しましたが、192.168.223.100に接続できてしまうのは
なぜでしょうか?
ただし、armadilloを再起動すると192.168.223.100には接続されないようになります。

以下、実行したコマンドです
/usr/bin/nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.223.90/24
/usr/bin/nmcli connection down "Wired connection 1"
/usr/bin/nmcli connection up "Wired connection 1"

コメント

at_syunya.ohshio

2022年3月8日 15時26分

大塩です。

> ETH0に固定アドレスを192.168.223.100に設定した後、nmcliコマンドにて192.168.223.90に変更しましたが、192.168.223.100に接続できてしまうのは
> なぜでしょうか?
> ただし、armadilloを再起動すると192.168.223.100には接続されないようになります。
>
> 以下、実行したコマンドです
> /usr/bin/nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.223.90/24
> /usr/bin/nmcli connection down "Wired connection 1"
> /usr/bin/nmcli connection up "Wired connection 1"

状況の確認なのですが
実施していただいている上記コマンドの前後で ifconfig を実施したところ、
設定されているIPアドレスの値が変わらなかった。という認識でよろしいでしょうか。

アットマークテクノの古賀です。

以下の件、nmcli の振る舞いが要因かも知れません。

manamanaさん:
>ETH0に固定アドレスを192.168.223.100に設定した後、nmcliコマンドにて192.168.223.90に変更しましたが、192.168.223.100に接続できてしまうのは
>なぜでしょうか?
>ただし、armadilloを再起動すると192.168.223.100には接続されないようになります。
>
>以下、実行したコマンドです
>/usr/bin/nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.223.90/24
>/usr/bin/nmcli connection down "Wired connection 1"
>/usr/bin/nmcli connection up "Wired connection 1"

実機では確認していないのですが、ATDE on VMware の nmcli で、同様な症状が起きることを確認しました。
他ホストから、変更前の IP アドレスと変更後の IP アドレスの両方に ping が通る場合があり、挙動を確かめるため、当該ホストの ARP テーブルから変更前の IP アドレスのエントリを削除したのち、ping を実行した時のパケットをキャプチャしたところ、変更前の IP アドレスに対応する ARP リクエストに対して、送信元 MAC アドレスが VMware の応答が返ることを確認しました。

一方、いま手元に実機がある Armadillo-IoT A6 では、nmcli を使わず、/etc/network/interfaces ファイルのj編集と ifdown & ifup により設定内容を反映する仕様ですが、そちらでは、同様の症状を確認できていません。

検索してみたところ、同じようなことを報告している人がいるのを見つけました:
 https://unix.stackexchange.com/questions/329945/remove-secondary-ip-wit…

'ip a' を実行すると、当該コネクション('Wired connection 1')が紐づいているネットワークインタフェースに、変更前の IP アドレスがセカンダリアドレスとして設定された状態になっている、と書いています。僕の ATDE on VMware で試したところ、同様でしたので、上記質問に対する以下の回答と同じように、

$ sudo ip addr del <変更前の IP アドレス> dev <ネットワークインタフェース名>

を実行したところ、変更前の IP アドレスに対する ping の応答がなくなりました。
 https://unix.stackexchange.com/a/351107

お手元の Armadillo-IoT G3L でも試してみて下さいませ。

教えていただきました以下のコマンドにて変更前のアドレスを削除することができました。
ありがとうございました。

sudo ip addr del <変更前の IP アドレス> dev <ネットワークインタフェース名>

申し訳ありません
ip addr del 192.168.223.100 dev eth0でアドレス削除後も、しばらくすると192.168.223.100のアドレスが復活しておりました。
armadilloを再起動しても同様に起動直後は削除した192.168.223.100は存在しないのですが、
しばらくすると復活します。

ip addr show でみますとデバイスがusb1となっています。
削除したのはeth0ですが、削除後にusb1に出現する理由が不明です。
usb1の192.168.223.100に対してもping やtelnetで接続できます。

アットマークテクノの古賀です。

manamanaさん:
>申し訳ありません
>ip addr del 192.168.223.100 dev eth0でアドレス削除後も、しばらくすると192.168.223.100のアドレスが復活しておりました。
>armadilloを再起動しても同様に起動直後は削除した192.168.223.100は存在しないのですが、
>しばらくすると復活します。
>
>ip addr show でみますとデバイスがusb1となっています。
>削除したのはeth0ですが、削除後にusb1に出現する理由が不明です。
>usb1の192.168.223.100に対してもping やtelnetで接続できます。

不思議ですね。確認ですが、ip addr show した時に、eth0 と usb1 が見え、eth0 には nmcli modify で変更した後の IP アドレス(削除しなかった方の IP アドレス)が割当たり、usb1 には 192.168.223.100 が割当たっている、という状況でしょうか?あるいは、二つの IP アドレスが、どちらも usb1 に割当たっているのでしょうか?

usb1 に 192.168.223.100 が割当たっている状態になった時に、さしつかえなければ、以下のコマンドの出力を採取して教えて頂けますか:

$ nmcli connection show
$ ip addr show

知りたいのは、usb1 に紐づいている NetworkManager の connection が存在するのかどうかと、usb1 の MAC アドレスがどうなっているか(eth0 と同じなのか、あるいは、別の値なのか)です。