<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">G'day PLUG, Andrew,<br>
      <br>
      Sorry Onno:<br>
      <br>
      a@Hex:~$ ip addr show dev eth0<br>
      3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc
      pfifo_fast state UP group default qlen 1000<br>
          link/ether 00:e0:61:06:e2:a0 brd ff:ff:ff:ff:ff:ff<br>
          inet 192.168.30.9/24 brd 192.168.30.255 scope global eth0<br>
             valid_lft forever preferred_lft forever<br>
          inet6 2001:44b8:610b:3f01:e923:e31b:bbf3:4e75/64 scope global
      temporary dynamic <br>
             valid_lft 293sec preferred_lft 113sec<br>
      <br>
      a@Hex:~$ (ip route ; ip -6 route) |grep default<br>
      default via 192.168.30.254 dev eth0 <br>
      default via fe80::98db:82ff:fe93:3b38 dev eth0  proto ra  metric
      1024  expires 26sec<br>
      <br>
      a@Hex:~$ netstat -ltn |grep 22<br>
      tcp        0      0 0.0.0.0:22             
      0.0.0.0:*               LISTEN     <br>
      tcp6       0      0 :::22                  
      :::*                    LISTEN     <br>
      <br>
      Right, now thats cleared up, onto DHCPv6.<br>
      <br>
      DHCPDv6 listens on UDP port 547 for DHCPv6 requests, as opposed to
      RADVD which listens on a raw socket for router solicitation
      requests.<br>
      <br>
      To get DHCPDv6 working (on Debian/Ubuntu) install isc-dhcp-server
      and modify the default config thusly:<br>
      <br>
      subnet 10... becomes:<br>
      <br>
      subnet6 2011:DB8:1234:5678::/64 {<br>
        range6 2011:DB8:1234:5678::10 2011:DB8:1234:5678::fff0;<br>
      }<br>
      <br>
      You can also include the following options:<br>
      <br>
      option dhcp6.domain-search "test.net";<br>
      option dhcp6.name-servers 2011:DB8:1234:5678::1;<br>
      <br>
      I would also change the lease file to a unique dhcpd-v6 file:<br>
      <br>
      lease-file-name "/var/lib/dhcp/dhcpd-v6.leases";<br>
      <br>
      To run this concurrently with your IPv4 DHCP server, copy
      /etc/init.d/isc-dhcp-server to /etc/init.d/isc-dhcp-server-v6 and
      apply the following patch:<br>
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:root@Router:/etc/init.d#">root@Router:/etc/init.d#</a> diff -ruN isc-dhcp-server
      isc-dhcp-server-v6 <br>
      --- isc-dhcp-server    2012-09-14 11:24:53.000000000 +0800<br>
      +++ isc-dhcp-server-v6    2012-01-05 10:06:09.000000000 +0800<br>
      @@ -3,14 +3,14 @@<br>
       #<br>
       <br>
       ### BEGIN INIT INFO<br>
      -# Provides:          isc-dhcp-server<br>
      +# Provides:          isc-dhcp-server-v6<br>
       # Required-Start:    $remote_fs $network $syslog<br>
       # Required-Stop:     $remote_fs $network $syslog<br>
       # Should-Start:      $local_fs slapd $named<br>
       # Should-Stop:       $local_fs slapd<br>
       # Default-Start:     2 3 4 5<br>
       # Default-Stop:      0 1 6<br>
      -# Short-Description: DHCP server<br>
      +# Short-Description: DHCPv6 server<br>
       # Description:       Dynamic Host Configuration Protocol Server<br>
       ### END INIT INFO<br>
       <br>
      @@ -18,38 +18,29 @@<br>
       <br>
       test -f /usr/sbin/dhcpd || exit 0<br>
       <br>
      -DHCPD_DEFAULT="${DHCPD_DEFAULT:-/etc/default/isc-dhcp-server}"<br>
      -<br>
       # It is not safe to start if we don't have a default
      configuration...<br>
      -if [ ! -f "$DHCPD_DEFAULT" ]; then<br>
      -    echo "$DHCPD_DEFAULT does not exist! - Aborting..."<br>
      -    if [ "$DHCPD_DEFAULT" = "/etc/default/isc-dhcp-server" ];
      then<br>
      -        echo "Run 'dpkg-reconfigure isc-dhcp-server' to fix the
      problem."<br>
      -    fi<br>
      +if [ ! -f /etc/default/isc-dhcp-server ]; then<br>
      +    echo "/etc/default/isc-dhcp-server does not exist! -
      Aborting..."<br>
      +    echo "Run 'dpkg-reconfigure isc-dhcp-server' to fix the
      problem."<br>
           exit 0<br>
       fi<br>
       <br>
       . /lib/lsb/init-functions<br>
       <br>
      -# Read init script configuration<br>
      -[ -f "$DHCPD_DEFAULT" ] && . "$DHCPD_DEFAULT"<br>
      +# Read init script configuration (so far only interfaces the
      daemon<br>
      +# should listen on.)<br>
      +[ -f /etc/default/isc-dhcp-server ] && .
      /etc/default/isc-dhcp-server<br>
       <br>
       NAME=dhcpd<br>
      -DESC="ISC DHCP server"<br>
      -# fallback to default config file<br>
      -DHCPD_CONF=${DHCPD_CONF:-/etc/dhcp/dhcpd.conf}<br>
      -# try to read pid file name from config file, with fallback to
      /var/run/dhcpd.pid<br>
      -if [ -z "$DHCPD_PID" ]; then<br>
      -    DHCPD_PID=$(sed -n -e 's/^[ \t]*pid-file-name[ \t]*"(.*)"[
      \t]*;.*$/\1/p' < "$DHCPD_CONF" 2>/dev/null | head -n 1)<br>
      -fi<br>
      -DHCPD_PID="${DHCPD_PID:-/var/run/dhcpd.pid}"<br>
      +DESC="ISC DHCP server v6"<br>
      +DHCPDPID=/var/run/dhcpd6.pid<br>
       <br>
       test_config()<br>
       {<br>
      -    if ! /usr/sbin/dhcpd -t $OPTIONS -q -cf "$DHCPD_CONF" >
      /dev/null 2>&1; then<br>
      -        echo "dhcpd self-test failed. Please fix $DHCPD_CONF."<br>
      +    if ! /usr/sbin/dhcpd -cf /etc/dhcp/dhcpd-v6.conf -6 -t -q
      > /dev/null 2>&1; then<br>
      +        echo "dhcpd-v6 self-test failed. Please fix the config
      file."<br>
               echo "The error was: "<br>
      -        /usr/sbin/dhcpd -t $OPTIONS -cf "$DHCPD_CONF"<br>
      +        /usr/sbin/dhcpd -cf /etc/dhcp/dhcpd-v6.conf -6 -t<br>
               exit 1<br>
           fi<br>
       }<br>
      @@ -57,15 +48,15 @@<br>
       # single arg is -v for messages, -q for none<br>
       check_status()<br>
       {<br>
      -    if [ ! -r "$DHCPD_PID" ]; then<br>
      +    if [ ! -r "$DHCPDPID" ]; then<br>
           test "$1" != -v || echo "$NAME is not running."<br>
           return 3<br>
           fi<br>
      -    if read pid < "$DHCPD_PID" && ps -p "$pid" >
      /dev/null 2>&1; then<br>
      +    if read pid < "$DHCPDPID" && ps -p "$pid" >
      /dev/null 2>&1; then<br>
           test "$1" != -v || echo "$NAME is running."<br>
           return 0<br>
           else<br>
      -    test "$1" != -v || echo "$NAME is not running but $DHCPD_PID
      exists."<br>
      +    test "$1" != -v || echo "$NAME is not running but $DHCPDPID
      exists."<br>
           return 1<br>
           fi<br>
       }<br>
      @@ -74,9 +65,8 @@<br>
           start)<br>
               test_config<br>
               log_daemon_msg "Starting $DESC" "$NAME"<br>
      -        start-stop-daemon --start --quiet --pidfile "$DHCPD_PID"
      \<br>
      -            --exec /usr/sbin/dhcpd -- \<br>
      -            -q $OPTIONS -cf "$DHCPD_CONF" -pf "$DHCPD_PID"
      $INTERFACES<br>
      +        start-stop-daemon --start --quiet --pidfile $DHCPDPID \<br>
      +            --exec /usr/sbin/dhcpd -- -6 -q $INTERFACES -cf
      /etc/dhcp/dhcpd-v6.conf<br>
               sleep 2<br>
       <br>
               if check_status -q; then<br>
      @@ -89,9 +79,9 @@<br>
               ;;<br>
           stop)<br>
               log_daemon_msg "Stopping $DESC" "$NAME"<br>
      -        start-stop-daemon --stop --quiet --pidfile "$DHCPD_PID"<br>
      +        start-stop-daemon --stop --quiet --pidfile $DHCPDPID<br>
               log_end_msg $?<br>
      -        rm -f "$DHCPD_PID"<br>
      +        rm -f "$DHCPDPID"<br>
               ;;<br>
           restart | force-reload)<br>
               test_config<br>
      <br>
      An alternative would be to install wide-dhcpv6-server. This will
      require must less mucking around to get going, but doesn't allow
      the option to automatically and dynamically update your local DNS
      zone as hosts receive (and relinquish) IPv6 leases. Given the
      length of IPv6 address, having your hosts automatically added to
      DNS is a Good Thing (TM). (This can be somewhat ameliorated by
      using Avahi/mDNS).<br>
      <br>
      Hope this gets you on your way.<br>
      <br>
      Adrian<br>
      <br>
      Also, you've totally stolen my username and claimed it first,
      because I stole the idea from Bernard Blackham (b) around 2001.
      :-P<br>
      <br>
      On 16/07/14 17:15, Onno Benschop wrote:<br>
    </div>
    <blockquote
cite="mid:CACybYRV8i9F8okYy0QycmPeLgM8bZDLJ7bBfpSUBQo+7znWT1A@mail.gmail.com"
      type="cite">
      <div dir="ltr">This might be a red herring, but seem to recall in
        the deep dark mists of my memory that you couldn't have an
        interface that did both IPv4 and IPv6 at the same time.
        <div><br>
        </div>
        <div style="">Please feel free to ridicule this comment - as I
          said, YMMV.</div>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">On 16 July 2014 10:45, Andrew Cooks <span
            dir="ltr"><<a moz-do-not-send="true"
              href="mailto:acooks@gmail.com" target="_blank">acooks@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            Hi List<br>
            <br>
            I'm trying to configure dhcpv6 (stateful IPv6
            autoconfiguration) and<br>
            I'm stuck. Maybe there's someone on the list who can help?<br>
            <br>
            I've determined that the client sends the ICMPv6 Router
            Solicitation<br>
            message and that it arrives at the server, but the server
            doesn't<br>
            respond.<br>
            <br>
            It works fine for providing DNS servers and such if I use
            radvd for<br>
            stateless address autoconfiguration, but I'd like to setup
            _stateful_<br>
            configuration to test that our devices operate correctly in
            this mode.<br>
            <br>
            The problem seems to be that the server doesn't listen on
            the raw<br>
            interface (it does for IPv4), so it probably doesn't receive
            the icmp<br>
            messages. It does listen on UDP port 547 using IPv6 and it
            does claim<br>
            to listen on the correct interface at start-up.<br>
            <br>
            Any ideas? I can post details if anyone is interested.<br>
            <br>
            Thanks<br>
            <br>
            a.<br>
            _______________________________________________<br>
            PLUG discussion list: <a moz-do-not-send="true"
              href="mailto:plug@plug.org.au">plug@plug.org.au</a><br>
            <a moz-do-not-send="true"
              href="http://lists.plug.org.au/mailman/listinfo/plug"
              target="_blank">http://lists.plug.org.au/mailman/listinfo/plug</a><br>
            Committee e-mail: <a moz-do-not-send="true"
              href="mailto:committee@plug.org.au">committee@plug.org.au</a><br>
            PLUG Membership: <a moz-do-not-send="true"
              href="http://www.plug.org.au/membership" target="_blank">http://www.plug.org.au/membership</a><br>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div dir="ltr">Onno Benschop<br>
          <br>
          ()/)/)()        ..ASCII for Onno..<br>
          |>>?            ..EBCDIC for Onno..<br>
          --- -. -. ---   ..Morse for Onno..<br>
          <br>
          <span style="color:rgb(136,136,136)">If you need to know:
            "What computer should I buy?" </span><a
            moz-do-not-send="true" href="http://goo.gl/spsb66"
            style="color:rgb(17,85,204)" target="_blank">http://goo.gl/spsb66</a>
          <div><br>
            ITmaze   -   ABN: 56 178 057 063   -  ph: 04 1219 8888   -  
            <a moz-do-not-send="true" href="mailto:onno@itmaze.com.au"
              target="_blank">onno@itmaze.com.au</a></div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
PLUG discussion list: <a class="moz-txt-link-abbreviated" href="mailto:plug@plug.org.au">plug@plug.org.au</a>
<a class="moz-txt-link-freetext" href="http://lists.plug.org.au/mailman/listinfo/plug">http://lists.plug.org.au/mailman/listinfo/plug</a>
Committee e-mail: <a class="moz-txt-link-abbreviated" href="mailto:committee@plug.org.au">committee@plug.org.au</a>
PLUG Membership: <a class="moz-txt-link-freetext" href="http://www.plug.org.au/membership">http://www.plug.org.au/membership</a></pre>
    </blockquote>
    <br>
  </body>
</html>