Skip to content

dhcpcd create IPv6 network route using gateway address instance of link# one on FreeBSD #506

@joelpelaez

Description

@joelpelaez

When dhcpcd uses SLAAC for address configuration, it add a IPv6 route entry like this:

Internet6:
Destination                       Gateway                       Flags         Netif Expire
2001:xxxx:xxxx:xxxx::/64          fe80::1%igb0                  UG             igb0
2001:xxxx:xxxx:xxxx::2            link#5                        UHS             lo0

Instance of something like this:

Internet6:
Destination                       Gateway                       Flags         Netif Expire
2001:xxxx:xxxx:xxxx::/64          link#1                        U              igb0
2001:xxxx:xxxx:xxxx::2            link#5                        UHS             lo0

This network route entry creates issues on connections with hosts in same network becauses that causes than the router (fe80::1%igb0) sends ICMPv6 Redirect packets for reconfigure routing between hosts, and it can cause connection loss if host not allow ICMPv6 Redirect packets.

dhcpcd logs has something similar to:

May 19 20:33:01 host dhcpcd[22861]: dhcpcd-10.2.2 starting
May 19 20:33:01 host dhcpcd[23507]: DUID 00:01:00:01:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff
May 19 20:33:01 host dhcpcd[23507]: igb0: IAID ee:ee:ee:ee
May 19 20:33:02 host dhcpcd[23507]: igb0: soliciting an IPv6 router
May 19 20:33:02 host dhcpcd[23507]: igb0: Router Advertisement from fe80::1
May 19 20:33:02 host dhcpcd[23507]: igb0: adding address 2001:xxxx:xxxx:xxxx::2/64
May 19 20:33:02 host dhcpcd[23507]: igb0: adding temporary address 2806:xxxx:xxxx:xxxx:1111:2222:3333:4444/64
May 19 20:33:02 host dhcpcd[23507]: igb0: adding route to 2001:xxxx:xxxx:xxxx::/64 via fe80::1
May 19 20:33:59 host dhcpcd[23507]: igb0: adding temporary address 2001:xxxx:xxxx:xxxx:5555:6666:7777:8888/64

Also dhcpcd adds a secondary temporary address some seconds or few minutes after the service start

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions