ゲートウェイなしでデフォルトパスnmcliを追加する

ゲートウェイなしでデフォルトパスnmcliを追加する

インターフェイスで次のことを行うようにNetworkManagerを設定しようとしています。

ip route add ::/0 dev he-ipv6

he-ipv6これはポイントツーポイントipv4 satモードトンネルなので、上記のコマンドを直接実行するだけです。残念ながら、デバイスが再起動した場合、デフォルトゲートウェイは再構成されないため、ネットワーク外のすべてのIPv6トラフィックが破棄されます。

以下で手動パスを設定しようとしました。

nmcli c modify he-ipv6 ipv6.routes '::/0'

ただし、もちろん、nmcliではデフォルトゲートウェイへの固定パスを設定することはできません。

Error: failed to modify ipv6.routes: invalid prefix '0'; <1-128> allowed.

答え1

結局、私は非常に簡単なものを作る最もクリーンな方法を見つけました。ネットワーク管理者(8)インターフェイスがオンラインになったときにルーティング用のDispatcher.dスクリプトを追加します。

/etc/NetworkManager/dispatcher.d/99-he-ipv6-add-default-route

#!/bin/bash

[[ "${1}" -ne "he-ipv6" ]] && exit

if [[ "${2}" -eq "up" ]]; then 
  ip route add ::/0 dev he-ipv6
fi

答え2

実際、nmcliを使用して完全なトンネル接続を設定できます。 FedoraのWikiページそれについて。

nmcli connection add type ip-tunnel con-name sit1 ifname sit1 mode sit \
remote SERVER_IPV4_ADDRESS -- ipv4.method disabled ipv6.method manual \
ipv6.address CLIENT_IPV6_ADDRESS ipv6.gateway SERVER_IPV6_ADDRESS \
ip-tunnel.ttl 64

上記はスケジューラスクリプトを必要とせず、再起動後も保持されます。

関連情報