HTBに変更後qdiscをリセット

HTBに変更後qdiscをリセット

背景

eno12つのインターフェースでUbuntuを実行するシステムがあり、enp4s0次のコマンドを使用してOVSブリッジを作成しました。

ovs-vsctl add br s1

次のコマンドを使用して、ブリッジeno1に2つの物理インターフェイスを追加しました。enp4s0

ovs-vsctl add-port s1 eno1

ovs-vsctl add-port s1 enp4s0

以下を使用してポートが追加されたことを確認しました。

ovs-ofctl show s1

両方のインターフェイスに接続されているキュールールを確認するには、次を使用します。

ip link

インターフェイスに添付されたキュールールは次のとおりです。

eno1: fq_codel

enp4s0: mq

私はそれらに接続されたqdiscを変更したかったですhtb。だから私は次のように両方のインターフェイスで変更しました。

tc qdisc add dev eno1 root handle 1: htb default 12

tc qdisc add dev enp4s0 root handle 1: htb default 12

質問

両方のインタフェースに対してqdiscを変更するコマンドを実行した後、を使用してhtb実際に変更されたことを確認しましたip link。最初はみんなhtb私が好きなように報告しました。ただし、一定時間が経過すると自動的にデフォルトのqdisc(fq_codelおよびqdisc mq)に変わります。

htb私は彼らのqdiscを何度も変更し、変更されたことをip link確認するためにチェックを発行しました。毎回短時間後にデフォルトのqdiscに変わります。

質問

eno1。とのqdiscをどのように永久にenp4s0変更しますかhtb?短時間でデフォルトのqdiscにリセットされるのはなぜですか?

ベストアンサー1

これで問題を解決したので、質問に答えます。

これは、NetworkManager(または他のプロセス)がインターフェイスを制御できるために発生します。定期的にインターフェイス設定をリセットします。この問題を解決するには:

managedNetworkManagerがどのインターフェイスを使用しているかを確認してください。

nmcli dev status

上記のコマンドの出力にテストインターフェイスがリストされている場合、managedNetworkManagerによって制御されます。それ以外の場合はリストされますunmanaged。リストされている場合、managed2つのオプションがあります。

  • オプションA:NetworkManager設定ファイルを編集し、managedNetworkManagerから除外するインターフェイスを追加します。

sudo nano /etc/NetworkManager/NetworkManager.confconfファイルに次の行を追加します。

[keyfile]
unmanaged-devices=mac:00:11:22:33:44:55;mac:66:77:88:99:00:aa

macアドレスをテストインターフェイスのmacアドレスに置き換えます。最新バージョンのNetworkManagerでは、インターフェイス名を使用してこれを実行できます。

[keyfile]
unmanaged-devices=interface-name:eno1,interface-name:enp4s0

ネットワーク管理者を再起動します。

systemctl stop NetworkManager
systemctl start NetworkManager

次に、インターフェイスが管理されていないことを確認します。

nmcli dev status

  • オプションB:ネットワーク管理者を停止します。

現在のセッションを停止します(次回の起動時に再開します)。

systemctl stop NetworkManager

またはNetworkManagerを無効にします(次回の起動時にデフォルトでは再起動されません)。

systemctl disable NetworkManager


NetworkManagerで管理対象としてリストされていない場合は、dhclientでリースできます。確認すべき事項:

sudo cat /var/lib/dhcp/dhcpd.leases

dhclient がインターフェイスをリースする場合、出力にリストされます。その場合は、dhclientのPIDを見つけて終了するか、dhclientの設定ファイルを編集してテストインターフェイスを除外します。

おすすめ記事