如何在我的局域网上识别一个stream氓IPv6 DHCP服务器?

这将是一个很长的职位,但我想提供完整的信息。

我有一个家庭/企业局域网与isc-dhcp-server运行一个ipv4 dhcp服务器,并绑定为在Ubuntu服务器框上运行的DNS服务器。 我有comcast业务,并且网关禁用了所有的dhcpfunction。 为了杀死ipv6,直到我准备好处理它,在我的所有Linux机器上,我已经用grub命令和sysctl参数禁用了ipv6:

surfrock66@sr66-hp2:~/.scripts$ cat /etc/default/grub | grep -v "#" GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet ipv6.disable=1 acpi_backlight=vendor" GRUB_CMDLINE_LINUX="" surfrock66@sr66-hp2:~/.scripts$ cat /etc/sysctl.conf | grep -v "#" net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 net.ipv6.conf.eth0.disable_ipv6 = 1 net.ipv6.conf.wlo0.disable_ipv6 = 1 surfrock66@sr66-hp2:~/.scripts$ 

这些系统上没有ipv6。 所以,在我认为是一个无关的说明,我的android和chromecast设备有wifi问题。 我看到的主要问题是连接速度过慢,导致超时和失败。 那么,我正在做一些故障排除,并执行一个iperf … iperf应用程序列出了一个ipv6地址以及一个ipv4之一。 果然,一些进一步的看…每一个缓慢的问题设备有一个ipv6地址从某处!

ipv6禁用应用程序解决了我的连接问题,但是在任何时候连接中断并且重新制定时都会恢复。 真正的解决scheme是杀掉stream氓DHCP服务器,或者build立我自己的ipv6 dhcp解决scheme。 后者是我最终的计划,但现在我想停止当前的设备获得ipv6地址。

网关已closures所有DHCP服务(ipv4和ipv6,在不同的屏幕上)。 DHCP服务器是局域网的成员,它指向网关作为默认路由。

comcast业务类网关不是Wifi AP; 我有3个Netis AP的所有路由function被禁用。 他们是愚蠢的设备。

我能够从Android设备运行networking扫描,并find了ipv6地址的客户端列表…其中有3个MAC地址,我不认识,不能使用MAC查找解决。 我要重新启用ipv6在我的笔记本电脑之一,但我很确定,当我这样做的设备将不会立即networking连接。 我想进入这个计划,弄清楚这些客户端如何获得他们的ipv6地址。

https://goo.gl/photos/Z7yuXnL7C38tBA2z8

https://goo.gl/photos/urwY6rXUYs5d9mjP8

我不知道如何从Android中知道哪个是DHCP服务器; 在ipv4上它是192.168.1.22。 我可以识别所有的MAC地址作为我知道的设备,除了3:

  • 61:AD:F8:15:56:CC
  • 16:0A:EB:A3:10:A4
  • 61:AD:F8:51:15:25

不知道这三个是什么; 我做了整个局域网的ipv4扫描,没有显示相应的ipv4设备。 没有MAC查找给我一个关于制造商可能是谁的结果。

我的DHCP服务器根据MAC发出地址; 所以我知道局域网上的每一个mac。 客人(aka未知的MAC)得到192.168.1.197-254地址,所以他们很容易识别。

我在我的笔记本电脑上重新启用了ipv6,现在我的wifi适配器得到一个ipv6地址:

 surfrock66@sr66-hp2:~$ sudo ifconfig -a eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 ether 10:1f:74:1b:ec:cb txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1 (Local Loopback) RX packets 3581 bytes 464169 (453.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3581 bytes 464169 (453.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlo1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.46 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 2601:204:cd00:e200:1c5d:6970:a767:9c9e prefixlen 64 scopeid 0x0<global> inet6 fe80::c1b6:f422:a87d:4f49 prefixlen 64 scopeid 0x20<link> ether 74:e5:0b:1d:62:90 txqueuelen 1000 (Ethernet) RX packets 4151 bytes 2333517 (2.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3531 bytes 651073 (635.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 surfrock66@sr66-hp2:/var/lib/dhcp$ for i in `\ls /var/lib/dhcp`; do echo $i; cat $i; done dhclient.eth0.leases lease { interface "eth0"; fixed-address 192.168.1.227; filename "pxelinux.0"; option subnet-mask 255.255.255.0; option time-offset -25200; option routers 192.168.1.1; option dhcp-lease-time 3600; option dhcp-message-type 5; option domain-name-servers 8.8.8.8,8.8.4.4; option dhcp-server-identifier 192.168.1.22; option domain-name "hda.surfrock66.com"; renew 3 2016/06/01 04:01:58; rebind 3 2016/06/01 04:01:58; expire 3 2016/06/01 04:01:58; } dhclient.leases surfrock66@sr66-hp2:/var/lib/dhcp$ sudo grep -R "DHCPOFFER" /var/log/* /var/log/auth.log:Jul 9 14:32:23 sr66-hp2 sudo: surfrock66 : TTY=pts/1 ; PWD=/var/lib/dhcp ; USER=root ; COMMAND=/bin/grep -R DHCPOFFER /var/log/alternatives.log /var/log/alternatives.log.1 /var/log/alternatives.log.2.gz /var/log/apt /var/log/auth.log /var/log/auth.log.1 /var/log/auth.log.2.gz /var/log/auth.log.3.gz /var/log/auth.log.4.gz /var/log/btmp /var/log/btmp.1 /var/log/cups /var/log/daemon.log /var/log/daemon.log.1 /var/log/daemon.log.2.gz /var/log/daemon.log.3.gz /var/log/daemon.log.4.gz /var/log/debug /var/log/debug.1 /var/log/debug.2.gz /var/log/debug.3.gz /var/log/debug.4.gz /var/log/dmesg /var/log/dpkg.log /var/log/dpkg.log.1 /var/log/dpkg.log.2.gz /var/log/exim4 /var/log/faillog /var/log/firebird /var/log/fontconfig.log /var/log/fsck /var/log/hp /var/log/installer /var/log/kern.log /var/log/kern.log.1 /var/log/kern.log.2.gz /var/log/kern.log.3.gz /var/log/kern.log.4.gz /var/log/lastlog /var/log/lightdm /var/log/mail.err /var/log/mail.err.1 /var/log/mail.err.2.gz /var/log/daemon.log:Jul 5 09:18:22 sr66-hp2 dhclient[6017]: DHCPOFFER of 192.168.110.50 from 192.168.108.2 

我没有ipv6的dhcp租约,唯一的DHCP offer是从本周在医院使用guest wifi的时候开始的。

我不能再解决任何没有cachingDNS条目的东西。 我在笔记本电脑上重新禁用了ipv6以进行更多的故障排除研究。

我应该从哪里开始?