Bug 1167969
Summary: | it fails to assign a default IPv6 route if delayed after adding the IP address | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | João Avelino Bellomo Filho <jbellomo> | |
Component: | kernel | Assignee: | Florian Westphal <fwestpha> | |
kernel sub component: | IPv6 | QA Contact: | Hangbin Liu <haliu> | |
Status: | CLOSED NEXTRELEASE | Docs Contact: | ||
Severity: | low | |||
Priority: | medium | CC: | jbellomo, kzhang, mleitner, network-qe, psimerda, rkhan, sibu, tgraf | |
Version: | 6.6 | Keywords: | Reopened | |
Target Milestone: | rc | |||
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Linux | |||
Whiteboard: | ||||
Fixed In Version: | Doc Type: | Bug Fix | ||
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1228700 (view as bug list) | Environment: | ||
Last Closed: | 2015-07-08 14:58:22 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | ||||
Bug Blocks: | 1228700 |
Description
João Avelino Bellomo Filho
2014-11-25 18:31:29 UTC
(In reply to João Avelino Bellomo Filho from comment #0) > IPV6ADDR=fdde::1/128 > # ip -6 route show dev eth0 > fdde::1 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295 > fe80::/64 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295 There is no default route in this case, and the IP address has no subnet as prefix length is 128. > 4. Execute the command to configure the default route: > > # /sbin/ip -6 route add default via fdde::1 metric 1 This command creates a default route but uses the machine's own address as the gateway. The correct way would be to use a subnet (e.g. fdde::1/64) and install a default route using another machine on the subnet (e.g. fdde::2/64). Closing this bug report as the reported error is expected and matches current upstream behavior. Whats happening is that when the address is added (first command), the kernel adds the prefix route and then starts duplicate-address-detection (DAD) for the new address. The route for the address is not added until after DAD completes. While DAD is in progress, the "route add" sanity check that tests if nexthop is local doesn't work yet since it only added the prefix route. Once DAD is finished, the internal route lookup for the gateay address will return a route via lo interface (which causes kernel to reject the gateway address), while its in progress the returned route will be via the interface that the address was added on. I submitted patch that makes the kernel always reject local nexthop regardless of route table: http://patchwork.ozlabs.org/patch/474672/ I have no plans to backport this change to RHEL6 on the grounds that it might break some existing script. If you disagree please reopen this ticket, thanks! RHEL7 clone bz is #1228700 |