From: Francis Dupont Date: Sat, 9 Jul 2016 09:08:30 +0000 (+0200) Subject: [4273] Addressed comments X-Git-Tag: trac4551_base~18^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=397d745be75a50b21f09ad862c503bf101137a6a;p=thirdparty%2Fkea.git [4273] Addressed comments --- diff --git a/doc/examples/kea4/dhcpv4-over-dhcpv6.json b/doc/examples/kea4/dhcpv4-over-dhcpv6.json new file mode 100644 index 0000000000..1b4d7ed30d --- /dev/null +++ b/doc/examples/kea4/dhcpv4-over-dhcpv6.json @@ -0,0 +1,49 @@ +# This is an example configuration file for the DHCPv4 server of +# DHCPv4-over-DHCPv6 tests in Kea. + +{ + +# DHCPv4 conf +"Dhcp4": +{ + "interfaces-config": { + "interfaces": [ "eno33554984" ] + }, + + "lease-database": { + "type": "memfile", + "name": "leases4" + }, + + "valid-lifetime": 4000, + + "subnet4": [ + { "subnet": "10.10.10.0/24", + # Don't forget the "4o6-" before "interface" here! + "4o6-interface": "eno33554984", + "4o6-subnet": "2001:db8:1:1::/64", + "pools": [ { "pool": "10.10.10.100 - 10.10.10.199" } ] } + ], + + # This enables DHCPv4-over-DHCPv6 support + "dhcp4o6-port": 6767 + +}, + +"Logging": +{ + "loggers": [ + { + "name": "kea-dhcp4", + "output_options": [ + { + "output": "/tmp/kea-dhcp4.log" + } + ], + "severity": "DEBUG", + "debuglevel": 0 + } + ] +} + +} diff --git a/doc/examples/kea6/dhcpv4-over-dhcpv6.json b/doc/examples/kea6/dhcpv4-over-dhcpv6.json new file mode 100644 index 0000000000..2fb6ae6721 --- /dev/null +++ b/doc/examples/kea6/dhcpv4-over-dhcpv6.json @@ -0,0 +1,60 @@ +# This is an example configuration file for the DHCPv6 server of +# DHCPv4-over-DHCPv6 tests in Kea. + +{ + +# DHCPv6 conf +"Dhcp6": +{ + "interfaces-config": { + # Enable unicast + "interfaces": [ "eno33554984/2001:db8:1:1::1" ] + }, + + "lease-database": { + "type": "memfile", + "name": "leases6" + }, + + "preferred-lifetime": 3000, + "valid-lifetime": 4000, + "renew-timer": 1000, + "rebind-timer": 2000, + + "subnet6": [ + { "subnet": "2001:db8:1:1::/64", + "interface": "eno33554984", + "pools": [ { "pool": "2001:db8:1:1::1:0/112" } ] } + ], + + # This enables DHCPv4-over-DHCPv6 support + "dhcp4o6-port": 6767, + + # Required by DHCPv4-over-DHCPv6 clients + "option-data": [ + { "name": "dhcp4o6-server-addr", + "code": 88, + "space": "dhcp6", + "csv-format": true, + # Put the server address here + "data": "2001:db8:1:1::1" } + ] +}, + +"Logging": +{ + "loggers": [ + { + "name": "kea-dhcp6", + "output_options": [ + { + "output": "/tmp/kea-dhcp6.log" + } + ], + "severity": "DEBUG", + "debuglevel": 0 + } + ] +} + +} diff --git a/doc/guide/dhcp4-srv.xml b/doc/guide/dhcp4-srv.xml index f0ae17587d..716b9fd58d 100644 --- a/doc/guide/dhcp4-srv.xml +++ b/doc/guide/dhcp4-srv.xml @@ -154,7 +154,6 @@ strings path/kea-dhcp4 | sed -n 's/;;;; //p' "valid-lifetime": 4000, "renew-timer": 1000, "rebind-timer": 2000, - "dhcp4o6-port": 6767, # Next we setup the interfaces to be used by the server. "interfaces-config": { @@ -228,10 +227,7 @@ define T1 and T2 timers that govern when the client will begin the renewal and rebind procedures. Note that renew-timer and rebind-timer are optional. If they are not specified the client will select values for T1 and T2 timers according to the -RFC 2131. -dhcp4o6-port is used by the DHCPv4-over-DHCPv6 support -(more in ). - +RFC 2131. The interfaces-config map specifies the server configuration concerning the network interfaces, on which the server should @@ -2441,29 +2437,30 @@ It is merely echoed by the server The dhcp4o6-port global parameter specifies the first of the two consecutive ports of the UDP sockets used for the communication between the DHCPv6 and DHCPv4 servers - (DHCPv4-QUERY requests from the DHCPv6 side are received on the - first socket, DHCPv4-RESPONSE replies are sent back on the - second socket to the DHCPv6 side which forwards them to - clients). + (the DHCPv4 server is bound to ::1 on the port 1 and connected + to ::1 on port). - The subnet selection uses 3 specific configuration entries, - the presence of any of these enables the subnet for - DHCPv4-over-DHCPv6. These entries are: + With DHCPv4-over-DHCPv6 the DHCPv4 server does not have access + to several of the identifiers it would normally use to select a + subnet. In order to address this issue three new configuration + entires have been added. The presence of any of these allows the + subnet to be used with DHCPv4-over-DHCPv6. These entries are: - 4o6-interface: Takes an interface name - which is matched against the incoming interface name. + 4o6-subnet: Takes a prefix (i.e., an + IPv6 address followed by a slash and a prefix length) which is + matched against the source address. - 4o6-subnet: Takes a prefix (i.e, an - IPv6 address followed by a slash and a prefix length). + 4o6-interface-id: Takes a relay interface + ID option value. - 4o6-interface-id: Takes a relay interface - ID option value. + 4o6-interface: Takes an interface name + which is matched against the incoming interface name. @@ -2489,12 +2486,12 @@ It is merely echoed by the server "subnet4": [ { "subnet": "10.10.10.0/24", - "4o6-interface": "eno33554984", - "4o6-subnet": "2001:db8:1:1::/64", + "4o6-interface": "eno33554984", + "4o6-subnet": "2001:db8:1:1::/64", "pools": [ { "pool": "10.10.10.100 - 10.10.10.199" } ] } ], - "dhcp4o6-port": 6767 + "dhcp4o6-port": 6767 }, diff --git a/doc/guide/dhcp6-srv.xml b/doc/guide/dhcp6-srv.xml index a772b87c92..f47ef04507 100644 --- a/doc/guide/dhcp6-srv.xml +++ b/doc/guide/dhcp6-srv.xml @@ -154,7 +154,6 @@ strings path/kea-dhcp6 | sed -n 's/;;;; //p' "rebind-timer": 2000, "preferred-lifetime": 3000, "valid-lifetime": 4000, - "dhcp4o6-port": 6767, # Next we setup the interfaces to be used by the server. "interfaces-config": { @@ -228,10 +227,7 @@ around them.) The address will become deprecated in 3000 seconds (clients are allowed to keep old connections, but can't use this address for creating new connections). renew-timer and rebind-timer are values that define T1 and T2 timers that govern when -the client will begin the renewal and rebind procedures. -dhcp4o6-port is used by the DHCPv4-over-DHCPv6 support -(more in ). - +the client will begin the renewal and rebind procedures. The interfaces-config map specifies the server configuration concerning the network interfaces, on which the server should @@ -2203,9 +2199,8 @@ should include options from the isc option space: There is only one specific parameter for the DHCPv6 side: dhcp4o6-port which specifies the first of the two consecutive ports of the UDP sockets used for the communication - between the DHCPv6 and DHCPv4 servers (received DHCPv4-QUERY requests - are forwarded to the DHCPv4 side on the first socket, DHCPv4-RESPONSE - replies on the second socket are forwarded to clients). + between the DHCPv6 and DHCPv4 servers (the DHCPv6 server is bound + to ::1 on the port and connected to ::1 on port + 1). Two other configuration entries are in general required: unicast traffic @@ -2240,7 +2235,7 @@ should include options from the isc option space: "pools": [ { "pool": "2001:db8:1:1::1:0/112" } ] } ], - "dhcp4o6-port": 6767, + "dhcp4o6-port": 6767, "option-data": [ { "name": "dhcp4o6-server-addr", @@ -2249,6 +2244,7 @@ should include options from the isc option space: "csv-format": true, "data": "2001:db8:1:1::1" } ] + }, "Logging":