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

    Bind package for pfsense 2.1

    Scheduled Pinned Locked Moved pfSense Packages
    153 Posts 44 Posters 67.4k Views
    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.
    • P
      pfsense123
      last edited by

      Hello,

      we want to work with bind in pfsense. but i cant find any good manual for the pfsense version. i hope someone can help me!

      i make this settings

      Enable bind: checked
      listen-on: LAN
      rest defaults

      Zone One (Foward):
      Zone name: test.intern
      Type: Master
      Name Server: pfsense.test.intern (PFSense Hostname)
      Base Domain IP: 192.168.1.1 (PFSense IP)
      Records

        • NS - pfsense.test.intern
          pfsense - A - 192.168.1.1
          testserver - A - 192.168.1.30

      Zone Two (Reverse):
      Zone Name: 1.1.168.192
      Type: Master
      Reverse Zone: checked
      Name Server: pfsense.test.intern (PFSense Hostname)
      Base Domain IP: 192.168.1.1 (PFSense IP)
      Records

        • NS - 192.168.1.1
          1 - PTR - pfsense.test.intern
          30 - PTR - testserver.test.intern

      Test with Notebook:
      IP: 192.168.1.5
      GW: 192.168.1.1 (PFSense IP)
      DNS: 192.168.1.1 (PFSense IP)

      nslookup 192.168.1.1
      Server: UnKnown
      Adress: 192.168.1.1
      not exist

      nslookup testserver
      Server: UnKnown
      Adress: 192.168.1.1
      not exist

      What is wrong?  :o

      1 Reply Last reply Reply Quote 0
      • J
        jen
        last edited by

        @marcelloc:

        Did you disabled DNS forwarder before starting bind?

        Thanks for your reply, I did disable the DNS forward service before installing Bind.
        A restart solved the issue I had.

        1 Reply Last reply Reply Quote 0
        • Z
          zlyzwy
          last edited by

          @peffyes:

          @zlyzwy:

          Hi Marcelloc,

          I need to import over 1000 domain overwrite record into bind package.
          Can I use custom options for this? if yes, can you give me a sample?
          eg: example.com 100.100.100.100
          OR address=example/100.100.100.100

          Thanks in advance.
          Zlyzwy

          The custom options are exactly the same format as a zone file. So it would look like this:

          xbox1       IN A 10.9.8.34
          xbox360   IN A 10.9.8.35
          wii            IN A 10.9.8.36
          3ds           IN A 10.9.8.37
          vita           IN A 10.9.8.38
          

          Thanks for the reply.
          I tired you code but it doesn't work for me. After I saved the change, the services was broken.
          If I removed the custom options, it will be just fine.

          1 Reply Last reply Reply Quote 0
          • P
            peffyes
            last edited by

            What ever you put in the custom box is simply added to the zone file for the domain name. You do not need to put the START OF AUTHORITY (SOA) in the custom section, this is generated for you. You do need to take care that you have formatted everything correctly. Here is a description of what could go in the custom section: taken from https://en.wikipedia.org/wiki/Zone_file

            
            example.com.  NS    ns                    ; ns.example.com is a nameserver for example.com
            example.com.  NS    ns.somewhere.example. ; ns.somewhere.example is a backup nameserver for example.com
            example.com.  MX    10 mail.example.com.  ; mail.example.com is the mailserver for example.com
            @             MX    20 mail2.example.com. ; equivalent to above line, "@" represents zone origin
            @             MX    50 mail3              ; equivalent to above line, but using a relative host name
            example.com.  A     192.0.2.1             ; IPv4 address for example.com
                          AAAA  2001:db8:10::1        ; IPv6 address for example.com
            ns            A     192.0.2.2             ; IPv4 address for ns.example.com
                          AAAA  2001:db8:10::2        ; IPv6 address for ns.example.com
            www           CNAME example.com.          ; www.example.com is an alias for example.com
            wwwtest       CNAME www                   ; wwwtest.example.com is another alias for www.example.com
            mail          A     192.0.2.3             ; IPv4 address for mail.example.com,
                                                      ;  any MX record host must be an address record
                                                      ; as explained in RFC 2181 (section 10.3)
            mail2         A     192.0.2.4             ; IPv4 address for mail2.example.com
            mail3         A     192.0.2.5             ; IPv4 address for mail3.example.com
            
            

            My guess is that you're most likely going to use  A records, which associate a name to an ip address.
            If you use a CNAME, you must have a period at the end of the name you type. IP addresses do NOT get followed by a period.
            A semicolon ; is a comment - anything following it is ignored.

            @zlyzwy:

            @peffyes:

            @zlyzwy:

            Hi Marcelloc,

            I need to import over 1000 domain overwrite record into bind package.
            Can I use custom options for this? if yes, can you give me a sample?
            eg: example.com 100.100.100.100
            OR address=example/100.100.100.100

            Thanks in advance.
            Zlyzwy

            The custom options are exactly the same format as a zone file. So it would look like this:

            xbox1       IN A 10.9.8.34
            xbox360   IN A 10.9.8.35
            wii            IN A 10.9.8.36
            3ds           IN A 10.9.8.37
            vita           IN A 10.9.8.38
            

            Thanks for the reply.
            I tired you code but it doesn't work for me. After I saved the change, the services was broken.
            If I removed the custom options, it will be just fine.

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

              does it work on multiple network range ?
              192.168.16.0/24
              192.168.17.0/24
              10.0.2.10/24
              10.0.7.0/24

              1 Reply Last reply Reply Quote 0
              • marcellocM
                marcelloc
                last edited by

                @finalcut:

                does it work on multiple network range ?
                192.168.16.0/24
                192.168.17.0/24
                10.0.2.10/24
                10.0.7.0/24

                I've never used this way. Check bind documentation.

                Treinamentos de Elite: http://sys-squad.com

                Help a community developer! ;D

                1 Reply Last reply Reply Quote 0
                • P
                  pfsense123
                  last edited by

                  @pfsense123:

                  Hello,

                  we want to work with bind in pfsense. but i cant find any good manual for the pfsense version. i hope someone can help me!

                  i make this settings

                  Enable bind: checked
                  listen-on: LAN
                  rest defaults

                  Zone One (Foward):
                  Zone name: test.intern
                  Type: Master
                  Name Server: pfsense.test.intern (PFSense Hostname)
                  Base Domain IP: 192.168.1.1 (PFSense IP)
                  Records

                    • NS - pfsense.test.intern
                      pfsense - A - 192.168.1.1
                      testserver - A - 192.168.1.30

                  Zone Two (Reverse):
                  Zone Name: 1.1.168.192
                  Type: Master
                  Reverse Zone: checked
                  Name Server: pfsense.test.intern (PFSense Hostname)
                  Base Domain IP: 192.168.1.1 (PFSense IP)
                  Records

                    • NS - 192.168.1.1
                      1 - PTR - pfsense.test.intern
                      30 - PTR - testserver.test.intern

                  Test with Notebook:
                  IP: 192.168.1.5
                  GW: 192.168.1.1 (PFSense IP)
                  DNS: 192.168.1.1 (PFSense IP)

                  nslookup 192.168.1.1
                  Server: UnKnown
                  Adress: 192.168.1.1
                  not exist

                  nslookup testserver
                  Server: UnKnown
                  Adress: 192.168.1.1
                  not exist

                  What is wrong?  :o

                  any ideas please? How can i get it work

                  1 Reply Last reply Reply Quote 0
                  • P
                    peffyes
                    last edited by

                    What is the notebook computer using for a DNS server? If you use DHCP to configure IP services, make sure your DHCP server is telling the clients the proper address to use for DNS lookups. Looks like that should be 192.168.1.1 in your example.

                    Try nslookup 192.168.1.5 192.168.1.1  and see if you get an answer. If so, your client is probably not looking at the correct address for DNS resolution.

                    1 Reply Last reply Reply Quote 0
                    • marcellocM
                      marcelloc
                      last edited by

                      pfsense 123, do you have a zone to configure on it?
                      If it's just a forward dns, why don't you use built in dns forwarder package?

                      Treinamentos de Elite: http://sys-squad.com

                      Help a community developer! ;D

                      1 Reply Last reply Reply Quote 0
                      • P
                        pfsense123
                        last edited by

                        we have an exist bind on an old ubuntu, i want turn this machine off when bind on pfsense works.

                        the zone in this "test" is test.intern. I need a forward and a reverse lookup, is there any wrong parameter in my config?

                        @smarc the IP Config on the Client is static, the DNS is the same like the pfsense server.

                        1 Reply Last reply Reply Quote 0
                        • P
                          peffyes
                          last edited by

                          @pfsense123:

                          nslookup 192.168.1.1
                          Server: UnKnown
                          Adress: 192.168.1.1
                          not exist

                          nslookup testserver
                          Server: UnKnown
                          Adress: 192.168.1.1
                          not exist

                          I don't think your client machine knows about the bind server.

                          1 Reply Last reply Reply Quote 0
                          • marcellocM
                            marcelloc
                            last edited by

                            Did you…

                            • configured a firewall rule to allow dns requests?

                            • disabled dns forwarder to do not conflict with bind?

                            Treinamentos de Elite: http://sys-squad.com

                            Help a community developer! ;D

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

                              Sorry for asking(maybe it's already answered before) but how exactly do you run bind(named) on startup? Thanks

                              1 Reply Last reply Reply Quote 0
                              • marcellocM
                                marcelloc
                                last edited by

                                @shad0w:

                                Sorry for asking(maybe it's already answered before) but how exactly do you run bind(named) on startup? Thanks

                                Pfsense starts all installed services during startup.

                                Treinamentos de Elite: http://sys-squad.com

                                Help a community developer! ;D

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

                                  Thanks for your response.

                                  Hmm i had installed bind package(before latest upgrade) and wasn't any service in web interface. Now after latest upgrade and reinstallation works ok. Thanks

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    rondex
                                    last edited by

                                    Hello everyone,

                                    I already have primary and secondary dns servers running on linux boxes. I'm configuring bind on 2 pfSense do replace both, primary and secondary linux, but I did not find a correct SVR entry, as it asks for a prio, weight and port. Generated conf file does not show a correct line for this entry, missing those parameters.

                                    Any solution, or temporary workaround?

                                    Thanks

                                    1 Reply Last reply Reply Quote 0
                                    • marcellocM
                                      marcelloc
                                      last edited by

                                      @rondex:

                                      Any solution, or temporary workaround?

                                      you can use custom options to define your settings.

                                      paste what is wrong and how it should be.

                                      If you know php, you can edit bind.inc to fix the code to work the way you need.

                                      Treinamentos de Elite: http://sys-squad.com

                                      Help a community developer! ;D

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        rondex
                                        last edited by

                                        @marcelloc:

                                        If you know php, you can edit bind.inc to fix the code to work the way you need.

                                        I don't really know that much php, but I made some modifications to make records SRV work correctly. Here is part of the code of bind.inc file:

                                        for ($y=0; $y<sizeof($zone['row']); $y++)<br="">                                                {
                                                                                                $hostname = (preg_match("/(MX|NS)/",$zone['row'][$y]['hosttype'])?"@":$zone['row'][$y]['hostname']);
                                                                                                $hosttype = $zone['row'][$y]['hosttype'];
                                                                                                $hostdst = $zone['row'][$y]['hostdst'];
                                                                                                if (preg_match("/[a-zA-Z]/",$hostdst) && !preg_match("/(TXT|SPF|AAAA)/",$hosttype))
                                                                                                        $hostdst .= ".";
                                                                                                $hostvalue = $zone['row'][$y]['hostvalue'];
                                                                                                $hostweight = $zone['row'][$y]['hostweight'];
                                                                                                $hostport = $zone['row'][$y]['hostport'];

                                        $zone_conf .= "$hostname \t IN $hosttype $hostvalue \t$hostweight \t$hostport \t$hostdst\n";
                                                                                        }

                                        I just added 2 variables to fit requirement of SRV records: $hostweight and $hostport. Then added it to $zone_conf output variable.
                                        See attachment also. Added 2 fields to xml file to be used by SRV, weight and port.

                                        I can see on output bind config file, that $zone_conf is correct, but it's not getting the values of weight and port from GUI.

                                        Anyone can help me with this issue? I'm sure I'm missing some small detail to get those variables read.

                                        Thanks in advance.</sizeof($zone['row']);>

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          rondex
                                          last edited by

                                          Hi,

                                          It's almost ready, I just have to adjust one thing: it's not saving priority value, probably due to previous rule on php. I'll keep on search were it is, and as soon as I find it, I'll make it available, if anyone else is interested. Again, I'm not a php programer =) so any help is appreciated.

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            rondex
                                            last edited by

                                            :D Job done!

                                            If someone else is interested, just let me know, then I'll make it available.
                                            As soon I have more free time to deal with it, I'll enhance the algorithm to include more options and better warnings/erros on GUI.

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