ipコマンドを使用してネットワークマスクを変更する方法

ipコマンドを使用してネットワークマスクを変更する方法

Linux ipコマンドを使ってネットマスクを変更してみましたが、混乱しています。 Google検索でもこの内容は不明です。説明していただける方はいらっしゃいますか?インターフェースがあるとしましょう。enp0s31f6私のLinuxコンピュータで

rtuser@rtuser:~$ ip addr show dev enp0s31f6
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:c7:37:a2 brd ff:ff:ff:ff:ff:ff

インターフェイスにIPアドレスを割り当てたいです。

rtuser@rtuser:~$ sudo ip addr add 192.168.20.1/24 dev enp0s31f6
rtuser@rtuser:~$ ip addr show dev enp0s31f6
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:c7:37:a2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.1/24 scope global enp0s31f6
       valid_lft forever preferred_lft forever

今私のネットマスクが正しくないことに気づき、変更したいと思います。

rtuser@rtuser:~$ sudo ip addr change 192.168.20.1/25 dev enp0s31f6
rtuser@rtuser:~$ ip addr show dev enp0s31f6
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:c7:37:a2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.1/24 scope global enp0s31f6
       valid_lft forever preferred_lft forever
    inet 192.168.20.1/25 scope global enp0s31f6
       valid_lft forever preferred_lft forever

インターフェイスに同じIPアドレスが複数あります。わかりました。変更が適用されない場合があります。交換してみましょう。

rtuser@rtuser:~$ sudo ip addr replace 192.168.20.1/26 dev enp0s31f6
rtuser@rtuser:~$ ip addr show dev enp0s31f6
2: enp0s31f6: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:fa:9b:c7:37:a2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.1/24 scope global enp0s31f6
       valid_lft forever preferred_lft forever
    inet 192.168.20.1/25 scope global enp0s31f6
       valid_lft forever preferred_lft forever
    inet 192.168.20.1/26 scope global enp0s31f6
       valid_lft forever preferred_lft forever

私はIPアドレスの属性を変更するためにIP変更/交換コマンドを期待しましたが、追加/変更/交換の両方が同じIPを引き続き追加するようです。なぜそんなことですか?

答え1

元の無効なアイテムを削除するには、delオプションを使用してください。

ip address del 192.168.20.1/24 dev enp0s31f6

次に、変更されたIP / CIDRを追加します。

ip address add 192.168.20.1/25 dev enp0s31f6

関連情報