
我正在嘗試配置 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
以上不需要調度程序腳本並且可以在重新啟動後繼續存在。