Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Dhcpv6 ipv6 ip via tethered Jetpack MiFi 7730L using if_urndis.ko

    IPv6
    1
    3
    1.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      snowman
      last edited by

      Hello! Im running pfsense 2.3.3. Im unable to get a dhcpv6 address from my Jetpack MiFi 7730L to pfsense wan port ue0. Ive added the if_urndis.ko kernel module by hand to /boot/kernel and added it via loader.conf. Ive rebooted and set the resulting ue0 interface as the wan. Turned on ipv4 dhcp (ipv4 connectivity works great. That is fine) and ipv6 dhcp. Ive set /64 as the dhcp prefix length. Ive checked and unchecked send ipv6 prefix hint.

      dhcpv6 wont start unless I check the box do not wait for RA which is odd. Probably part of the problem.
      Ive checked the link local IP on ue0 and I AM able to ping the link local ip on the Jetpack mifi
      If I pair the jetpack via USB to my Linux laptop it comes up and I DO get an ipv6 global ip(s) so I know its working for ipv6
      I am unable to ping ff01::2 or ff02::2 (forgot which of the multicast ips I should be able to ping). I think that is a problem. I am able to ping ff01::1
      Ive tried killing the dhcpv6 DUID and restarting dhcpv6. Nope.
      I have enabled ipv6 via the general/advanced settings (I wouldnt be able to ping link local addresses otherwise)
      Is ipv6 not fully functional for freebsd if_urndis.ko in pfsense?

      Here is an excerpt from dhcp.log for dhcp6c only
      Mar  4 17:00:30 plunk dhcp6c[98556]: extracted an existing DUID from /var/db/dhcp6c_duid: 00:01:00:01:20:4d:f3:f3:00:0c:29:8c:91:73
      Mar  4 17:00:30 plunk dhcp6c[98556]: failed to open /usr/local/etc/dhcp6cctlkey: No such file or directory
      Mar  4 17:00:30 plunk dhcp6c[98556]: failed initialize control message authentication
      Mar  4 17:00:30 plunk dhcp6c[98556]: skip opening control port
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>[interface] (9)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <5>[ue0] (3)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>begin of closure [{] (1)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>[script] (6)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>["/var/etc/dhcp6c_wan_script.sh"] (31)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>end of sentence [;] (1)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>end of closure [}] (1)
      Mar  4 17:00:30 plunk dhcp6c[98556]: <3>end of sentence [;] (1)
      Mar  4 17:00:30 plunk dhcp6c[98556]: called
      Mar  4 17:00:30 plunk dhcp6c[98556]: called
      Mar  4 17:00:30 plunk dhcp6c[98856]: reset a timer on ue0, state=INIT, timeo=0, retrans=383
      Mar  4 17:00:31 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:00:31 plunk dhcp6c[98856]: a new XID (63c80f) is generated
      Mar  4 17:00:31 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:00:31 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:00:31 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:00:31 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=0, retrans=1088
      Mar  4 17:00:32 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:00:32 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:00:32 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:00:32 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:00:32 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=1, retrans=2151
      Mar  4 17:00:34 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:00:34 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:00:34 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:00:34 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:00:34 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=2, retrans=4283
      Mar  4 17:00:38 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:00:38 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:00:38 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:00:38 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:00:38 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=3, retrans=8905
      Mar  4 17:00:47 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:00:47 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:00:47 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:00:47 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:00:47 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=4, retrans=17217
      Mar  4 17:01:05 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:01:05 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:01:05 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:01:05 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:01:05 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=5, retrans=35098
      Mar  4 17:01:40 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:01:40 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:01:40 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:01:40 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:01:40 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=6, retrans=68413
      Mar  4 17:02:48 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:02:48 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:02:48 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:02:48 plunk dhcp6c[98856]: send solicit to ff02::1:2%ue0
      Mar  4 17:02:48 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=7, retrans=115788
      Mar  4 17:04:44 plunk dhcp6c[98856]: Sending Solicit
      Mar  4 17:04:44 plunk dhcp6c[98856]: set client ID (len 14)
      Mar  4 17:04:44 plunk dhcp6c[98856]: set elapsed time (len 2)
      Mar  4 17:04:44 plunk dhcp6c[98856]: transmit failed: No route to host
      Mar  4 17:04:44 plunk dhcp6c[98856]: reset a timer on ue0, state=SOLICIT, timeo=8, retrans=125052
      Mar  4 17:06:47 plunk dhcp6c[11024]: extracted an existing DUID from /var/db/dhcp6c_duid: 00:01:00:01:20:4d:f3:f3:00:0c:29:8c:91:73
      Mar  4 17:06:47 plunk dhcp6c[11024]: failed to open /usr/local/etc/dhcp6cctlkey: No such file or directory
      Mar  4 17:06:47 plunk dhcp6c[11024]: failed initialize control message authentication
      Mar  4 17:06:47 plunk dhcp6c[11024]: skip opening control port
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>[interface] (9)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <5>[ue0] (3)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>begin of closure [{] (1)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>[script] (6)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>["/var/etc/dhcp6c_wan_script.sh"] (31)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>end of sentence [;] (1)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>end of closure [}] (1)
      Mar  4 17:06:47 plunk dhcp6c[11024]: <3>end of sentence [;] (1)
      Mar  4 17:06:47 plunk dhcp6c[11024]: called
      Mar  4 17:06:47 plunk dhcp6c[11024]: called
      Mar  4 17:06:47 plunk dhcp6c[11229]: reset a timer on ue0, state=INIT, timeo=0, retrans=383
      Mar  4 17:06:48 plunk dhcp6c[11229]: Sending Solicit
      Mar  4 17:06:48 plunk dhcp6c[11229]: a new XID (b408e7) is generated
      Mar  4 17:06:48 plunk dhcp6c[11229]: set client ID (len 14)
      Mar  4 17:06:48 plunk dhcp6c[11229]: set elapsed time (len 2)
      Mar  4 17:06:48 plunk dhcp6c[11229]: transmit failed: Can't assign requested address
      Mar  4 17:06:48 plunk dhcp6c[11229]: reset a timer on ue0, state=SOLICIT, timeo=0, retrans=1088
      Mar  4 17:06:49 plunk dhcp6c[11229]: Sending Solicit
      Mar  4 17:06:49 plunk dhcp6c[11229]: set client ID (len 14)
      Mar  4 17:06:49 plunk dhcp6c[11229]: set elapsed time (len 2)
      Mar  4 17:06:49 plunk dhcp6c[11229]: send solicit to ff02::1:2%ue0
      Mar  4 17:06:49 plunk dhcp6c[11229]: reset a timer on ue0, state=SOLICIT, timeo=1, retrans=2151
      Mar  4 17:06:51 plunk dhcp6c[11229]: Sending Solicit
      Mar  4 17:06:51 plunk dhcp6c[11229]: set client ID (len 14)
      Mar  4 17:06:51 plunk dhcp6c[11229]: set elapsed time (len 2)
      Mar  4 17:06:51 plunk dhcp6c[11229]: send solicit to ff02::1:2%ue0

      This is the dhcp6c_wan.conf file that is generated by the web gui. Maybe there is a clue in here. I dont know what it should look like. Im trusting the gui is generating it correctly.

      interface ue0 {
              send ia-na 0;  # request stateful address
              send ia-pd 0;  # request prefix delegation
              request domain-name-servers;
              request domain-name;
              script "/var/etc/dhcp6c_wan_script.sh"; # we'd like some nameservers please
      };
      id-assoc na 0 { };
      id-assoc pd 0 {
              prefix-interface vmx1 {
                      sla-id 0;
                      sla-len 0;
              };
      };

      Im kind of stuck. Thanks for any info.

      1 Reply Last reply Reply Quote 0
      • S
        snowman
        last edited by

        OK So I switched it to SLAAC on the wan interface to see if the mifi was using slaac. Not sure but the tcpdump for slaac shows it sending router solicitations to ff02::2: (notice nothing after the last colon). Shouldnt it be crafting an ending and not sending these to an incomplete ipv6 multicast address?

        tcpdump -i ue0 -s 512 -vv ip6 or proto ipv6
        tcpdump: listening on ue0, link-type EN10MB (Ethernet), capture size 512 bytes
        02:45:07.902438 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::215:ffff:fe04:8155 > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16
                  source link-address option (1), length 8 (1): 00:15:ff:04:81:55
                    0x0000:  0015 ff04 8155
        02:45:11.912736 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::215:ffff:fe04:8155 > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16
                  source link-address option (1), length 8 (1): 00:15:ff:04:81:55
                    0x0000:  0015 ff04 8155
        02:45:15.922719 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 16) fe80::215:ffff:fe04:8155 > ff02::2: [icmp6 sum ok] ICMP6, router solicitation, length 16
                  source link-address option (1), length 8 (1): 00:15:ff:04:81:55
                    0x0000:  0015 ff04 8155

        Here is the tcpdump when I switch it to dhcpv6… not much better.

        02:27:34.918262 IP6 (hlim 1, next-header UDP (17) payload length: 105) fe80::215:ffff:fe04:8155.dhcpv6-client > ff02::1:2.dhcpv6-server: [udp sum ok] dhcp6 solicit (xid=ad327d (client-ID hwaddr/time type 1 time 541996795 000c298c9173) (IA_NA IAID:0 T1:0 T2:0) (elapsed-time 65535) (option-request DNS-server DNS-search-list) (IA_PD IAID:0 T1:0 T2:0 (IA_PD-prefix ::/64 pltime:4294967295 vltime:4294967295)))
        02:27:44.696294 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) fe80::d478:a2ff:febf:ce18 > fe80::215:ffff:fe04:8155: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has fe80::215:ffff:fe04:8155
                  source link-address option (1), length 8 (1): 00:15:ff:da:96:90
                    0x0000:  0015 ffda 9690
        02:27:44.696365 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 24) fe80::215:ffff:fe04:8155 > fe80::d478:a2ff:febf:ce18: [icmp6 sum ok] ICMP6, neighbor advertisement, length 24, tgt is fe80::215:ffff:fe04:8155, Flags [router, solicited]
        02:27:49.692676 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) fe80::215:ffff:fe04:8155 > fe80::d478:a2ff:febf:ce18: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has fe80::d478:a2ff:febf:ce18
                  source link-address option (1), length 8 (1): 00:15:ff:04:81:55
                    0x0000:  0015 ff04 8155
        02:27:49.693865 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 24) fe80::d478:a2ff:febf:ce18 > fe80::215:ffff:fe04:8155: [icmp6 sum ok] ICMP6, neighbor advertisement, length 24, tgt is fe80::d478:a2ff:febf:ce18, Flags [router, solicited]
        02:29:26.813250 IP6 (hlim 1, next-header UDP (17) payload length: 105) fe80::215:ffff:fe04:8155.dhcpv6-client > ff02::1:2.dhcpv6-server: [udp sum ok] dhcp6 solicit (xid=ad327d (client-ID hwaddr/time type 1 time 541996795 000c298c9173) (IA_NA IAID:0 T1:0 T2:0) (elapsed-time 65535) (option-request DNS-server DNS-search-list) (IA_PD IAID:0 T1:0 T2:0 (IA_PD-prefix ::/64 pltime:4294967295 vltime:4294967295))

        1 Reply Last reply Reply Quote 0
        • S
          snowman
          last edited by

          Below is the ipv6 tcpdump for Linux where things fly right off and work perfect. Note… it doesnt seem like its using dhcpv6. dhcpv6 carries on similar to pfsense... but avahi jumps in and joins the multicast groups and seems to go for it. In the end for dhcpv6 it seems to time out in the end after avahi completes ipv6 setup

          sudo tcpdump -i wlp4s0 -s 512 -vv ip6 or proto ipv6
          tcpdump: listening on wlp4s0, link-type EN10MB (Ethernet), capture size 512 bytes
          02:31:00.241561 IP6 (hlim 1, next-header Options (0) payload length: 36) :: > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 1 group record(s) [gaddr ff02::fb to_ex { }]
          02:31:03.517549 IP6 (hlim 1, next-header Options (0) payload length: 56) :: > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 2 group record(s) [gaddr ff02::1:ffad:3c2f to_ex { }] [gaddr ff02::fb to_ex { }]
          02:31:03.681528 IP6 (hlim 1, next-header Options (0) payload length: 56) :: > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 2 group record(s) [gaddr ff02::1:ffad:3c2f to_ex { }] [gaddr ff02::fb to_ex { }]
          02:31:03.781541 IP6 (hlim 1, next-header Options (0) payload length: 36) :: > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 1 group record(s) [gaddr ff02::fb to_in { }]
          02:31:04.253554 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 24) :: > ff02::1:ffad:3c2f: [icmp6 sum ok] ICMP6, neighbor solicitation, length 24, who has fe80::f266:e0df:ead:3c2f
          02:31:04.649543 IP6 (hlim 1, next-header Options (0) payload length: 36) :: > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 1 group record(s) [gaddr ff02::fb to_in { }]
          02:31:05.253655 IP6 (hlim 1, next-header Options (0) payload length: 36) fe80::f266:e0df:ead:3c2f > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 1 group record(s) [gaddr ff02::1:ffad:3c2f to_ex { }]
          02:31:05.261567 IP6 (hlim 1, next-header Options (0) payload length: 36) fe80::f266:e0df:ead:3c2f > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 1 group record(s) [gaddr ff02::fb to_ex { }]
          02:31:05.269567 IP6 (hlim 1, next-header Options (0) payload length: 56) fe80::f266:e0df:ead:3c2f > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 2 group record(s) [gaddr ff02::fb to_ex { }] [gaddr ff02::1:ffad:3c2f to_ex { }]
          02:31:05.278445 IP6 (flowlabel 0x8c4b0, hlim 255, next-header ICMPv6 (58) payload length: 8) fe80::f266:e0df:ead:3c2f > ip6-allrouters: [icmp6 sum ok] ICMP6, router solicitation, length 8
          02:31:05.316728 IP6 (flowlabel 0x52205, hlim 255, next-header UDP (17) payload length: 160) fe80::f266:e0df:ead:3c2f.mdns > ff02::fb.mdns: [udp sum ok] 0 [2q] [2n] ANY (QM)? f.2.c.3.d.a.e.0.f.d.0.e.6.6.2.f.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa. ANY (QM)? dell3350.local. ns: dell3350.local. AAAA fe80::f266:e0df:ead:3c2f, f.2.c.3.d.a.e.0.f.d.0.e.6.6.2.f.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa. PTR dell3350.local. (152)
          02:31:05.354192 IP6 (flowlabel 0x52205, hlim 255, next-header UDP (17) payload length: 53) fe80::f266:e0df:ead:3c2f.mdns > ff02::fb.mdns: [udp sum ok] 0 [2q] PTR (QM)? _ipps._tcp.local. PTR (QM)? _ipp._tcp.local. (45)
          02:31:05.386776 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 64) fe80::d478:a2ff:febf:ce18 > ip6-allnodes: [icmp6 sum ok] ICMP6, router advertisement, length 64
                  hop limit 64, Flags [other stateful], pref high, router lifetime 1800s, reachable time 30000s, retrans time 1000s
                    prefix info option (3), length 32 (4): 2600:1008:b102:62de::/64, Flags [onlink, auto], valid time 86400s, pref. time 14400s
                      0x0000:  40c0 0001 5180 0000 3840 0000 0000 2600
                      0x0010:  1008 b102 62de 0000 0000 0000 0000
                    mtu option (5), length 8 (1):  1428
                      0x0000:  0000 0000 0594
                    source link-address option (1), length 8 (1): 00:15:ff:da:96:90
                      0x0000:  0015 ffda 9690
          02:31:05.397557 IP6 (hlim 1, next-header Options (0) payload length: 96) fe80::f266:e0df:ead:3c2f > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast listener report v2, 4 group record(s) [gaddr ff02::1:ffc1:e02 to_ex { }] [gaddr ff02::1:ff28:1351 to_ex { }] [gaddr ff02::fb to_ex { }] [gaddr ff02::1:ffad:3c2f to_ex { }]
          02:31:05.540616 IP6 (flowlabel 0xbd230, hlim 1, next-header UDP (17) payload length: 54) fe80::f266:e0df:ead:3c2f.dhcpv6-client > ff02::1:2.dhcpv6-server: [udp sum ok] dhcp6 inf-req (xid=511867 (client-ID type 4) (option-request DNS-server DNS-search-list DNS-server DNS-search-list client-ID) (elapsed-time 0))
          02:31:05.567388 IP6 (flowlabel 0x52205, hlim 255, next-header UDP (17) payload length: 160) fe80::f266:e0df:ead:3c2f.mdns > ff02::fb.mdns: [udp sum ok] 0 [2q] [2n] ANY (QM)? f.2.c.3.d.a.e.0.f.d.0.e.6.6.2.f.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa. ANY (QM)? dell3350.local. ns: dell3350.local. AAAA fe80::f266:e0df:ead:3c2f, f.2.c.3.d.a.e.0.f.d.0.e.6.6.2.f.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa. PTR dell3350.local. (152)
          02:31:05.605549 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 24) :: > ff02::1:ffc1:e02: [icmp6 sum ok] ICMP6, neighbor solicitation, length 24, who has 2600:1008:b102:62de:f532:60:42c1:e02
          02:31:05.697521 IP6 (hlim 1, next-header Options (0) payload length: 96) fe80::f266:e0df:ead:3c2f > ff02::16: HBH (rtalert: 0x0000) (padn) [icmp6 sum ok] ICMP6, multicast liste

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.