How to change dynamic DNS settings in SAMBA

I inherited a SAMBA server (Firewall) at this time the users can not get to the internet.
I check and the DNS servers they were using were changed (or not working) so I called Comcast (their ISP) and got the correct DNS information.
All the PC in the office are DHCP, because I do not know how to change the DNS settings in SAMBA I changed the settings on the PCs to use the new DNS settings.
Now I would like to configure the SAMBA server (DHCP server) to update DNS automatically as the IP is dynamic.

You help is much appreciated.
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Ok, just to set things strait - SAMBA is probably just your server's name, you are not referring to Samba (SMB) server as a service running on it. I bet it confused the heck out of everyone.

The DNS settings that are given to other computers on the network are controlled by

option domain-name-servers

line in your /etc/dhcpd.conf.

Now, there is no really easy way to update this configuration when your DHCP _client_ on your server gets the new address and DNS settings from comcast - I can give you this link as an idea, but you probably can solve this problem easier by installing your own DNS server on this machine (bind).
On the SAMBA box, go to a command line and type "testparm" and post the results.
If you do not have DNS(Bind, etc...) runnig I agree with m1tk4, you should install your own DNS. Only thing is if the comcast account is home, the IP is dynamic.(can cause problems if you have FQDN)Are you using Comcast DNS servers? If you are you cant update there DNS "A" records from your DHCP leases. Does that make any sense? Or did I misunderstand and you have the DNS server running on a local box?
Post back your results.
mspencer100Author Commented:
Okay, here is what I’ve found:
The box in question is a firewall/router
And is working with 5 subnets that can not see each other but use the same internet connection.
It also looks like the guy that managed this had it part of his office’s subnet via VPN (outsourced IT) (I think)
In the file it shows DNS addresses from AT&T not Comcast…
I would like to be able to change this back to a local DNS and remove and VPN settings to the other network. While keeping the 5 subnets intact.

But for now how do i change the current DNS to the new ones?

Big order for a linux newbie

See the files below.

[root@? root]# cd /etc
[root@? etc]# cat dhcpd.conf
ddns-update-style ad-hoc;
# default gateway
#option routers;
#option subnet-mask;

option domain-name-servers;

default-lease-time 21600;
max-lease-time 43200;

subnet netmask {
        option routers;

subnet netmask {
  option routers;
  option domain-name-servers;

subnet netmask {
  option routers;
  option domain-name-servers;

subnet netmask {
  option routers;
  option domain-name-servers;

subnet netmask {
  option routers;
  option domain-name-servers;
[root@? etc]# cd dhcpc
[root@? dhcpc]# ls
dhcpcd-eth0.cache  dhcpcd-eth6.cache
[root@? dhcpc]# cat (In the note i was given eth6 is for DHCP)
DNS=, (These should be and
DHCPSID=  (Not sure what this is???)
DHCPGIADDR=  (Not sure what this is???)
DHCPSIADDR=  (Not sure what this is???)
DHCPCHADDR=(Not sure what this is???)
DHCPSHADDR=(Not sure what this is???)
CLASSID="Linux 2.4.24 i686"

[root@? etc]# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[pdf-generator]"
Loaded services file OK.
WARNING: You have some share names that are longer than 8 chars
These may give errors while browsing or may not be accessible
to some older clients
Press enter to see a dump of your service definitions

# Global parameters
        coding system =
        client code page = 850
        code page directory = /etc/samba/codepages
        workgroup = MDKGROUP
        netbios name =
        netbios aliases =
        netbios scope =
        server string = Samba Server %v
        interfaces =
        bind interfaces only = No
        security = USER
        encrypt passwords = Yes
        update encrypted = No
        allow trusted domains = Yes
        hosts equiv =
        min passwd length = 5
        map to guest = Never
        null passwords = No
        obey pam restrictions = No
        password server =
        smb passwd file = /etc/samba/smbpasswd
        root directory =
        pam password change = No
        passwd program = /usr/bin/passwd
        passwd chat = *new*password* %n\n *new*password* %n\n *changed*
        passwd chat debug = No
        username map =
        password level = 0
        username level = 0
        unix password sync = No
        restrict anonymous = No
        lanman auth = Yes
        use rhosts = No
        admin log = No
        log level = 0
        syslog = 1
        syslog only = No
        log file = /var/log/samba/log.%m
        max log size = 50
        timestamp logs = Yes
        debug hires timestamp = No
        debug pid = No
        debug uid = No
        protocol = NT1
        large readwrite = Yes
        max protocol = NT1
        min protocol = CORE
        read bmpx = No
        read raw = Yes
        write raw = Yes
        nt smb support = Yes
        nt pipe support = Yes
        nt status support = Yes
        announce version = 4.9
        announce as = NT
        max mux = 50
        max xmit = 16644
        name resolve order = lmhosts host wins bcast
        max ttl = 259200
        max wins ttl = 518400
        min wins ttl = 21600
        time server = No
        unix extensions = No
        change notify timeout = 60
        deadtime = 0
        getwd cache = Yes
        keepalive = 300
        lpq cache time = 10
        max smbd processes = 0
        max disk size = 0
        max open files = 10000
        name cache timeout = 660
        read size = 16384
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        stat cache size = 50
        use mmap = Yes
        total print jobs = 0
        load printers = Yes
        printcap name = lpstat
        disable spoolss = No
        enumports command =
        addprinter command =
        deleteprinter command =
        show add printer wizard = Yes
        os2 driver map =
        strip dot = No
        mangling method = hash
        character set =
        mangled stack = 50
        stat cache = Yes
        domain admin group =
        domain guest group =
        machine password timeout = 604800
        add user script =
        delete user script =
        logon script =
        logon path = \\%N\%U\profile
        logon drive =
        logon home = \\%N\%U
        domain logons = No
        os level = 20
        lm announce = Auto
        lm interval = 60
        preferred master = Auto
        local master = Yes
        domain master = Auto
        browse list = Yes
        enhanced browsing = Yes
        dns proxy = No
        wins proxy = No
        wins server =
        wins support = No
        wins hook =
        kernel oplocks = Yes
        lock spin count = 3
        lock spin time = 10
        oplock break wait time = 0
        add share command =
        change share command =
        delete share command =
        config file =
        preload =
        lock dir = /usr/var/locks
        pid directory = /usr/var/locks
        default service =
        message command =
        dfree command =
        valid chars =
        remote announce =
        remote browse sync =
        socket address =
        homedir map =
        time offset = 0
        NIS homedir = No
        source environment =
        panic action =
        hide local users = No
        winbind uid =
        winbind gid =
        template homedir = /home/%D/%U
        template shell = /bin/false
        winbind separator = \
        winbind cache time = 15
        winbind enum users = Yes
        winbind enum groups = Yes
        winbind use default domain = No
        comment =
        path =
        alternate permissions = No
        username =
        guest account = nobody
        invalid users =
        valid users =
        admin users =
        read list =
        write list =
        printer admin =
        force user =
        force group =
        read only = Yes
        create mask = 0744
        force create mode = 00
        security mask = 0777
        force security mode = 00
        directory mask = 0755
        force directory mode = 00
        directory security mask = 0777
        force directory security mode = 00
        force unknown acl user = 00
        inherit permissions = No
        inherit acls = No
        guest only = No
        guest ok = No
        only user = No
        hosts allow =
        hosts deny =
        status = Yes
        nt acl support = Yes
        profile acls = No
        block size = 1024
        max connections = 0
        min print space = 0
        strict allocate = No
        strict sync = No
        sync always = No
        write cache size = 0
        max print jobs = 1000
        printable = No
        postscript = No
        printing = cups
        print command = lpr -r -P%p %s
        lpq command = lpq -P%p
        lprm command = lprm -P%p %j
        lppause command =
        lpresume command =
        queuepause command =
        queueresume command =
        printer name =
        use client driver = No
        default devmode = No
        printer driver =
        printer driver file = /etc/samba/printers.def
        printer driver location =
        default case = lower
        case sensitive = No
        preserve case = Yes
        short preserve case = Yes
        mangle case = No
        mangling char = ~
        hide dot files = Yes
        hide unreadable = No
        delete veto files = No
        veto files =
        hide files =
        veto oplock files =
        map system = No
        map hidden = No
        map archive = Yes
        mangled names = Yes
        mangled map =
        browseable = Yes
        blocking locks = Yes
        csc policy = manual
        fake oplocks = No
        locking = Yes
        oplocks = Yes
        level2 oplocks = Yes
        oplock contention limit = 2
        posix locking = Yes
        strict locking = No
        share modes = Yes
        copy =
        include =
        exec =
        preexec close = No
        postexec =
        root preexec =
        root preexec close = No
        root postexec =
        available = Yes
        volume =
        fstype = NTFS
        set directory = No
        wide links = Yes
        follow symlinks = Yes
        dont descend =
        magic script =
        magic output =
        delete readonly = No
        dos filemode = No
        dos filetimes = No
        dos filetime resolution = No
        fake directory create times = No
        vfs object =
        vfs options =

        comment = Home Directories
        read only = No
        browseable = No

        comment = All Printers
        path = /var/spool/samba
        create mask = 0700
        guest ok = Yes
        printable = Yes
        print command = lpr-cups -P %p -o raw %s -r   # using client side printer drivers.
        browseable = No

        path = /var/lib/samba/printers
        write list = @adm root

        comment = PDF Generator (only valid users)
        path = /var/tmp
        printable = Yes
        print command = /usr/share/samba/scripts/print-pdf %s ~%u \\\\\\\\%L\\\\%u %m %I &
[root@? etc]#
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

Ok, first things first.(I do not envy you!)Could you display the contents of your /etc/resolv.conf file? What distro are you using(Debian, Red Hat, Suse, etc..) next lets see if bind is installed(for RPM based distro use "rpm -qa | grep bind" DPKG based distros use "dpkg --list | grep bind" If it is not installed, install it.
"option domain-name-servers;" is this the internal IP address of the "SAMBA box" I am guessing there is 6 network cards on this box? We will need to configure bind to listen on that IP. You have your work cut out for you. post back the results and we will take it from there.
oh yeah DHCPSID= is most likely your comcast IP address(one way to check is goto and see what your external ip is)

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Blimey, what a mess! Sorry, but that dhcpd.conf is a joke! Why on earth is it running so many subnets?! If you really must do that and you don't have any routing internally, use a 16bit mask ( then they can all talk to each other.

My opinion? If all the box does is provide your internet gateway, flatten it and grab a copy of IPcop from which is simple to set up and administer, and from the sounds of it will do everything you need. The fact that the machine is called Samba (and has a rather overcomplicated smb.conf) suggests that it's being used (or has previously been used) as a file/print server, although you don't actually mention whether it is or isn't.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.