LinuxやUnixでキャリアなしでインタフェースを強制的に「up」状態にすることが可能かどうかを知りたいです。
# ip link
enp3s0f0: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
これは光ファイバインタフェースです。 TX接続は分離されていますが、RXは接続されており、データはインターフェイスに送信されています。
tcpdump
インタフェースについては何も報告されません。これは、カーネルがそのインターフェースに何も登録しないためだと思いますNO-CARRIER
。
ethtool
閉じると他のリンク検索機能のnmcli
両方を試してみました。AUTONEG
nmcli> print all
===============================================================================
Connection profile details (Fiber1)
===============================================================================
connection.type: 802-3-ethernet
connection.interface-name: enp3s0f0
connection.autoconnect: yes
connection.metered: unknown
connection.lldp: disable
connection.mdns: -1 (default)
connection.llmnr: -1 (default)
connection.wait-device-timeout: -1
-------------------------------------------------------------------------------
802-3-ethernet.port: --
802-3-ethernet.speed: 1000
802-3-ethernet.duplex: half
802-3-ethernet.auto-negotiate: no
802-3-ethernet.mtu: 1500
-------------------------------------------------------------------------------
ipv4.method: disabled
-------------------------------------------------------------------------------
ipv6.method: disabled
私が理解したように、これらの設定は必要なすべての自動検出機能の実行を無効にし、インターフェイスとそのパラメータの手動処理を渡す必要があります。
しかし、走った後も(そしてip link set dev enp3s0f0 up
):
[Torxed@machine torxed]# nmcli con up id Fiber1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)
インターフェイスは次のように報告します。
enp3s0f0: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
奇妙な遺物は次のとおりです。
# nmcli
...
enp3s0f0: connected to Fiber1
"Intel X710"
ethernet (i40e), 40:A6:B7:00:00:01, hw, port 40a6b72000001, mtu 1500
nmcli
Linuxがなぜそう報告するのかわかりません。connected
ドライバも見ましたが、i40e
カーネルAPIへの呼び出しがないようです。netif_carrier_on()内部i40e_ethtool.c
セクションに。そしてそれを実装する方法がないようです。ネットワークツール少なくとも標準化されたパラメータではなく、このようなことを強制します。ethtool
これは実際にプライベートをパブリックフラグに設定することで許可されます--set-priv-flags
。ただし、Intelドライバにはこの状況を処理するためのフラグはありません。したがって、誰かが私を驚かせない限り、この段階でドライバを修正する必要があるかもしれません。
最終目標:問題の機械に接続せずに光ファイバを見てみると、tcpdump
両端に応答がないと予想されます。ICMP request
TX
ハードウェア:標準マルチモードファイバーLCコネクタ付き2ポートIntel X710(TX接続が切断されました)。