Native IPv6 over DHCPv6 and RA not working in combination with PPPoE IPv4



  • Hiya, i have a problem with getting IPv6 working on my line with the latest (saturday) snapshot.

    Little history; back in the day databeestje helped me getting my line working on 2.0 beta/dev build, back then i didnt have the full oppertunity to keep my pfSense setup running, now i want to run it again and i cant seem to get it to work, might be my misdoing :)

    Anyway, i have a PPPoE connection to my ISP over fiber, for IPv4 i get a helper IP on my WAN and am able to route my IPv4 subnet myself (/28)

    For IPv6 the ISP routers use DHCPv6 and RA and i have an /56 registered/assigned.

    Im pretty sure i have my line setup properly (settings) but im getting weird errors in the log for one about not beeing able to set the correct settings.

    So, without further ado, hereby my configuration, maybe someone knows whats wrong:

    WAN:

    LAN:

    Interfaces:

    DHCPv6 (With RA on assisted mode)

    PPP Log (last 50 lines)
    http://pastebin.com/TwkMs3ma

    System log (last 50 lines)
    http://pastebin.com/VAHr5nvi

    PS:

    [2.1-RC0][root@wally.cockblock.nl]/root(3): ps auxw | grep dhcp
    root   38392  0.0  0.3  3264  1240  ??  Ss    9:08PM   0:00.02 /usr/local/sbin/dhcp6c -d -c /var/etc/dhcp6c_wan.conf -p /var/run/dhcp6c_pppoe0.pid pppoe0
    dhcpd  38630  0.0  1.7 11456  8248  ??  Ss    9:08PM   0:00.00 /usr/local/sbin/dhcpd -user dhcpd -group _dhcp -chroot /var/dhcpd -cf /etc/dhcpd.conf -pf /var/run/dhcpd.pid em0
    dhcpd  39212  0.0  1.5  9536  7400  ??  Ss    9:08PM   0:00.00 /usr/local/sbin/dhcpd -6 -user dhcpd -group _dhcp -chroot /var/dhcpd -cf /etc/dhcpdv6.conf -pf /var/run/dhcpdv6.pid em0
    root   39598  0.0  0.2  1520   828  ??  Ss    9:08PM   0:00.00 /usr/local/sbin/dhcpleases6 -c /usr/local/bin/php -f /usr/local/sbin/prefixes.php|/bin/sh -l /var/dhcpd/var/db/dhcpd6.leases
    root   56765  0.0  0.3  3412  1420  ??  Ss    9:08PM   0:00.03 /usr/sbin/syslogd -s -c -c -l /var/dhcpd/var/run/log -f /var/etc/syslog.conf
    [2.1-RC0][root@wally.cockblock.nl]/root(5): ps auxw | grep radvd
    root   40245  0.0  0.2  3288  1232  ??  S     9:08PM   0:00.00 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog
    
    

    dhcp6c_wan.conf
    http://pastebin.com/4sHK4YhW

    radvd.conf
    http://pastebin.com/iqFTFg9Z

    Ipconfig result:

    Ethernet adapter Local Area Connection:
    
       Connection-specific DNS Suffix  . : cockblock.nl
       Description . . . . . . . . . . . : Intel(R) 82579LM Gigabit Network Connecti
    on
       Physical Address. . . . . . . . . : E8-9D-87-3A-68-2B
       DHCP Enabled. . . . . . . . . . . : Yes
       Autoconfiguration Enabled . . . . : Yes
       Link-local IPv6 Address . . . . . : fe80::ea9d:87ff:fe3a:682b%11(Preferred)
       IPv4 Address. . . . . . . . . . . : 90.145.87.18(Preferred)
       Subnet Mask . . . . . . . . . . . : 255.255.255.240
       Lease Obtained. . . . . . . . . . : maandag 15 juli 2013 21:13:13
       Lease Expires . . . . . . . . . . : maandag 15 juli 2013 23:13:12
       Default Gateway . . . . . . . . . : fe80::280:91ff:fe7a:ff5e%11
                                           90.145.87.17
       DHCP Server . . . . . . . . . . . : 90.145.87.17
       DHCPv6 IAID . . . . . . . . . . . : 300457351
       DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-15-DC-0E-D6-E8-9D-87-3A-68-2B
    
       DNS Servers . . . . . . . . . . . : 2a02:120::53
                                           2a02:120:0:1::53
                                           90.145.87.17
       NetBIOS over Tcpip. . . . . . . . : Enabled
    
    

    PS, i dont care to much about my ip numbers out in the open, so no need to mask them imo, im lazy i know :)



  • So you really get IPv4 connectivity via PPPoE, but IPv6 connectivity via native DHCPv6 (i.e., not on top of PPPoE as well)?



  • Yeah, sorry, subject might be a bit misleading, i will edit it, WAN side my ISP uses DHCPv6 and RA. PPPoE is only for IPv4



  • Should be fixed on new snapshots or gitsync.

    The fix is https://github.com/pfsense/pfsense/commit/5128e0feb0f81c8cfa05a24370e250fcbe81a09e



  • @ermal

    Thanks ! i will test this tomorrow when a new snapshot is build !



  • Im sorry for the late reply, been busy.

    Anyway, it doesnt seem to be working, somehow it doesnt start the dhcp6c process anymore, the radvd starts fine.

    I've been rebooting a lot, sometimes it comes up, but 9/10 it doesnt, i cant seem to find any relevant logs, its almost like its not started at all.

    Since this also happened before i will first try to do a fresh install and check if it happens again/still.

    But maybe someone who knows more about this can also investigate if something is wrong, just let me know what information you need.



  • Unfortunately this patch broke IPv6 for me.

    Dutch XS4All provider requires IPv6 DHCP inside PPPoE tunnel
    Now the DHCP request is going over the physical interface (em0 for me) and it is not getting answered.

    [2.1-RC0][admin@firewall.familievink.nl]/var/etc(6): /usr/local/sbin/dhcp6c -f -d -D -c /var/etc/dhcp6c_wan.conf -p /var/run/dhcp6c_pppoe0.pid em0
    Jul/19/2013 08:46:50: gethwid: found an interface ath0 for DUID
    Jul/19/2013 08:46:50: get_duid: generated a new DUID: 00:01:00:01:19:7b:9d:5a:74:f0:6d:80:94:48
    Jul/19/2013 08:46:50: get_duid: saved generated DUID to /var/db/dhcp6c_duid
    Jul/19/2013 08:46:50: dhcp6_ctl_authinit: failed to open /usr/local/etc/dhcp6cctlkey: No such file or directory
    Jul/19/2013 08:46:50: client6_init: failed initialize control message authentication
    Jul/19/2013 08:46:50: client6_init: skip opening control port

    Here it gets stuck.

    After changing the interface to pppoe0 in the config file and at the dhcp6c command line the request gets answered.

    [2.1-RC0][admin@firewall.familievink.nl]/var/etc(6): /usr/local/sbin/dhcp6c -f -d -D -c /var/etc/dhcp6c_wan.conf -p /var/run/dhcp6c_pppoe0.pid pppoe0
    Jul/19/2013 08:46:50: gethwid: found an interface ath0 for DUID
    Jul/19/2013 08:46:50: get_duid: generated a new DUID: 00:01:00:01:19:7b:9d:5a:74:f0:6d:80:94:48
    Jul/19/2013 08:46:50: get_duid: saved generated DUID to /var/db/dhcp6c_duid
    Jul/19/2013 08:46:50: dhcp6_ctl_authinit: failed to open /usr/local/etc/dhcp6cctlkey: No such file or directory
    Jul/19/2013 08:46:50: client6_init: failed initialize control message authentication
    Jul/19/2013 08:46:50: client6_init: skip opening control port
    <snap>Jul/19/2013 08:46:50: dhcp6_reset_timer: reset a timer on pppoe0, state=INIT, timeo=0, retrans=383
    Jul/19/2013 08:46:50: client6_send: a new XID (cd2303) is generated
    Jul/19/2013 08:46:50: copy_option: set client ID (len 14)
    Jul/19/2013 08:46:50: copyout_option: set identity association
    Jul/19/2013 08:46:50: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:46:50: copy_option: set option request (len 4)
    Jul/19/2013 08:46:50: copyout_option: set IA_PD
    Jul/19/2013 08:46:50: client6_send: send solicit to ff02::1:2%pppoe0
    Jul/19/2013 08:46:50: dhcp6_reset_timer: reset a timer on pppoe0, state=SOLICIT, timeo=0, retrans=1088
    Jul/19/2013 08:46:51: client6_recv: receive advertise from fe80::2a0:a50f:fc78:5530%pppoe0 on pppoe0
    Jul/19/2013 08:46:51: dhcp6_get_options: get DHCP option client ID, len 14
    Jul/19/2013 08:46:51:   DUID: 00:01:00:01:19:7b:9d:5a:74:f0:6d:80:94:48
    Jul/19/2013 08:46:51: dhcp6_get_options: get DHCP option server ID, len 26
    Jul/19/2013 08:46:51:   DUID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00
    Jul/19/2013 08:46:51: dhcp6_get_options: get DHCP option IA_PD, len 41
    Jul/19/2013 08:46:51:   IA_PD: ID=0, T1=3600, T2=5760
    Jul/19/2013 08:46:51: copyin_option: get DHCP option IA_PD prefix, len 25
    Jul/19/2013 08:46:51: copyin_option:   IA_PD prefix: 2001:980:93ab::/48 pltime=7200 vltime=7200
    Jul/19/2013 08:46:51: dhcp6_get_options: get DHCP option identity association, len 18
    Jul/19/2013 08:46:51:   IA_NA: ID=0, T1=0, T2=0
    Jul/19/2013 08:46:51: copyin_option: get DHCP option status code, len 2
    Jul/19/2013 08:46:51:   status code: no addresses
    Jul/19/2013 08:46:51: dhcp6_get_options: get DHCP option DNS, len 32
    Jul/19/2013 08:46:51: client6_recvadvert: server ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00, pref=-1
    Jul/19/2013 08:46:51: client6_recvadvert: reset timer for pppoe0 to 0.791111
    Jul/19/2013 08:46:51: select_server: picked a server (ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00)
    Jul/19/2013 08:46:51: client6_send: a new XID (e1e230) is generated
    Jul/19/2013 08:46:51: copy_option: set client ID (len 14)
    Jul/19/2013 08:46:51: copy_option: set server ID (len 26)
    Jul/19/2013 08:46:51: copyout_option: set status code
    Jul/19/2013 08:46:51: copyout_option: set identity association
    Jul/19/2013 08:46:51: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:46:51: copy_option: set option request (len 4)
    Jul/19/2013 08:46:51: copyout_option: set IA_PD prefix
    Jul/19/2013 08:46:51: copyout_option: set IA_PD
    Jul/19/2013 08:46:51: client6_send: send request to ff02::1:2%pppoe0
    Jul/19/2013 08:46:51: dhcp6_reset_timer: reset a timer on pppoe0, state=REQUEST, timeo=0, retrans=977
    Jul/19/2013 08:46:52: client6_recv: receive reply from fe80::2a0:a50f:fc78:5530%pppoe0 on pppoe0
    Jul/19/2013 08:46:52: dhcp6_get_options: get DHCP option client ID, len 14
    Jul/19/2013 08:46:52:   DUID: 00:01:00:01:19:7b:9d:5a:74:f0:6d:80:94:48
    Jul/19/2013 08:46:52: dhcp6_get_options: get DHCP option server ID, len 26
    Jul/19/2013 08:46:52:   DUID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00
    Jul/19/2013 08:46:52: dhcp6_get_options: get DHCP option IA_PD, len 41
    Jul/19/2013 08:46:52:   IA_PD: ID=0, T1=3600, T2=5760
    Jul/19/2013 08:46:52: copyin_option: get DHCP option IA_PD prefix, len 25
    Jul/19/2013 08:46:52: copyin_option:   IA_PD prefix: 2001:980:93ab::/48 pltime=7200 vltime=7200
    Jul/19/2013 08:46:52: dhcp6_get_options: get DHCP option identity association, len 18
    Jul/19/2013 08:46:52:   IA_NA: ID=0, T1=0, T2=0
    Jul/19/2013 08:46:52: copyin_option: get DHCP option status code, len 2
    Jul/19/2013 08:46:52:   status code: no addresses
    Jul/19/2013 08:46:52: dhcp6_get_options: get DHCP option DNS, len 32
    Jul/19/2013 08:46:52: info_printf: nameserver[0] 2001:888:0:6::66
    Jul/19/2013 08:46:52: info_printf: nameserver[1] 2001:888:0:9::99
    Jul/19/2013 08:46:52: get_ia: make an IA: PD-0
    Jul/19/2013 08:46:52: update_prefix: create a prefix 2001:980:93ab::/48 pltime=7200, vltime=7200
    Jul/19/2013 08:46:52: ifaddrconf: add an address 2001:980:93ab:afaf:fe:4aff:fec8:9c00/64 on bridge0
    Jul/19/2013 08:46:52: get_ia: make an IA: NA-0
    Jul/19/2013 08:46:52: update_ia: status code for NA-0: no addresses
    Jul/19/2013 08:46:52: update_ia: IA NA-0 is invalidated
    Jul/19/2013 08:46:52: remove_ia: remove an IA: NA-0
    Jul/19/2013 08:46:52: dhcp6_reset_timer: reset a timer on pppoe0, state=INIT, timeo=0, retrans=915
    Jul/19/2013 08:46:52: client6_recvreply: executes /var/etc/dhcp6c_wan_script.sh
    Jul/19/2013 08:46:52: client6_script: script "/var/etc/dhcp6c_wan_script.sh" terminated
    Jul/19/2013 08:46:52: dhcp6_remove_event: removing an event on pppoe0, state=REQUEST
    Jul/19/2013 08:46:52: dhcp6_remove_event: removing server (ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00)
    Jul/19/2013 08:46:52: client6_recvreply: got an expected reply, sleeping.
    Jul/19/2013 08:46:53: client6_send: a new XID (3abe6) is generated
    Jul/19/2013 08:46:53: copy_option: set client ID (len 14)
    Jul/19/2013 08:46:53: copyout_option: set identity association
    Jul/19/2013 08:46:53: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:46:53: copy_option: set option request (len 4)
    Jul/19/2013 08:46:53: client6_send: send solicit to ff02::1:2%pppoe0
    Jul/19/2013 08:46:53: dhcp6_reset_timer: reset a timer on pppoe0, state=SOLICIT, timeo=0, retrans=1079
    Jul/19/2013 08:46:54: copy_option: set client ID (len 14)
    Jul/19/2013 08:46:54: copyout_option: set identity association
    Jul/19/2013 08:46:54: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:46:54: copy_option: set option request (len 4)
    Jul/19/2013 08:46:54: client6_send: send solicit to ff02::1:2%pppoe0
    Jul/19/2013 08:46:54: dhcp6_reset_timer: reset a timer on pppoe0, state=SOLICIT, timeo=1, retrans=2086
    Jul/19/2013 08:46:56: copy_option: set client ID (len 14)
    Jul/19/2013 08:46:56: copyout_option: set identity association
    Jul/19/2013 08:46:56: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:46:56: copy_option: set option request (len 4)
    Jul/19/2013 08:46:56: client6_send: send solicit to ff02::1:2%pppoe0
    Jul/19/2013 08:46:56: dhcp6_reset_timer: reset a timer on pppoe0, state=SOLICIT, timeo=2, retrans=4252

    As you can see the prefix delegation is working but the DHCP server is not offering an IP address. This is indeed according the specifications of XS4all.
    The DHCP client keeps trying to get an address and IPv6 will never get active.
    The wan configuration has a check box for only requesting the PD and not the IA but this is not working. Ater checking the box and committing the change the box returns unchecked.
    Also the change is not reflected in the config file, so I decided to change the config file by hand.

    After changing the dhcp6c_wan.conf the DHCP process is working

    working dhcp6c_wan.conf:

    interface pppoe0 {
           send ia-pd 0;   # request prefix delegation
           send rapid-commit;
           request domain-name-servers;
           request domain-name;
           script "/var/etc/dhcp6c_wan_script.sh"; # we'd like some nameservers please
    };
    id-assoc pd 0 {
    };

    [2.1-RC0][admin@firewall.familievink.nl]/var/etc(24): /usr/local/sbin/dhcp6c -d -D -f -c /var/etc/dhcp6c_wan.conf -p /var/run/dhcp6c_pppoe0.pid pppoe0
    Jul/19/2013 08:35:49: get_duid: extracted an existing DUID from /var/db/dhcp6c_duid: 00:01:00:01:19:7b:8a:da:74:f0:6d:80:94:48
    Jul/19/2013 08:35:49: dhcp6_ctl_authinit: failed to open /usr/local/etc/dhcp6cctlkey: No such file or directory
    Jul/19/2013 08:35:49: client6_init: failed initialize control message authentication
    Jul/19/2013 08:35:49: client6_init: skip opening control port
    <snap>Jul/19/2013 08:35:49: configure_pool: called
    Jul/19/2013 08:35:49: clear_poolconf: called
    Jul/19/2013 08:35:49: dhcp6_reset_timer: reset a timer on pppoe0, state=INIT, timeo=0, retrans=383
    Jul/19/2013 08:35:50: client6_send: a new XID (d48379) is generated
    Jul/19/2013 08:35:50: copy_option: set client ID (len 14)
    Jul/19/2013 08:35:50: copy_option: set rapid commit (len 0)
    Jul/19/2013 08:35:50: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:35:50: copy_option: set option request (len 4)
    Jul/19/2013 08:35:50: copyout_option: set IA_PD
    Jul/19/2013 08:35:50: client6_send: send solicit to ff02::1:2%pppoe0
    Jul/19/2013 08:35:50: dhcp6_reset_timer: reset a timer on pppoe0, state=SOLICIT, timeo=0, retrans=1088
    Jul/19/2013 08:35:50: client6_recv: receive advertise from fe80::2a0:a50f:fc78:5530%pppoe0 on pppoe0
    Jul/19/2013 08:35:50: dhcp6_get_options: get DHCP option client ID, len 14
    Jul/19/2013 08:35:50:   DUID: 00:01:00:01:19:7b:8a:da:74:f0:6d:80:94:48
    Jul/19/2013 08:35:50: dhcp6_get_options: get DHCP option server ID, len 26
    Jul/19/2013 08:35:50:   DUID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00
    Jul/19/2013 08:35:50: dhcp6_get_options: get DHCP option IA_PD, len 41
    Jul/19/2013 08:35:50:   IA_PD: ID=0, T1=3600, T2=5760
    Jul/19/2013 08:35:50: copyin_option: get DHCP option IA_PD prefix, len 25
    Jul/19/2013 08:35:50: copyin_option:   IA_PD prefix: 2001:980:93ab::/48 pltime=7200 vltime=7200
    Jul/19/2013 08:35:50: dhcp6_get_options: get DHCP option DNS, len 32
    Jul/19/2013 08:35:50: client6_recvadvert: server ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00, pref=-1
    Jul/19/2013 08:35:50: client6_recvadvert: unexpected advertise
    Jul/19/2013 08:35:50: client6_recvadvert: reset timer for pppoe0 to 0.792155
    Jul/19/2013 08:35:51: select_server: picked a server (ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00)
    Jul/19/2013 08:35:51: client6_send: a new XID (ad175a) is generated
    Jul/19/2013 08:35:51: copy_option: set client ID (len 14)
    Jul/19/2013 08:35:51: copy_option: set server ID (len 26)
    Jul/19/2013 08:35:51: copy_option: set elapsed time (len 2)
    Jul/19/2013 08:35:51: copy_option: set option request (len 4)
    Jul/19/2013 08:35:51: copyout_option: set IA_PD prefix
    Jul/19/2013 08:35:51: copyout_option: set IA_PD
    Jul/19/2013 08:35:51: client6_send: send request to ff02::1:2%pppoe0
    Jul/19/2013 08:35:51: dhcp6_reset_timer: reset a timer on pppoe0, state=REQUEST, timeo=0, retrans=977
    Jul/19/2013 08:35:51: client6_recv: receive reply from fe80::2a0:a50f:fc78:5530%pppoe0 on pppoe0
    Jul/19/2013 08:35:51: dhcp6_get_options: get DHCP option client ID, len 14
    Jul/19/2013 08:35:51:   DUID: 00:01:00:01:19:7b:8a:da:74:f0:6d:80:94:48
    Jul/19/2013 08:35:51: dhcp6_get_options: get DHCP option server ID, len 26
    Jul/19/2013 08:35:51:   DUID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00
    Jul/19/2013 08:35:51: dhcp6_get_options: get DHCP option IA_PD, len 41
    Jul/19/2013 08:35:51:   IA_PD: ID=0, T1=3600, T2=5760
    Jul/19/2013 08:35:51: copyin_option: get DHCP option IA_PD prefix, len 25
    Jul/19/2013 08:35:51: copyin_option:   IA_PD prefix: 2001:980:93ab::/48 pltime=7200 vltime=7200
    Jul/19/2013 08:35:51: dhcp6_get_options: get DHCP option DNS, len 32
    Jul/19/2013 08:35:51: info_printf: nameserver[0] 2001:888:0:6::66
    Jul/19/2013 08:35:51: info_printf: nameserver[1] 2001:888:0:9::99
    Jul/19/2013 08:35:51: get_ia: make an IA: PD-0
    Jul/19/2013 08:35:51: update_prefix: create a prefix 2001:980:93ab::/48 pltime=7200, vltime=7200
    Jul/19/2013 08:35:51: client6_recvreply: executes /var/etc/dhcp6c_wan_script.sh
    Jul/19/2013 08:35:52: client6_script: script "/var/etc/dhcp6c_wan_script.sh" terminated
    Jul/19/2013 08:35:52: dhcp6_remove_event: removing an event on pppoe0, state=REQUEST
    Jul/19/2013 08:35:52: dhcp6_remove_event: removing server (ID: 00:02:00:00:05:83:4a:4e:31:31:45:41:33:30:42:41:46:41:00:00:00:00:00:00:00:00)
    Jul/19/2013 08:35:52: client6_recvreply: got an expected reply, sleeping.

    The only things that is left is changing the IPv6 default gateway interface which was pointing to em0 to use pppoe0 and IPv6 runs again.

    So, to get IPv6 running again the DHCPv6 should go over pppoe and it should not request an IP address but only the delegation.

    -Andre</snap></snap>



  • @avink

    You are a lifesaver, this is indeed whats happening, i copied your settings and everything works ok now !

    However, still 2 "bugs" for me:

    1. dhcp6c is not started for me, i have to run it manually to get it running.
    2. i cant seem to save the option "Request only a IPv6 prefix" it defaults to false and the config/backup changes say "/interfaces.php made unknown change"

    Can anyone point me to the culprid for point 1 ?



  • I have to agree. the dhcp6c daemon is not starting indeed. Have to start it manually.

    I already mentioned in my previous mail that the  "Request only a IPv6 prefix" option is not working.

    Hope these issues will be fixed soon.

    -Andre



  • Did you create issue's for it in redmine perhaps ?

    If not i will create legit issue's, less chance they are overlooked.

    As for the DHCP6 option i think there should be an added option, something like PPPoE for IPv6, the current DHCP6 option was obviously meant to be running on the network card instead the PPPoE interface. probably solving just that also solves a lot of the other problems (gateway thats wrong for example).



  • Yes,

    I created a redmine issue.



  • Request only a IPv6 prefix - checkbox saving fixed in pull request https://github.com/pfsense/pfsense/pull/716
    1 dumb little bug fixed, a few more to sort out I suspect…
    Someone try this little fix and report what good or havoc results now that the setting can be enabled.



  • I see the pull request has been merged.
    Will check the next release.

    But I doubt this fixes all issues. After the previous change the upstream interface will be selected instead of the pppoe interface.
    I think this has to be changed too, or there has to be a selection box to select the upstream interface or the pppoe interface.



  • Just tested the 2.1-RC0 (amd64) built on Sun Jul 21 09:56:52 EDT 2013 snapshot.
    Neither the checkbox for PD only nor the pppoe interface selection is working.

    When I check the checkbox and save, it will return unchecked.
    Also the selection is not reflected in the config nor in the dhcp6c_wan.conf.

    For now I rolled back the changes to /etc/inc/interfaces.inc to select the pppoe interface.
    After saving the config I edit the dhcp6c_wan.conf file by hand and restart the daemon.

    Then I get the IPv6 PD again.



  • Just tested the 2.1-RC0 (amd64) built on Sun Jul 21 09:56:52 EDT 2013 snapshot.
    Neither the checkbox for PD only nor the pppoe interface selection is working.

    When I check the checkbox and save, it will return unchecked.

    This much should be working in that snapshot. After the checkbox is successfully checked, I can't say if the downstream code will work well or not, but the checkbox state should be saved in the config.
    Did you put some other test version of interfaces.php onto the system? or?
    Edit: Actually the commit https://github.com/pfsense/pfsense/commit/3dd6ed1ac110b3741c74a8845f30cc33379941a5 only got into the build at around 21:46 (12 hours later):

    Sun Jul 21 21:46:28 EDT 2013 -|- >>> Starting builder run #9...
    Sun Jul 21 21:46:29 EDT 2013 -|- >>> Not building pfPorts at all during this snapshot builder looped run...
    Sun Jul 21 21:46:29 EDT 2013 -|- >>> Last known commit  Phil Davis  - 3dd6ed1ac110b3741c74a8845f30cc33379941a5
    

    So you need the next snapshot, or gitsync, or make the edit by hand…



  • Tried the latest snapshot (built on Mon Jul 22 03:26:48 EDT 2013).
    Still the 'request PD only' option does not work. The checkbox is not set after saving.
    Also the setting is not reflected in the dhcp6c_wan.conf

    To get IPv6 running I have to roll-back the fix https://github.com/pfsense/pfsense/commit/5128e0feb0f81c8cfa05a24370e250fcbe81a09e.

    Then save the config so the correct inteface is used.
    Then I have to edit the dhcp6c_wan.conf and start the dhcp6c daemon.



  • I was nearly going to tell you you are mad, then I tried it on the new snapshot, didn't work!!! After a bit of hair pulling I discovered that I had used the version from Github Main when testing (I had test configs that I had saved that had the setting set, so it did work). Compared Main to the 2.1 branch. The version committed to 2.1 branch had an different error - the code applying the setting was in the wrong IPv6 type case statement. So that never worked in 2.1, but it worked in Main.
    This (should) fix it:
    https://github.com/pfsense/pfsense/pull/723
    I tested with the version I submitted to the 2.1 branch this time :)



  • I don't care to be called mad  ;)  I applied the patch by hand and yes now the checkbox is working.
    Let's wait for the next snapshot. I'm fairly convinced that the parent interface is chosen instead of the pppoe interface.

    we'll know in a few hours.



  • There is an option to click for cases like the XS4All ISP.
    Click that and you will have correct connectivity restored as previously.

    The option is with the description "Request a IPv6 prefix/information through the IPv4 connectivity link"



  • I'll check the next build.
    Results by tomorrow morning.



  • @ermal:

    The option is with the description "Request a IPv6 prefix/information through the IPv4 connectivity link"

    Probably I need the same option for my M-Net FTTB connection. I'm running 2.1-RC0 (amd64)
    built on Mon Jul 22 15:44:15 EDT 2013 FreeBSD 8.3-RELEASE-p8 but I can't find that option. Is this not yet in or do I use a wrong release?

    bye
    Darky



  • Ermal committed the new option 7 hours ago (as I type) and a build started about 3/4 hours ago. It looks like it is finishing just now. It should have a timestamp around 23 July 2013 10:00. Try that.



  • Thanks for your quick explanation I'll try the new snapshot, as soon as it gets pushed to the update server :-)



  • @ermal:

    The option is with the description "Request a IPv6 prefix/information through the IPv4 connectivity link"

    Just signed up to say that this worked for me.

    IPv6 (native) from my ISP was working on 2.1 beta and broke when I went to the RC, came back straight away with whatever this setting does :)



  • Unfortunately the amd64 build didn't get updated, it still has a last modified date of July 22nd

    Therefore I manually checked out the interface.inc and interface.php files and replaced them on the box. The interface.php had a whitspace_error but this was easily fixed. The option did then appear on my box and I checked it. I still didn't receive an ipv6 prefix. Maybe I did forget sth. to patch, so I will way until the snapshot-build gets officially updated.

    bye
    Darky



  • Just tested the latest snapshot. (built on Wed Jul 24 15:12:27 EDT 2013 ).
    I can confirm that both options work as expected.

    X Request a IPv6 prefix/information through the IPv4 connectivity link
    X Only request a IPv6 prefix, do not request a IPv6 address

    both options checked. IPv6 is working again without changing the config/interfaces.inc manually.

    The only thing that is left is that after a reboot the dhcp6c daemon is not started automatically.
    I think there is another thread about it.

    I will do some testing but in the meanwhile I'll make a shellscript that checks if the daemon is running. If not it will (re)start it.



  • @avink,

    the issue you have is not related to this.
    Can you please open another thread with more details.



  • I will.

    But I want do do some checking before I do so.
    Need to do a FW reboot to check but there are too many people relying on an active connection now.
    Need to schedule this for this afternoon (CET)



  • I was away for a little while, what a nice surprise seeing that this is solved and multiple people even took time to test/register to confirm this.

    Great job all and thanks a lot, i will update my firewall tonight to see if this is fixed.

    PS, also have the dhcp6c not starting problem so i will update in a new thread as well. (and offc. test).



  • Just installed the latest build, like the rest i can confirm that everything is solved !

    PS, DHCP6C still isnt started, but thats not really a problem for me at the moment, would still require some investigation.