为什么我的路由器为IP和IPv6交易使用不同的MAC地址?

康纳·帕特里克(Conor Patrick)

今天,我正在使用tcpdump,我发现我的计算机上的IPv6流量具有特定的MAC地址,而使用nmap或arping无法与IP匹配。在仔细查看tcpdump日志后,我发现这是我的路由器使用的另一个MAC地址,但专门用于IPv6流量。

22:49:01.936830 90:0d:cb:ff:31:91 (oui Unknown) > 33:33:00:00:00:01 (oui Unknown), ethertype IPv6 (0x86dd), length 158: fe80::920d:cbff:feff:3191 > ip6-allnodes: ICMP6, router advertisement, length 104

为什么路由器会为IPv6提供不同的MAC地址?

马里乌斯·马图蒂亚(MariusMatutiae)

这是隐私/安全问题的结果。在IPv6中,在无状态地址自动配置ADDRCONF下,节点无需DHCP服务器即可生成自己的公共地址。该地址的低64位由IEEE标识符(如果可用)生成,该标识符等效于第2层MAC地址。如果这是全部内容,则可以通过采用常规数据挖掘技术,通过IPv6地址的低64位来跟踪任何移动设备的位置和通信。

这就是为什么我问您是否在笔记本电脑上看到它的原因。

RFC 3041RFC4941解决了这种隐私/安全问题,它们描述了两种生成随机接口标识符(存在或不存在永久存储)的策略。

您可以使用以下控件在Linux和Mac中控制此功能:在Linux中,

sysctl net.ipv6.conf.all.use_tempaddr=2
sysctl net.ipv6.conf.default.use_tempaddr=2
sysctl net.ipv6.conf.eth0.use_tempaddr=2

等等,在Mac中

sysctl -w net.inet6.ip6.use_tempaddr=1

这种方案的优点是它不仅隐藏您的硬件标识,而且还相当频繁地自动更改(随机)标识。

有关大多数操作系统中的“隐私寻址”的更多信息,请阅读此出色的PSU页面

编辑:

某些系统(例如Arch Linux)已经转向sysctl的新配置。在这种情况下,您可以通过在文件/etc/sysctl.d/40-ipv6.conf中将以下条目更改为这些值来执行以上配置:

 net.ipv6.conf.all.use_tempaddr = 2
 net.ipv6.conf.default.use_tempaddr = 2
 net.ipv6.conf.eth0.use_tempaddr = 2

编辑2:

@slubman正确指出,在Linuxes中,要使用的正确选项是2,而不是1(这是我在Debian上拥有的选项),因为1确实允许生成隐私地址,但将Autoconf保留为首选。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从路由器获取IPv6 ip,我的子网掩码是什么?

为什么路由器不能使用MAC地址而不是专用/本地IP地址?

为什么我的路由器停止提供IP地址

我同时拥有IPv4和IPv6公共地址。为什么?

如果IP地址是唯一的,为什么这么多路由器的地址为192.168.1.1?

为什么路由器中的路由表的网关设置为各自接口的IP地址

在使用IPv6和IPv4的三台路由器上配置静态路由

为什么我在 Android 上看到两个不同的 IPv4 地址但 IPv6 地址相同?

为什么我们需要路由器,因为交换机也可以使用IP地址

为什么我的路由器mac地址关闭了1位数字

为什么MAC地址克隆可修复我的路由器?

Linux-查找路由器IPv6全局地址

使用不同IP地址上的相同内部端口号在路由器上进行端口转发

为什么我同时拥有一个IPv4和IPv6地址?

使用ipv4穿越仅ipv6的路由器

如何在路由器(从Mac)上激活ipv6

我怎么知道我的路由器是否支持IPv6?

如何使用基于Debian的路由器和前缀委托在局域网内部署IPv6?

家庭路由器上的本地 IP 地址是否始终为 IPv4?

为什么我的卫星调制解调器/路由器在LAN端有2个IP地址?

如何将Ubuntu Server设置为具有IPv4和IPv6的无线+以太网路由器

为什么 Java 将某些 IPv6 地址解释为 IPv4?

IPv6 可访问性和 Hitron 路由器

路由器继续在ipv6上发布广告

如何通过IPV6访问路由器?

为什么要用路由器的IP地址作为dns服务器的地址?

为什么接口同时显示ipv6地址和ipv4

为什么我的Raspberry Pi的IP地址没有显示在LAN下的D-LINK路由器上?

当我的路由器使用/ 64前缀时,是否可以创建IPv6子网?