Ubuntu netplan で NIC offloading を無効にする設定の書き方

色々悪さをする場合のある NIC offloading をUbuntu netplan 環境で無効にする設定の書き方。


例えば TSO (TCP Segmentation Offload), GSO (Generic Segmentation Offload), GRO (Generic Receive Offload) を無効にする場合、テンポラリには ethtool で以下のようにやるかと思います。

$ sudo ethtool -K ens19 tso off gso off gro off


これを恒常的に(再起動時に効かせる)するには /etc/netplan/ 以下にある Netplan の設定ファイル、例えば /etc/netplan/50-cloud-init.yaml の ethernets 以下に次のように項目を追加し、それぞれ false にしてやります。

network:
    ethernets:
        ens19:
            tcp-segmentation-offload: false
            tcp6-segmentation-offload: false
            generic-segmentation-offload: false
            generic-receive-offload: false

設定の反映は以下コマンドを使うか再起動にて。

$ sudo netplan apply


その他の offloading 項目については以下の Netplan ドキュメントを参照してください。 (offload でページ内検索すると設定可能な項目が見つかります)
netplan.readthedocs.io


ubuntu netplan nic offload off でググっても適当なページが見つけられなかったのでメモ。

参考

NIC offloading の解説
ac-as.net