The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
.
google unix.com



Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts and shell scripting languages here.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Need help on installing an EASY to use and easy to install command line text editor EugeneG UNIX for Dummies Questions & Answers 4 07-16-2007 12:53 PM
How to Achive IP address through MAC(Ethernet) address krishnacins IP Networking 3 08-29-2005 09:45 PM
How do I get the IP address of my local unix box??? marty 600 UNIX for Dummies Questions & Answers 9 04-12-2005 10:45 PM
network address and broadcast address? pnxi UNIX for Dummies Questions & Answers 7 11-10-2003 11:29 PM
why i have local.profile, local.cshrc,local.login instead of .profile, .login ? abidmalik UNIX for Dummies Questions & Answers 5 08-27-2002 02:47 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
  #1 (permalink)  
Old 11-26-2005
simonb simonb is offline
Registered User
  
 

Join Date: Nov 2005
Location: London
Posts: 14
Easy way to get local IP address

I needed to get a machine's local IP address when not root (so no ifconfig).

Eventually, I arrived at this convoluted solution that grabs the unique local IP info from netstat...

netstat -n -t | awk '{print $4}' | grep -o "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" |\
grep -v "127.0.0.1" | sort -u


...however I suspect there is an easier, more robust way of doing this.

Any ideas?
  #2 (permalink)  
Old 11-26-2005
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Location: Ashburn, Virginia
Posts: 9,131
Here's an idea....tell us which os.
  #3 (permalink)  
Old 11-26-2005
simonb simonb is offline
Registered User
  
 

Join Date: Nov 2005
Location: London
Posts: 14
Quote:
Originally Posted by Perderabo
Here's an idea....tell us which os.
Linux, CentOS4.1.

Isn't netstat common to both Unix & Linux?
http://www.computerhope.com/unix/unetstat.htm
  #4 (permalink)  
Old 11-26-2005
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Location: Ashburn, Virginia
Posts: 9,131
I don't have access to a CentOS4.1 distro of Linux (never even heard of it), but are you sure that "ifconfig -a" requires root? It certainly works for me on RedHat. I had to use /sbin/ifconfig -a since /sbin is not on my PATH.

There are many different versions of netstat and with HP-UX or Solaris, "netstat -in" would have solved your problem. With RedHat, the ip address is not displayed. (Also, while HP-UX has a ifconfig, there is no "ifconfig -a".) The first unix system I used had no netstat command. I don't know of any modern unix without a netstat command, but they do not conform to that link you posted. "netstat -D"? Let me try that on HP-UX....

Code:
$ netstat -D
netstat: illegal option -- D
Usage:  netstat [-an] [-f address-family] [system core]
        netstat [-Mnrsv] [-f address-family] [-p protocol] [system core]
        netstat [-gin] [-I interface] [interval] [system core]
        -a      show state of all sockets, including passive sockets
        -f      show statistics only for specified address family
        -g      show multicast information for network interfaces
        -i      show statistics for network interfaces
        -I      show statistics only for specified network interface
        -M      show multicast routing tables
        -Ms     show multicast routing statistics
        -n      display network addresses numerically
        -p      show statistics only for specified protocol
        -r      show routing tables
        -rv     show additional information for the routing table
        -s      show statistics for all protocols

        interval        display interface statistics continuously
        system          source of kernel symbols
        core            source of kernel data
$

  #5 (permalink)  
Old 11-26-2005
vgersh99's Avatar
vgersh99 vgersh99 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2005
Location: Boston, MA
Posts: 5,131
if you have 'arp' you can try something like that:

Code:
thisHost=$(/usr/sbin/arp $(hostname) | nawk -F'[()]' '{print $2}')

  #6 (permalink)  
Old 11-27-2005
simonb simonb is offline
Registered User
  
 

Join Date: Nov 2005
Location: London
Posts: 14
FYI CentOS is Redhat Enterprise re-compiled from source RPMs with all the trademark stuff removed. It's good to play around with RHES for free before you need all the production-grade support etc.

Not sure why you are typing netstat -D. What would that normally do? netstat -n would work, that displays IP addresses instead of names. To get the same effect as netstat -t I guess you would use netstat -p <protocol>, on Redhat Linux -t restricts the protocol to TCP.

You're right, ifconfig -a does work as non-root however on Redhat the /sbin directory where it lives is not in a normal user's search path. Anyway, thanks for pointing that out to me as it is probably a safer command to work with.

Yes, arp is available on Redhat but is also in /sbin.
/sbin/arp -i eth0 -a
Seems to produce meaningful output.

Thanks for you help :-)
Closed Thread

Bookmarks

Tags
linux

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




All times are GMT -4. The time now is 08:37 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios
The UNIX and Linux Forums Content Copyright ©1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant URLs by vBSEO 3.2.0