Realtek NIC + DHCPv6 + Routing table issues
-
I recently installed the 2.1 Beta mainly because of the IPv6 support and encountered that somehow the DHCP Server was only sporadically assigning addresses to clients.
Further investigation in the logs revealed the following:
Nov 25 21:57:00 dhcpd: send_packet6: No route to host Nov 25 21:57:00 dhcpd: Sending Advertise to fe80::a00:27ff:fe40:6d55 port 546 Nov 25 21:57:00 dhcpd: Picking pool address fc01::fb Nov 25 21:57:00 dhcpd: Solicit message from fe80::a00:27ff:fe40:6d55 port 546, transaction ID 0x4CDB300 Nov 25 21:56:59 dhcpd: dhcpv6: send_packet6() sent -1 of 84 bytes Nov 25 21:56:59 dhcpd: send_packet6: No route to host Nov 25 21:56:59 dhcpd: Sending Advertise to fe80::a00:27ff:fe40:6d55 port 546 Nov 25 21:56:59 dhcpd: Picking pool address fc01::fb Nov 25 21:56:59 dhcpd: Solicit message from fe80::a00:27ff:fe40:6d55 port 546, transaction ID 0x4CDB300 Nov 25 21:56:13 dhcpd: Sending on Socket/5/re1/fc01::/96 Nov 25 21:56:13 dhcpd: Listening on Socket/5/re1/fc01::/96
The problem is also documented here: http://forum.pfsense.org/index.php/topic,33955.0.html albeit with bridges.
I further tried pinging a machine in the LAN net, using the link-local addresses, still, the same error appeared.
Trying the same between two machines in that net however just worked fine, just like setting up a standalone DHCPv6 server there and trying to distribute addresses from there.When a took a peek at the routing table, I quickly saw that the iface route to fc80::/64 was missing.
On the working standalone DHCPv6 machine, the entry was in the table and it was working just fine - no route errors here.The intersting thing is, I managed to solve the problem on the pfSense by simply swapping LAN to a non-Realtek card, an onboard nForce adapter (re1 -> nfe0).
Is this just a side effect of swapping or do the Realtek cards really have those issues sometimes?
I also noticed the previously missing entry for re1 now:Internet6: Destination Gateway Flags Netif Expire localhost localhost UH lo0 fc01:: link#5 U nfe0 fc01::1 link#5 UHS lo0 fe80::%re0 link#3 U re0 fe80::2e0:21ff:fe2 link#3 UHS lo0 fe80::%re1 link#4 U re1 fe80::20f:b5ff:fe0 link#4 UHS lo0 fe80::%nfe0 link#5 U nfe0 fe80::213:d4ff:feb link#5 UHS lo0 fe80::%lo0 link#7 U lo0 fe80::1%lo0 link#7 UHS lo0 fe80::2e0:21ff:fe2 link#11 UHS lo0
Oh, please also note that I am quite new to IPv6. So if there are any mistakes or similar, I am gladly to hear your constructive criticism! :)