我有带根的Android 8.1.0 AospExtended-v5.3-OFFICIAL的小米Redmi 4X(但它也不适用于库存的小米Redmi 4X-在没有根的Android 7上)。
我在Raspberry Pi(启用转发)和IPv6飓风隧道上设置了RADVD。
使用Archlinux的我的台式机和笔记本电脑可以完美地使用IPv6(仅限DualStack和IPv6),但2小米(有root和没有root)无法使用,尽管使用EUI-64可以获得两个IPv6地址(临时)和SLAAC。
这些地址来自my/64前缀。
我可以用fe80::从桌面ping它,也可以从android ping桌面。
但是我
无法ping Goolge DNS
(2001:4860:4860::8888)和其他IPv6地址。
Adnroid从RADVD获取IPv6:
ip-6地址
26: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 11:22:33:44:55:66 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.111/24 brd 192.168.0.255 scope global wlan0
valid_lft forever preferred_lft forever
inet6 2001:470:****:****:1234:1234:1234:1234/64 scope global temporary dynamic
valid_lft 86382sec preferred_lft 14382sec
inet6 2001:470:****:****:1122:33ff:fe44:5566/64 scope global mngtmpaddr dynamic
valid_lft 86382sec preferred_lft 14382sec
inet6 fe80::1122:33ff:fe44:5566/64 scope link
valid_lft forever preferred_lft forever
输出人
ip-6路线
为空。
我尝试不同
flags
像AdvOtherConfigFlag、AdvManagedFlag、AdvHomeAgentFlag等,但都是错误的-Android获取IPv6,可以ping fe80::,但不能ping IPv6 Internet。
当我在本地网络上禁用RADVD并在根Android上设置IPv6地址时
手动操作
:
ip link set dev wlan0 down
ip -6 addr add 2001:470:****:****:1234:1234:4321:4321/64 dev wlan0
ip -6 addr add 2001:470:****:****:1122:33ff:fe44:5566/64 dev wlan0
ip link set dev wlan0 up
ip-6地址
28: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 2001:470:****:****:1234:1234:4321:4321/64 scope global
valid_lft forever preferred_lft forever
inet6 2001:470:****:****:1122:33ff:fe44:5566/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::1122:33ff:fe44:5566/64 scope link
valid_lft forever preferred_lft forever
将默认路由添加到Raspberry Pi后:
ip -6 route add default via fe80::****:**ff:fe**:**** dev wlan0 proto
ra metric 100 pref medium
然后ping开始工作!我可以在Android上ping和打开IPv6站点!
如果我启用RADVD(Android获得两个IPv6)并将路由手动添加到Raspberry Pi,我将无法ping互联网上的IPv6地址。
我的radvd。树莓皮上的形态
interface eth0 {
AdvSendAdvert on;
MinRtrAdvInterval 300;
MaxRtrAdvInterval 600;
AdvHomeAgentFlag off;
AdvManagedFlag off;
AdvOtherConfigFlag off;
prefix 2001:470:****:****::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
您认为:
为什么android手动使用IPv6而不使用RADVD?
感谢您的回答!