海运的博客

k2p下潘多拉/openwrt配置ipv6地址

发布时间:October 27, 2018 // 分类:K2P // 1 Comment

我这宽带分配ipv6使用dhcpv6-pd方式,潘多拉默认配置ipv6就能正常使用,由于使用虚拟机和未使用自带的firewall走了一些坑,顺便将openwrt的ipv6分配了解了下。
wan6接口的dhcpv6客户端获取ipv6公网前缀:
2018-10-27_110916.png

路由获取IPV6前缀后向局域网内机器分发址使用RA路由通告和dhcpv6方式:
支持IPV6的主机会主动发路由器询问报文,然后路由器RA返回是否使用DHCPV6分配或用IP前缀、网关,机器根据MAC生成IPV6地址,最新的RA协议支持RDNSS可配置DNS,Windows 10最新系统才支持。

dhcpv6支持有状态和无状态,有状态类似于DHCPV4,无状态使用RA通告配置IP,DHCPV6配置DNS、NTP等扩展配置信息,据说android系统不支持dhcpv6。

有公网前缀的不要单独使用有状态的,不然pppoe重新报号前缀改变内网机器前缀不改。
有状态的+无状态的,使用dhcpv6有状态分配地址,同时如果有公网前缀也使用无状态分配,无前缀只使用DHCPV6有状态分配。

RA和DHCPV6模式有:服务器模式、中继模式、混合模式,前缀分配使用服务器模式,如果运营商不支持dhcpv6-pd可使用中继方式,中继模式要将wan6的dhcp客户端设置成master,lan的dhcp相当于slave。
混合模式会根据配置自动选择使用中继还是服务器模式。
If the interface was master, then hybrid means relay or disabled. If there was no slave relay in the other interfaces, then it will be configured to disabled.

If the interface was not master, then hybrid means relay or server. If there was no master, then the interface will be configured to server.

默认lan接口的dhcpv6服务器配置:
2018-10-27_111135.png
通告的DNS地址就是RDNSS,填写此项客户端可通过RA通告配置DNS地址,如果客户端支持RDNSS关闭DHCPV6服务也能正常使用了。

总结分配IP方式使用RA+DHCPV6无状态或RA+RDNSS不用DHCPV6就可以了。
配置iptables:

ip6tables -F
ip6tables -X
ip6tables -Z
ip6tables -P INPUT   DROP
ip6tables -P OUTPUT  ACCEPT
ip6tables -P FORWARD DROP

ip6tables -A INPUT -i lo -j ACCEPT
ip6tables -A INPUT -i br-lan -j ACCEPT
#路由通告使用icmpv6协议,类型133-137
ip6tables -A INPUT -p icmpv6 -j ACCEPT
#这个一定要允许,不然获取不到公网ipv6前缀
ip6tables -A INPUT -m conntrack --ctstate NEW -m udp -p udp --sport 547 --dport 546 -s fe80::/64 -d fe80::/64 -j ACCEPT
#ip6tables -A INPUT -s fe80::/10 -d fe80::/10 -p udp -m udp --sport 547 --dport 546 -j ACCEPT
#ip6tables -A INPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT
ip6tables -A INPUT -i pppoe-wan -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
ip6tables -A FORWARD -i br-lan -o pppoe-wan  -j ACCEPT
ip6tables -A FORWARD -i br-lan -o br-lan  -j ACCEPT
ip6tables -A FORWARD -i pppoe-wan -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

ip6tables -t mangle -F
ip6tables -t mangle -X
ip6tables -t mangle -Z
ip6tables -t mangle -A POSTROUTING -o pppoe-wan -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 

参考:
https://community.arubanetworks.com/t5/Controller-Based-WLANs/Explain-the-M-and-O-bit-in-IPv6-DHCP-server-configuration-What/ta-p/177442
https://github.com/gnu4cn/ccna60d/blob/master/d07-IPv6.md
https://www.v2ex.com/t/486379
http://www.right.com.cn/forum/thread-338106-1-1.html
https://qiita.com/kwi/items/c002cd3c466504c96391
https://i-meto.com/lede-ipv6/
https://openwrt.org/docs/techref/odhcpd

标签:none

有一条 关于" k2p下潘多拉/openwrt配置ipv6地址 "的评论

  1. mingyu wen

    写的让我豁然开朗,但请问这句什么意思:有状态的+无状态的,使用dhcpv6有状态分配地址,同时如果有公网前缀也使用无状态分配,无前缀只使用DHCPV6有状态分配。

评论已关闭

分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...