{"action":"opened","issue":{"url":"https://api.github.com/repos/systemd/systemd/issues/1080","labels_url":"https://api.github.com/repos/systemd/systemd/issues/1080/labels{/name}","comments_url":"https://api.github.com/repos/systemd/systemd/issues/1080/comments","events_url":"https://api.github.com/repos/systemd/systemd/issues/1080/events","html_url":"https://github.com/systemd/systemd/issues/1080","id":103935431,"number":1080,"title":"networkd: Implement dhcpv6 prefix delegation","user":{"login":"brain0","id":1160158,"avatar_url":"https://avatars.githubusercontent.com/u/1160158?v=3","gravatar_id":"","url":"https://api.github.com/users/brain0","html_url":"https://github.com/brain0","followers_url":"https://api.github.com/users/brain0/followers","following_url":"https://api.github.com/users/brain0/following{/other_user}","gists_url":"https://api.github.com/users/brain0/gists{/gist_id}","starred_url":"https://api.github.com/users/brain0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brain0/subscriptions","organizations_url":"https://api.github.com/users/brain0/orgs","repos_url":"https://api.github.com/users/brain0/repos","events_url":"https://api.github.com/users/brain0/events{/privacy}","received_events_url":"https://api.github.com/users/brain0/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-08-30T17:27:35Z","updated_at":"2015-08-30T17:27:35Z","closed_at":null,"body":"networkd should support dhcpv6 prefix delegation.\r\n\r\nA router can delegate ipv6 prefixes via dhcpv6. When a client receives them, it may delegate them to local \"downstream\" interfaces.\r\n\r\nExample: A router has control over the prefix 2001:DB8:DEAD::/48. When requesting a prefix from the router, networkd may receive 2001:DB8:DEAD:100::/56. It should then do the following:\r\n\r\n1) Set a prohibited route on 2001:DB8:DEAD:100::/56.\r\n2) Delegate sub-prefixes to downstream interfaces, for example 2001:DB8:DEAD:101::/64 to tap0 and 2001:DB8:DEAD:102::/64 tap1. For each of these prefixes, it configures routes to the correct interfaces.\r\n3) Add a policy route as follows: when forwarding a packet with a source within 2001:DB8:DEAD:100::/56, use the router that delegated this prefix as default gateway (this is needed for multihoming, if you only have a single gateway it is unnecessary).\r\n4) optionally, networkd could allow a dhcpv6 server to receive sub-prefixes of 2001:DB8:DEAD:100::/56 to delegate them further downstream to dhcpv6 clients (for example, a dhcpv6 server could delegate a /60 prefix).\r\n\r\nRight now, the only clients to support prefix delegation are OpenWRT's netifd and dhclient (the latter includes no dhclient-script that handles this case though).\r\n\r\nSome ideas on configuration: http://wiki.openwrt.org/doc/uci/network6#downstream_configuration_for_lan-interfaces"}}