2024年2月21日時点、UnifiOS 3.2.12でDS-Liteのトンネルがうまく疎通しなかったり、固定IPが使えない問題に対処したもの
WebGUIではDHCP-PD prefix /56, DS-Liteの設定を仕込んだ状態で試したもの
# DS-Lite修正 | |
# 参考 | |
# https://techlog.iij.ad.jp/contents/dslite-raspi | |
REMOTE='' | |
# SLAAC シングルの人は多分これでいける | |
# LOCAL=`ip addr show br0 | grep 'mngtmpaddr' | awk '{print $2}' | awk -F/ '{print $1}'` | |
# DHCP-PDv6の人はこっち | |
LOCAL=`ip addr show br0 | grep 'inet6' | grep 'dynamic' | awk '{print $2}' | awk -F/ '{print $1}'` | |
# IPIP6 tunnel linkup | |
ip -6 tunnel delete ip6tnl1 | |
ip -6 tunnel add ip6tnl1 mode ip4ip6 remote ${REMOTE} local ${LOCAL} dev br0 | |
ip link set dev ip6tnl1 up |
## IPIP設定 (DHCP-PD方式) | |
# https://www.rtpro.yamaha.co.jp/RT/docs/v6connect/index.html | |
# https://xmms.jp/blog/index.php?entry=entry200812-194208 | |
# ASAHINETの固定IPの詳細ページからとれる情報 | |
AFTR='' | |
INTERFACE_ID='' # 下64bitでOK | |
UPDATE_UID='' | |
UPDATE_PASSWORD='' | |
FIXED_IPV4='' | |
INTERNET_ETH='eth8' | |
LOCAL_PREFIX=`ip addr show br0 | grep 'inet6' | grep 'dynamic' | awk '{print $2}' | awk -F/ '{print $1}' | sed 's/::1//'` | |
LOCAL_INET6="${LOCAL_PREFIX}:${INTERFACE_ID}" | |
# 新しいv6アドレスを用意 | |
ip -6 add add ${LOCAL_INET6}/64 dev br0 | |
# IPv4アドレスをセット | |
`ip a add dev ${INTERNET_ETH} ${FIXED_IPV4}` | |
# accept_raを2にしないとtokenセットできないらしい | |
# https://ral-arturo.org/2021/04/01/ip-token.html | |
sysctl -w net.ipv6.conf.br0.accept_ra=2 | |
ip token set ::${INTERFACE_ID} dev br0 | |
ip route add default dev ip6tnl1 | |
# アップデートサーバーに通知 | |
curl "https://v6update.asahi-net.or.jp/prefix?key=${UPDATE_UID}&pass=${UPDATE_PASSWORD}" | |
# IPIP6 tunnel 再構築 | |
ip -6 tunnel delete ip6tnl1 | |
ip -6 tunnel add ip6tnl1 mode ip4ip6 remote ${AFTR} local ${LOCAL_INET6} dev br0 | |
ip link set dev ip6tnl1 up |