外部サービス使ってると、大体ネットワークインタフェース設定されたインスタンスがやってくるからこういう状況あんまないよねっていう。
ネットワークインタフェースの設定変更
[rootlocalhost ~]# nmtui
リッチな設定が出力される。引数に値を与えて変更したい場合は、nmcli を使えばいいけど今回は利用しない。このネットワークインタフェースを編集するかはカーソルで選択できるので、nmtui 自体のお話は省略する。
ネットワークインタフェースの再起動
[rootlocalhost ~]# systemctl restart network
これで NetworkManager がまるごと再起動される。
デフォルトのネットワークにする
インタフェースの設定を変更できたが、なぜか network unreachable になる。デフォルトの通信するインタフェースになってないのが原因だったのだが、nmtui から設定できるかと思ったが見つからなかった。 結局古風奥ゆかしく、ifcfg-XX を編集する。今回は ifcfg-ens32 が対象。
[rootlocalhost ~]# vi/etc/sysconfig/network-scripts/ifcfg-ens32 - DEFROUTE=no + #DEFROUTE=no [rootlocalhost ~]# systemctl restart network
ルートの確認
DEFROUTE=no になってるインタフェースはデフォルトルートにならないので注意するほうがよい。デフォルトルートを設定していないと、以下のように ip route でデフォルトルートの設定が帰ってこない。
[rootlocalhost ~]# ip route 172.16.0.69 dev ens32 proto kernel scope link src 172.15.0.69 metric 100
デフォルトルートを設定した場合
default などが書かれる。
[rootlocalhost ~]# ip route default via 172.16.0.1 dev ens32 proto static metric 100 172.16.0.1 dev ens32 proto static scope link metric 100 172.16.0.69 dev ens32 proto kernel scope link src 172.16.0.69 metric 100
参考元
「デフォルトゲートウェイを設定する」より
NetworkManager においてゲートウェイに達する出口インターフェイスの選択に影響を及ぼす必要がある特別なケースでは、デフォルトゲートウェイに進まないインターフェイスに ifcfg ファイルの DEFROUTE=no コマンドを利用します。
モバイル云々って書いてあるけど、デフォルトゲートウェイを設定するインタフェースとそれ以外で DEFROUTE は書いておけってことなのでは?