Navigation

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

    RFC 2136 DynDNS and IPv6

    IPv6
    4
    9
    4736
    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.
    • F
      flic last edited by

      Is there any way to hack the RFC 2136 DynDNS updater to update both the A and AAAA record?

      1 Reply Last reply Reply Quote 0
      • jimp
        jimp Rebel Alliance Developer Netgate last edited by

        I don't think anyone has touched that yet. There probably is, but I don't think any of us have such a DNS setup to work/test with at the moment.

        We have postponed DynDNS support for IPv6 for 2.2 because most providers simply do not support it yet. The only one we could find so far was he.net's hosted dns, the RFC method seems to get ignored a lot. :-)

        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

        Need help fast? Netgate Global Support!

        Do not Chat/PM for help!

        1 Reply Last reply Reply Quote 0
        • F
          flic last edited by

          @jimp:

          the RFC method seems to get ignored a lot. :-)

          That I've kinda noticed… :) Too bad since it's the best way to handle dynamic updates if you run your own DNS.

          I'm guessing you're using nsupdate somewhere beneath the surface to get this to work? I'd love to take a peek at it if you could just point me in the right direction?

          1 Reply Last reply Reply Quote 0
          • jimp
            jimp Rebel Alliance Developer Netgate last edited by

            It would probably get used more if we had some good examples for people to see of the server-side setup for that. I agree it does sound like the best option if you run your own DNS.

            Here's the interesting bit of the backend code:

            https://github.com/bsdperimeter/pfsense/blob/master/etc/inc/services.inc#L1675

            Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

            Need help fast? Netgate Global Support!

            Do not Chat/PM for help!

            1 Reply Last reply Reply Quote 0
            • F
              flic last edited by

              Thanks. I'll have a little bit of free time coming up so this will give me something to do.

              1 Reply Last reply Reply Quote 0
              • F
                flic last edited by

                I'm sorry guys but I have no idea how to submit a patch the correct way and not the time at the moment to learn. However, if there's any interest the diff below will update the DNS record for both the A and the AAAA record if a v6 address is found on the selected interface. I hope it's of use to somebody!

                
                1670,1671c1670
                < 			$wanipv6 = get_interface_ipv6($dnsupdate['interface']);
                < 			if ($wanip || $wanipv6) {
                ---
                > 			if ($wanip) {
                1711c1710
                < 			
                ---
                > 
                1716,1727c1715,1716
                < 
                < 				if ($wanip) {
                < 					/* IPv4 specific */
                < 					$upinst .= "update delete {$dnsupdate['host']} A\n";
                < 					$upinst .= "update add {$dnsupdate['host']} {$dnsupdate['ttl']} A {$wanip}\n";
                < 				}
                < 
                < 				if ($wanipv6) {
                < 					/* IPv6 specific*/
                < 					$upinst .= "update delete {$dnsupdate['host']} AAAA\n";
                < 					$upinst .= "update add {$dnsupdate['host']} {$dnsupdate['ttl']} AAAA {$wanipv6}\n";
                < 				}
                ---
                > 				$upinst .= "update delete {$dnsupdate['host']} A\n";
                > 				$upinst .= "update add {$dnsupdate['host']} {$dnsupdate['ttl']} A {$wanip}\n";
                1742d1730
                < 			
                
                
                1 Reply Last reply Reply Quote 0
                • D
                  databeestje last edited by

                  I briefly looked at the dydns.class and it should be able to hook into there. Still waiting for a service provider that has a API to actually code.

                  I really hope that they make the update atomic and contain both a A and/or AAAA in the same update, e.g. not 2 seperate calls. This is especially true for dual stacked interfaces.

                  The other issue I see here is that the IPv4 and IPv6 interface can differ, e.g. your v4 is WAN and your v6 is WANv6. Need to somehow tie that in there. hmmm.

                  Maybe we should hook gif tunnels into the WAN dialog so that would work too. Similar to how we handle 6to4 and 6rd.

                  1 Reply Last reply Reply Quote 0
                  • Y
                    yon last edited by

                    I have try it with simple Dns plus server lastest version. but it is seem not normal work. it is only wrong update pfsense server address to dns server.

                    If you are interested in free peering for clearnet and dn42,contact me !

                    1 Reply Last reply Reply Quote 0
                    • jimp
                      jimp Rebel Alliance Developer Netgate last edited by

                      Resurrecting an old thread because I recently got around to setting up RFC2136 in bind and I can confirm that the IPv6 patch works, so I used a variant of it and it'll be in 2.1.

                      Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                      Need help fast? Netgate Global Support!

                      Do not Chat/PM for help!

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post