• Welcome to Hurricane Electric's IPv6 Tunnel Broker Forums.

How do I delegate ipaddress of caching dns to a ipv6-only netkwork?

Started by jesper, January 01, 2011, 09:41:03 AM

Previous topic - Next topic

jesper

Hi everyone and happy new year :)

I am trying to create a ipv6-only network. I have no problem to get the addresses out by radvd but i cant get the clients the ipv6address of caching dns server (i am using HE:s 2001:470:20::2).

I am using ISC-dhcp-server version  4.1.1-p1 and here is the config:



authoritative;
default-lease-time 86400;
max-lease-time 604800;
log-facility local7;

             subnet6 2001:470:xxxx:xxxx::/64{
             range6 2001:470:xxxx:xxxx::20 2001:470:xxxx:xxxx::40;
             option dhcp6.name-servers 2001:470:20::2;
}



The server starts up with no errors:


wrote 0 leases to leases file.
bound to *:547
Listening on Socket/5/eth1/2001:470:xxxx:xxxx::/64
sending on Socket/5/eth1/2001:470:xxxx:xxxx::/64


here is the client config file:



# Configuration file for /sbin/dhclient, which is included in Debian's
# dhcp3-client package.
#
# This is a sample configuration file for dhclient. See dhclient.conf's
# man page for more information about the syntax of this file
# and a more comprehensive list of the parameters understood by
# dhclient.
#
# Normally, if the DHCP server provides reasonable information and does
# not leave anything out (like the domain name, for example), then
# few changes must be made to this file, if any.
#

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;

#send host-name "andare.fugue.com";
#send dhcp-client-identifier xx:xx:xx:xx:xx:xx:xx;
#send dhcp-lease-time 3600;
#supersede domain-name "fugue.com home.vix.com";
#prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, dhcp6.name-servers, domain-name-servers, domain-search, host-name,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes;
require subnet-mask, domain-name-servers;
#timeout 60;
#retry 60;
#reboot 10;
#select-timeout 5;
#initial-interval 2;
#script "/etc/dhcp3/dhclient-script";
#media "-link0 -link1 -link2", "link0 link1";
#reject 192.33.137.209;

#alias {
#  interface "eth0";
#  fixed-address 192.5.5.213;
#  option subnet-mask 255.255.255.255;
#}

#lease {
#  interface "eth0";
#  fixed-address 192.33.137.200;
#  medium "link0 link1";
#  option host-name "andare.swiftmedia.com";
#  option subnet-mask 255.255.255.0;
#  option broadcast-address 192.33.137.255;
#  option routers 192.33.137.250;
#  option domain-name-servers 127.0.0.1;
#  renew 2 2000/1/12 00:00:01;
#  rebind 2 2000/1/12 00:00:01;
#  expire 2 2000/1/12 00:00:01;
#}




here is how it looks then i start the client:



Bound to *:546
Listening on Socket/eth0
Sending on   Socket/eth0
PRC: Confirming active lease (INIT-REBOOT).
XMT: Forming Confirm, 0 ms elapsed.
XMT:  X-- IA_NA xx:xx:xx:xx
XMT:  | X-- Confirm Address 2001:470:xxxx:xxxx::40
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 910ms.
RCV: Reply message on eth0 from fe80::a00:27ff:fee3:418f.
RCV:  X-- Server ID: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
message status code Success: "All addresses still on link."
PRC: Bound to lease xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
PRC: Renewal event scheduled in 41732 seconds, to run for 21600 seconds.
PRC: Depreference scheduled in 5732 seconds.
PRC: Expiration scheduled in 84932 seconds.



I get no extra ipaddress or a ipaddress to a caching name server in /etc/resolv.conf/

Please help me !

cholzhauer

there is a newer version of the dhcp server...did you try that?

jesper

The router is a Debian sid so i thought that i had the latest version ,, how do i get it?

cholzhauer

I'm not sure what that is, but you could grab the source from the ISC site. 

jesper

Yes and i did. I compile it and installed it with the same result but the client side is diffrent:



Bound to *:546
Listening on Socket/eth0
Sending on   Socket/eth0
PRC: Confirming active lease (INIT-REBOOT).
XMT: Forming Confirm, 0 ms elapsed.
XMT:  X-- IA_NA xx:xx:xx:xx
XMT:  | X-- Confirm Address 2001:470:xxxx:xxxx::40
XMT:  V IA_NA appended.
XMT: Confirm on eth0, interval 1090ms.
RCV: Reply message on eth0 from fe80::xxxx:xxxx:xxxx:xxxx.
RCV:  X-- Server ID: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
message status code Success: "All addresses still on link."
PRC: Bound to lease xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
PRC: Renewal event scheduled in 31364 seconds, to run for 21600 seconds.
PRC: Depreference scheduled in -4636 seconds.
PRC: Expiration scheduled in 74564 seconds.
PRC: Address 2001:470:xxxx:xxxx::40 depreferred.
PRC: Renewal event scheduled in 31364 seconds, to run for 21600 seconds.
PRC: Expiration scheduled in 74564 seconds.
RCV: Advertise message on eth0 from fe80::xxxx:xxxx:xxxx:xxxx.
Packet received, but nothing done with it



I am using the same config files on both ends.

donbushway

Did you configure radvd to tell the clients to get other options from DHCP6?

        AdvSendAdvert on;
        AdvManagedFlag off;
        AdvOtherConfigFlag on;

I am currently using dibbler dhcp server with no problems.

jesper

I put the "advmanagedflag off;" in my radvd.conf and restarted everything with no changes. Can you please post your config on dibbler and radvd on server and client side. So i can try your exact config. I have straggled with this problem for months . Please !

jesper

Hi everyone

I tried dibbler server/client ,, it worked like a clock. But i just realized a possible moment 22 here. How will the clients get the dibbler client then they cant resolv the domainnames of repositorys  that is needed to get the dibbler client (in this situation a unix/unix-like network (maybe windows clients can handle this better?) ). I hope that you all understand what i mean. As i see it now, you have to put in the ip adress of the dns manually on the client. Please correct me with a solution if i am wrong.

donbushway

Here are my config files. I am only using the dibbler server.

This is the important command that tells the client to look for DHCP config information.

AdvOtherConfigFlag on;


RADVD CONFIG:

interface br0 {
        AdvSendAdvert on;
        AdvManagedFlag off;
        AdvOtherConfigFlag on;

        prefix 2001:470:1f0f:4ef::/64
        {
                AdvOnLink on;
                AdvAutonomous on;
        };
};

DIBBLER SERVER CONFIG:

#
# server configuration file: stateless autoconf
#
# Stateless autoconf is used when clients does not ask for addresses or
# prefixes. Note that in stateless mode, limited number of messages
# is accepted: inf-request and relay-forw only.

log-level 8
log-mode short
stateless

iface br0 {
option dns-server 2001:470:0:70::2,2001:470:0:78::2
# option domain example.com, test1.example.com
# option ntp-server 2000::200,2000::201,2000::202
# option time-zone  CET
# option sip-server 2000::300,2000::302,2000::303,2000::304
# option sip-domain sip1.example.com,sip2.example.com
# option nis-server 2000::400,2000::401,2000::404,2000::405,2000::405
# option nis-domain nis.example.com
# option nis+-server 2000::501,2000::502
# option nis+-domain nisplus.example.com

# renew obtained paramters every 1800 seconds
option lifetime 1800
}


jesper

Hi i have tried your solution and it didnt work i am only getting a address from radvd but no address for dns server in resolv.conf .So it seams that i have to use dibbler-client to get the address for the dns server.

donbushway

Either dibbler client or a DHCPV6 client for the linux you are using. Windows has the v4 and v6 built in, apparently linux does not include this.

jb17bsome

Is udp port 546 open on the linux dhcp6 client machine?
Seems odd for dhcp, but I had to open this port.  I have basically the same setup as you (radvd + dhcpd6) on my router.
If you only use radvd then router advertisements are used to generate the site ipv6 addresses so the port doesn't need to be opened.


jesper