web-dev-qa-db-ja.com

ネットワークインターフェイスを上下に設定するとはどういう意味ですか?

ワイヤレスインターフェイスwlan0があるとします。 ip link set wlan0 up/downは実際には何をしますか? NICの電源を入れ、電源を切りますか?多くのネットワーク構成ガイドは、オンラインで「インターフェースを立ち上げる」とさりげなく説明していますが、それは実際にはどういう意味ですか?

7
JoshuaRLi

インターフェイスをアップ/ダウンするときは、インターフェイスの状態がアップまたはダウンであることをドライバーにフラグを設定するだけです。 NICはまだ電源が入っており、WOL(Wake on LAN)などに参加できます。

インターフェースの出力を見ると、状態フラグがここに表示されています。

$ ip a l eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:72:14:26 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.101/24 brd 192.168.56.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe72:1426/64 scope link
       valid_lft forever preferred_lft forever

状態UP

ipにダウン状態にするように指示した場合:

$ ip l set eth1 down

$ ip a l eth1
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 08:00:27:72:14:26 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.101/24 brd 192.168.56.255 scope global eth1
       valid_lft forever preferred_lft forever

しかし、電源がオフになっていないことをどうやって確認できますか?

シンプル。 ethtoolを使用して、NICにさらに問い合わせます。

$ ethtool eth1
Settings for eth1:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: Unknown (auto)
    Supports Wake-on: umbg
    Wake-on: d
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: no

この出力の重要な部分はLink detected: noです。 DOWN状態だからです。それを元に戻すと:

$ ethtool eth1 | grep Link
    Link detected: yes

この場合、Link detected: yesは、NICが稼働中で、それに接続されているイーサネットケーブルを検出できることを意味します。

上記で使用したコマンド

コマンドの省略表記を使用していることに注意してください。

  • a == addr
  • l == list

さらにあります... ipコマンドは、使用しているコマンドまたはサブコマンドを特定し、それを推測できる「十分にスマート」です。

参考文献

8
slm