
How do I figure out my IP address on a Mac?Dave, as far as I know, I get a new IP address every time I connect to the Internet with my Apple PowerBook. How do I figure out what address I've been assigned? If you're running Dynamic Host Configuration Protocol (DHCP) then you're right, you'll get a new IP address (possibly recycled) each time you connect to the Internet. Well, you actually get what's called a "lease", so you only get a new address when your lease expires. Typically DHCP servers are configured to give 24 hour leases, so it's not quite as much a moving target. The easiest way to identify your IP address is to pop open the Terminal (go to Applications -> Utilities -> Terminal) and type in the interface configuration (ifconfig) command: $ ifconfig lo0: flags=8049 The number you want to identify is immediately after the "inet" field. Rather than just scan this visually, however, let's use some Unix commands to extract the data we want. The first command we'll use is grep, a simple pattern matching filter. We'll make what Unix geeks call a "pipe" by separating the two commands with the "|" symbol, which causes the output of the first command to be fed to the second command as its input. Put them together: $ ifconfig | grep "inet"
inet6 ::1 prefixlen 128
inet6 fe80::1 prefixlen 64 scopeid 0x1
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::230:65ff:fe03:25bc prefixlen 64 scopeid 0x5
inet 10.0.0.104 netmask 0xffffff00 broadcast 10.0.0.255
A lot better already! Now, let's narrow it down to just the "inet" fields, not the "inet6" (which is actually IPv6, but that's beyond the scope of this discussion) by adding a space to the pattern: $ ifconfig | grep "inet "
inet 127.0.0.1 netmask 0xff000000
inet 10.0.0.104 netmask 0xffffff00 broadcast 10.0.0.255
Almost done. The second line has the real IP information for my computer because the IP address 127.0.0.1 is special, it's called your "loopback" address and always refers to your own computer, regardless of if you are running a Mac, PC, Linux or any other sort of machine. Just part of the definition of the underlying TCP/IP protocol. To get rid of that spurious match, I'll use grep again, but this time I'll include the '-v' flag, which reverses the logic of the search (that is, it'll match all lines that do not match the specified pattern): $ ifconfig | grep "inet " | grep -v 127.0.0.1
inet 10.0.0.104 netmask 0xffffff00 broadcast 10.0.0.255
That's short and sweet. One more step, just a little one, to remove the stuff we don't really care about in the output, okay? For this, I'm going to use cut, a great command line utility, to show me just the second field in the line, using spaces as a delimiter: $ ifconfig | grep "inet " | grep -v 127.0.0.1 | cut -d\ -f2 10.0.0.104 Perfect! Now, final step, save this as a Bash alias by typing in the following (exactly): $ echo alias myip="ifconfig | grep 'inet ' | grep -v 127.0.0.1 | cut -d\ -f2" >> ~/.bashrc Exit your Terminal window and launch a new one, and from this time forward you'll always be able to simply type myip to find out what your current IP address is, all within the terminal! Hope this helps you out!
Help others find this article at Del.icio.us, Digg, Netscape, Reddit, and Stumble Upon
Categorized:
Mac OS X Help
(Article 3963)
Tagged: Previous: How do I stop Windows XP screensaver asking for my password? Next: Does Google, Yahoo and MSN index Flash content? Subscribe!
Never miss another useful Q&A article again! Subscribe to AskDaveTaylor with Google Reader. Three other ways to get your IP Address on OS X: 1. Run the Network Utility (under Applications | Utilities ). Your IP address is in the Info tab, on the left, next to IP Address(es). You may need to change the "Network Interface" 2. Open up "Network Preferences" on the Location menu (under the Apple). Your IP Address will be in the List of different connections. 3. Use the "Net monitor" utility available from http://homepage.mac.com/rominar/net.html . It can be set to put a graph in your menu bar. Move your mouse over the graph and it will show a window with your IP Address. Posted by: Michael Clark at April 13, 2005 1:59 AMAssuming you have a single ethernet interface and an airport interface. Using Terminal.app you can use ipconfig. If you're connected via ethernet: If you're connect via airport: Or just use this supremely easy URL: i need internet on my psp! but it dnt work because the IP address is timed out how do i untime it out Posted by: dfcsdcf at February 18, 2007 5:40 AMdave, on my PSP my IP address times out.... so I type it in manually, but I dont know how to fine my Primary DNS and my Default router. P.S.(I have a Mac OS X) Posted by: michael m. at March 12, 2007 6:02 PMI have a lot to say, but ...
I do have a comment, now that you mention it!
|
![]()
Search
Find just the answers you seek from among our 1700+ free tech support articles by using our Lijit search engine.
Help!
Subscribe to
Ask Dave Taylor!
Free Updates!
Sign up and get free weekly updates and special offers on books, seminars, workshops and more.
Articles and Reviews
Auctions and Online Shopping Blogs and RSS Feeds Building Web site traffic Business and Management Cell Phones and Mobile Phones CGI Scripts and Web Site Programming Computer and Internet Basics d) None of the Above HTML and CSS Mac OS X Help MySpace, Facebook, Twitter and Social Network Help Pay Per Click (PPC) Search Engine Optimization Shell Script Programming Sony PSP, MP3 Players, Etc. The Writing Business Unix and Linux Help Video Game Tips and Help Windows Help
Recent Entries
Join the List!
Book Links
|