Solved

Unix DNS resolution (Solaris)

Posted on 2000-05-03
13
547 Views
Last Modified: 2013-12-21
We have an application runnng on SUN Solaris.  Some users connect to the network via a dial up connection.  These users (running Win95 desktops) are dynamically assigned an IP address when they log on.  The network is NT.  Form UNIX, pinging the user PC is possible the first time they log on.  If they log off and log on again they are assigned a new IP.  Form UNIX pinging the PC machine now no longer works.  DNS is configured, and the DNS server has the correct (new) IP address.
UNIX is looking somewhere else (other than DNS) for the IP address resolution.  Where/how is this done?
0
Comment
Question by:pibbotson
  • 4
  • 3
  • 2
  • +4
13 Comments
 
LVL 15

Expert Comment

by:samri
Comment Utility
pibbotson,

   What are your dial-up user dialing into?  I mean what terminal server you are  using?  It seems that you are using DHCP (of some kind) to assign dynamic IP to your user.  Check the DHCP server (if you use one), on the default gateway (router), and the netmask.

    I believe that you ought to check on the client setup.  Another thing to look into is the routing on the terminal server.  Does it has proper routing configured?
  When your user dial-in, check the gateway on the client PC (the dialling machine), what is the gateway.  Perhaps, posting the "NETSTAT -RN" output from the client, before and after the established connection would help us a bit.

Waiting.

Samri
0
 
LVL 2

Expert Comment

by:jonke
Comment Utility
Places the machine will look for an ip-hostname resolution is dependent on a file called /etc/nsswitch.conf

Look for a line like this:

hosts:     nisplus dns [NOTFOUND=return] files

Say you wanted your machine to do a dns lookup first, then you would put this first in line.
0
 

Expert Comment

by:CASIOFL
Comment Utility
I have not set up DHCP/DDNS on our server yet, but I will soon. Something to also think about is DNS caching. Maybe the unix DNS server is caching the first Ip assigned, and while DDNS is assigning a new Ip every time, all name to IP resolution requests are being given the first IP. I will look into turning off DNS caching Completely off.  I think you can do this by setting the time to live option to 0. Thus, forcing the DNS daemon to read the tables in order to provide an answer.
0
 
LVL 2

Expert Comment

by:jonke
Comment Utility
A quick way to find out if you are caching the old ip address is do an nslookup hostname. The result will show you what the DNS server gets from a dns lookup against that hostname.
0
 
LVL 40

Accepted Solution

by:
jlevie earned 75 total points
Comment Utility
Yes the data is being cache'd by the nscd daemon on Solaris. If you look at the man page for nscd & nscd.conf you'll find what you need to modify it's behaviour. Typically nscd caches hosts data for 3600 seconds and in your cse you might want to reduce that significantly. I've seen some folks recomend disabling nscd entirely, but I suspect it's probably better to just reduce the cache time.
0
 

Expert Comment

by:BrianMayo
Comment Utility
Let me try to sum what was facts we have:
You have users that dial into your network and are given an IP address from a DHCP server.   Now, from the UNIX server, you wish to ping a user's PC, I am assuming by name.

To begin with, your network must have at least a primary DNS server.  This DNS server would have to have static entries in it for each ip address mapping it to a name.
Next, the UNIX server must point to this DNS server which is done through the file /etc/resolv.conf
Next, we need to check the /etc/nsswitch.conf to see the order in which the UNIX server tries name service files.  

Assuming the previous items are in order, I do not see any issue.
The user PC dials into your network and is given an IP address from the DHCP server.  Your DNS server, which is separate from the DHCP server should have name-to-ip address translations for all addresses.  Thus, if a user dials in, hangs up, then dials in again, you would need to know the new IP address the user was assigned to know what name the IP address has.  Once you know this, from the UNIX system, you can ping with that name.

Regards,
-Brian
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

Author Comment

by:pibbotson
Comment Utility
jlevie's answer is the one I was after.

Thanks anyway - Paul.
0
 

Author Comment

by:pibbotson
Comment Utility
Spot on.

Thanks Paul.
0
 
LVL 40

Expert Comment

by:jlevie
Comment Utility
Would you like for me to "propose an answer" or do you want to just select the comment as the answer?
0
 

Author Comment

by:pibbotson
Comment Utility
I have selected the comment as the answer.

0
 
LVL 40

Expert Comment

by:jlevie
Comment Utility
Obviously, thank you very much.
0
 
LVL 40

Expert Comment

by:jlevie
Comment Utility
Obviously, thank you very much.
0
 

Expert Comment

by:bspb_sks
Comment Utility
Hi,

Do let me know how to configure DNS on Sun Solaris 2.7 server and the sites from where I can get the complete details.

Waiting for response...

Sanjay
India
Sun Solaris
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

I promised to write further about my project, and here I am.  First, I needed to setup the Primary Server.  You can read how in this article: Setup FreeBSD Server with full HDD encryption (http://www.experts-exchange.com/OS/Unix/BSD/FreeBSD/A_3660-S…
FreeBSD on EC2 FreeBSD (https://www.freebsd.org) is a robust Unix-like operating system that has been around for many years. FreeBSD is available on Amazon EC2 through Amazon Machine Images (AMIs) provided by FreeBSD developer and security office…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now