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

    Add PTR and NS Records to DNS Resolver possible?

    DHCP and DNS
    14
    99
    30.4k
    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
      Selo
      last edited by

      I can tell this:

      we are working on this issue with 2 experienced engineers. We have setup the 4 records as requested by the mobility print software.
      nslookup confirms the 4 records are active and correct. After checking the records with the mobility software, we keep getting an error on the PTR records.
      Fortunately we have an active Papercut license (it is a new install with 150 users), we created a support ticket…hope to get quick response.
      If anyone has fixed this PTR issue, I would really like to see the DNS entries...
      We also suggested a change to the mobility print client: a possibility to enter an ip-address instead of using the autodiscover option...

      1 Reply Last reply Reply Quote 0
      • K
        kolpinkb
        last edited by

        Posting my named.conf file shortly for bind. Just obfuscating the IPs and domains.

        Also, tech support was kind enough a few weeks ago to spend 2-3 hours on the phone with me to try an figure out the problem with unbound.  I found something in Mobility Print's log files that may be of use.

        Hold tight.

        1 Reply Last reply Reply Quote 0
        • johnpozJ
          johnpoz LAYER 8 Global Moderator
          last edited by

          From what I recall the client was not looking for what they said to create on their website.. But I can till you for fact is that unbound can create PTR records…

          Here is simple PTR query for IP on unbound... Answers just fine...

          
          > dig -x 192.168.9.8
          
          ; <<>> DiG 9.11.2 <<>> -x 192.168.9.8
          ;; global options: +cmd
          ;; Got answer:
          ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37198
          ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
          
          ;; OPT PSEUDOSECTION:
          ; EDNS: version: 0, flags:; udp: 4096
          ;; QUESTION SECTION:
          ;8.9.168.192.in-addr.arpa.      IN      PTR
          
          ;; ANSWER SECTION:
          8.9.168.192.in-addr.arpa. 1635  IN      PTR     Storage.local.lan.
          
          ;; Query time: 9 msec
          ;; SERVER: 192.168.3.10#53(192.168.3.10)
          ;; WHEN: Tue Jan 16 11:31:45 Central Standard Time 2018
          ;; MSG SIZE  rcvd: 84
          
          

          What exactly is going to be queried and what should be the answer and we can validate whatever that something is can be entered into unbound.  But 100% for sure unbound can answer for a PTR query.

          An intelligent man is sometimes forced to be drunk to spend time with his fools
          If you get confused: Listen to the Music Play
          Please don't Chat/PM me for help, unless mod related
          SG-4860 24.11 | Lab VMs 2.7.2, 24.11

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

            OK, let´s wait for the named.conf file thehammer86 was going to post…
            Also curious about this: "I found something in Mobility Print's log files that may be of use."

            1 Reply Last reply Reply Quote 0
            • johnpozJ
              johnpoz LAYER 8 Global Moderator
              last edited by

              I played with this for a bit - I could never get the client to actually do a ptr query like they said it should.. Their docs from what I remember are not very clear.  My trial ran out and attempted to run the mobility client on the same box the server was run on.

              I could try to setup it up again on some other machines - But once we know what actual query be it PTR or some other we can work out how to setup (if possible) for unbound to respond.  What I can tell you for 100% fact is the unbound can respond with a PTR… And NS records, so there is something missing in the puzzle here.

              An intelligent man is sometimes forced to be drunk to spend time with his fools
              If you get confused: Listen to the Music Play
              Please don't Chat/PM me for help, unless mod related
              SG-4860 24.11 | Lab VMs 2.7.2, 24.11

              1 Reply Last reply Reply Quote 0
              • K
                kolpinkb
                last edited by

                Here's the relevent config from a bare-metal machine I installed bind9 on.  Please make sure the domain and search list your dhcp server is handing out matches your domain for the mobility print entries.  Three different files below:
                /etc/bind/named.conf

                options {
                directory "/etc/bind";
                pid-file "/var/run/bind/run/named.pid /var/run/named.pid /var/run/named/named.pid /var/run/bind/run/named/named.pid";
                forwarders {
                208.67.220.220;
                208.67.222.222;
                2620:0:ccd::2;
                2620:0:ccc::2;
                };
                forward first;
                allow-query {
                192.168.0.0/16;
                };
                };

                zone "." {
                type hint;
                file "/etc/bind/db.cache";
                };

                zone "168.192.in-addr.arpa" {
                type master;
                file "/var/lib/bind/192.168.rev";
                };
                key rndc-key {
                algorithm hmac-md5;
                secret "XXXXXXXXXXXXXXXXXXXXXX==";
                };
                controls {
                inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { rndc-key; };
                };
                zone "example.com" {
                type master;
                file "/var/lib/bind/example.com.hosts";
                };

                /var/lib/bind/192.168.rev

                168.192.in-addr.arpa.  IN      SOA    cloud1.example.com. admin.example.com. (
                                        1513635071
                                        10800
                                        3600
                                        604800
                                        38400 )
                168.192.in-addr.arpa.  IN      NS      cloud1.example.com.
                3.71.168.192.in-addr.arpa.      IN      PTR    cloud5.example.com.

                /var/lib/bind/example.com.hosts

                $ttl 38400
                example.com.      IN      SOA    cloud1.example.com. admin.example.com. (
                                        1513706509
                                        10800
                                        3600
                                        604800
                                        38400 )
                example.com.      IN      NS      cloud1.example.com.
                cloud5.example.com.        IN      A      192.168.71.3
                cloud1.example.com.        IN      A      192.168.71.4
                pc-printer-discovery.example.com.  IN      NS      cloud5.example.com.
                b._dns-sd._udp.example.com.        IN      PTR    pc-printer-discovery.example.com.
                lb._dns-sd._udp.example.com.      IN      PTR    pc-printer-discovery.example.com.

                1 Reply Last reply Reply Quote 0
                • johnpozJ
                  johnpoz LAYER 8 Global Moderator
                  last edited by

                  Problem with that config is that your SOA for example.com is cloud1.example.com

                  But I take it cloud5 is the mobility server but its a example.com domain ns, so do cloud1 and cloud5 the NS for example.com have the same records?

                  What does pc-printer-discovery.example.com. actually resolve too?  Since from your config I should be able to answer either cloud1 the SOA for example.com or cloud5 for this A record.

                  An intelligent man is sometimes forced to be drunk to spend time with his fools
                  If you get confused: Listen to the Music Play
                  Please don't Chat/PM me for help, unless mod related
                  SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                  1 Reply Last reply Reply Quote 0
                  • K
                    kolpinkb
                    last edited by

                    Both PaperCutNG and the MobilityPrint Server are on the same machine (cloud5).  I can't seem to track down the log entry from MobilityPrint but its starting to come back to me now.  Something about the log error hinted at a permission issue with Unbound.  Because Unbound is set up as an authoritative name server for example.com, it didn't like cloud5.example.com being an authoritative name server for the subdomain pc-printer-discovery.example.com.

                    Does that help?

                    I coundn't get any further with unbound so that's why I ditched it and went to bind.

                    1 Reply Last reply Reply Quote 0
                    • johnpozJ
                      johnpoz LAYER 8 Global Moderator
                      last edited by

                      and when you do a query for pc-printer-discovery.example.com, is this a A record query TXT, SRV what?

                      Seems pretty pointless to set it up that way..  Why could you not just setup pc-printer-discovery.example.com to be resolved by unbound directly? Be it A record or TXT or SRV, etc.  Seems stupid to do it that way.. I see no point to it.

                      Actually goes against dns practice to delegate like that. Why sure pc-printer-discovery.example.com could be sub domain and delegated to a different NS.  you would then look fror something like host.pc-printer-discovery.example.com in the subdomain.

                      Unbound is not actually meant to be an authoritative NS.. So that is prob why there are some issues - but you could for sure just put in the entry for pc-printer-discovery.example.com directly in unbound so it could resolve it without having to delegate that to cloud5..

                      Unbound is a validating, recursive, and caching DNS resolver.  It is not actually meant to be an authoritative NS… While it can answer specific records, from a local database - it has issues with cnames as well, etc.  Since its not actual designed to be an authoritative NS.

                      But if the client wants to do a PTR query and then a query for that fqdn that is returned it for sure could answer a A, TXT, SRV record etc... for the actual fqdn that gets queried.

                      An intelligent man is sometimes forced to be drunk to spend time with his fools
                      If you get confused: Listen to the Music Play
                      Please don't Chat/PM me for help, unless mod related
                      SG-4860 24.11 | Lab VMs 2.7.2, 24.11

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

                        I just got feedback from Papercut support:

                        "
                        (PaperCut)

                        I apologize but presently we don't have a documented method to set up the DNS records for Mobility Print using Unbound with PFSense. However, I do want to point out that other customers with PFsense routers that want to use DNS Discovery for Mobility Print have reached out to us to see if this is something that can be achieved.  I previously created a to-do item in our feature tracking system for our developers to take a look at whether this is feasible. I have also linked this support ticket to the feature request so that we can notify you by email in the future if this is something we are able to document. I can't say when we would be able to answer this however.

                        In the short term I would also like to point out that there are several other methods for setting up Mobility Print, even for environments with multiple subnets and VLANs. For example, you can connect multiple network interfaces to your Mobility Print server and allow it to broadcast mDNS to advertise printers to clients in each network. Alternatively if your router supports Bonjour Forwarding, then you could set it up to allow mDNS traffic to pass from your server VLAN to your client VLANs.

                        Let me know if you have any questions at all or if you would like to discuss some of the alternate methods I mentioned above.

                        "

                        1 Reply Last reply Reply Quote 0
                        • johnpozJ
                          johnpoz LAYER 8 Global Moderator
                          last edited by

                          You could most likely just use the avahi package with pfsense.. It does mDNS/DNS-SD

                          An intelligent man is sometimes forced to be drunk to spend time with his fools
                          If you get confused: Listen to the Music Play
                          Please don't Chat/PM me for help, unless mod related
                          SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                          1 Reply Last reply Reply Quote 0
                          • DerelictD
                            Derelict LAYER 8 Netgate
                            last edited by

                            DNS Resolver Custom Options:

                            server:
                            local-zone: "example.com." transparent
                            local-data: "b.dns-sd._udp IN PTR pc-printer-discovery.example.com."
                            local-data: "lb.dns-sd._udp IN PTR pc-printer-discovery.example.com."
                            local-data: "pc-printer-discovery.example.com. IN NS print-server-host.example.com."
                            local-data: "print-server-host.example.com. IN A 192.168.224.17"

                            Test queries:

                            [2.4.2-RELEASE][root@pfSense-b.example.com]/var/unbound: dig +short +search +domain=example.com @localhost PTR b.dns-sd._udp
                            pc-printer-discovery.example.com.
                            [2.4.2-RELEASE][root@pfSense-b.example.com]/var/unbound: dig +short +search +domain=example.com @localhost PTR lb.dns-sd._udp
                            pc-printer-discovery.example.com.
                            [2.4.2-RELEASE][root@pfSense-b.example.com]/var/unbound: dig +short +search +domain=example.com @localhost NS pc-printer-discovery
                            print-server-host.example.com.
                            [2.4.2-RELEASE][root@pfSense-b.example.com]/var/unbound: dig +short +search +domain=example.com @localhost A print-server-host
                            192.168.224.17

                            From there it is up to the client to ask the DNS server on the mobility print server at 192.168.224.17 whatever it needs to ask about the pc-printer-discovery zone.

                            It looks to me like this should work. It implies the client is pointed EXCLUSIVELY at unbound (and/or a similarly-configured server) and has a correct search domain set for "example.com".

                            I did not try to get a Mobility Print environment working.

                            Chattanooga, Tennessee, USA
                            A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                            DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                            Do Not Chat For Help! NO_WAN_EGRESS(TM)

                            1 Reply Last reply Reply Quote 0
                            • DerelictD
                              Derelict LAYER 8 Netgate
                              last edited by

                              Note that unbound agrees with my prior assessment of the wackiness of the name-keyed PTR records. They have a local-data-ptr option for setting PTR records:

                              local-data-ptr: "IPaddr name"
                                          Configure local data shorthand for a PTR record with the  reversed
                                          IPv4  or  IPv6  address and the host name.  For example "192.0.2.4
                                          www.example.com".  TTL can be  inserted  like  this:  "2001:DB8::4
                                          7200 www.example.com"

                              If you try something like:

                              local-data-ptr: "b.dns-sd._udp pc-printer-discovery.example.com."

                              It barfs with:

                              The generated config file cannot be parsed by unbound. Please correct the following errors:
                              [1516213033] unbound-checkconf[27521:0] error: syntax error: cannot parse address: b.dns-sd._udp pc-printer-discovery.example.com.
                              /var/unbound/test/unbound.conf:86: error: local-data-ptr could not be reversed
                              read /var/unbound/test/unbound.conf failed: 1 errors in configuration file

                              Chattanooga, Tennessee, USA
                              A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                              DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                              Do Not Chat For Help! NO_WAN_EGRESS(TM)

                              1 Reply Last reply Reply Quote 0
                              • johnpozJ
                                johnpoz LAYER 8 Global Moderator
                                last edited by

                                Where the problem is I do not believe the client follows through with looking up pc-printer-discovery.example.com.

                                When NS is authoritative its different - same issue with a cname in unbound.  You can for sure put in a cname record.. But it doesn't follow through and finish, its up the client to follow the query when the not using authoritative ns, etc.

                                If the client actually does a query for pc-printer-discovery.example.com. you could just put that record in unbound directly..

                                An intelligent man is sometimes forced to be drunk to spend time with his fools
                                If you get confused: Listen to the Music Play
                                Please don't Chat/PM me for help, unless mod related
                                SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                                1 Reply Last reply Reply Quote 0
                                • DerelictD
                                  Derelict LAYER 8 Netgate
                                  last edited by

                                  It looks to me like pc-printer-discovery.example.com is a subdomain. Those records/that zone will be found on the mobility print server itself.

                                  At least that's what it looks like to me.

                                  I am really not in the mood to install it and see.

                                  It looks like the above config is what is necessary to get the records papercut say need to be there in there.

                                  Chattanooga, Tennessee, USA
                                  A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                                  DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                                  Do Not Chat For Help! NO_WAN_EGRESS(TM)

                                  1 Reply Last reply Reply Quote 0
                                  • johnpozJ
                                    johnpoz LAYER 8 Global Moderator
                                    last edited by

                                    "It looks like the above config is what is necessary to get the records papercut say need to be there in there."

                                    Yeah went through that while back - doesn't work, because yes pc-printer-discovery.example.com is a subdomain delegation… Its hokey setup to be sure.. Trying to put these records into unbound make no sense at all..  The whole thing is designed for the authoritative NS for the domain in question which is not what unbound running on pfsense is

                                    http://www.dns-sd.org/serverstaticsetup.html

                                    You really should be able to get away with a domain override for the domain

                                    _dns-sd._udp.example.com

                                    Point  _dns-sd._udp.example.com via NS record to the mobility print server let the client do whatever it wants via a domain override.

                                    I would think it just much easier to setup avahi..

                                    If user really wants to use this setup and run it on pfsense, then they should be using the bind package that gives them full authoritative nameserver software on pfsense - with a gui to boot to manage ;)

                                    An intelligent man is sometimes forced to be drunk to spend time with his fools
                                    If you get confused: Listen to the Music Play
                                    Please don't Chat/PM me for help, unless mod related
                                    SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      kolpinkb
                                      last edited by

                                      Unfortunately, I already tried avahi. The mobility app under android and windows returns an error that I haven't been able to sort out with the Paperacut team.

                                      1 Reply Last reply Reply Quote 0
                                      • DerelictD
                                        Derelict LAYER 8 Netgate
                                        last edited by

                                        Then pcap the DNS traffic and see where the breakdown is.

                                        Chattanooga, Tennessee, USA
                                        A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                                        DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                                        Do Not Chat For Help! NO_WAN_EGRESS(TM)

                                        1 Reply Last reply Reply Quote 0
                                        • johnpozJ
                                          johnpoz LAYER 8 Global Moderator
                                          last edited by

                                          Can for sure make unbound answer pretty much anything that gets queried for.. But its not going to do some of the stuff an actual authoritative NS does for a zone its authoritative for, etc.

                                          If you do a sniff and see what is queried - pretty freaking sure can make unbound answer with the answer you want for the specific query and type.

                                          An intelligent man is sometimes forced to be drunk to spend time with his fools
                                          If you get confused: Listen to the Music Play
                                          Please don't Chat/PM me for help, unless mod related
                                          SG-4860 24.11 | Lab VMs 2.7.2, 24.11

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

                                            I can confirm Avahi is not working. Just tested it.
                                            The mobility print setup does not find any printers in another VLAN.

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