キャリアがないにもかかわらず、ethtool / nmcli / iproute2を使用してインターフェイスを強制的に起動しますか?

キャリアがないにもかかわらず、ethtool / nmcli / iproute2を使用してインターフェイスを強制的に起動しますか?

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

nmcliLinuxがなぜそう報告するのかわかりません。connected

ドライバも見ましたが、i40eカーネルAPIへの呼び出しがないようです。netif_carrier_on()内部i40e_ethtool.cセクションに。そしてそれを実装する方法がないようです。ネットワークツール少なくとも標準化されたパラメータではなく、このようなことを強制します。ethtoolこれは実際にプライベートをパブリックフラグに設定することで許可されます--set-priv-flags。ただし、Intelドライバにはこの状況を処理するためのフラグはありません。したがって、誰かが私を驚かせない限り、この段階でドライバを修正する必要があるかもしれません。

最終目標:問題の機械に接続せずに光ファイバを見てみると、tcpdump両端に応答がないと予想されます。ICMP requestTX

ハードウェア:標準マルチモードファイバーLCコネクタ付き2ポートIntel X710(TX接続が切断されました)

関連情報