Solved

TCP/IP: Determine IP# for PPP interface on WIN32

Posted on 1998-07-29
3
169 Views
Last Modified: 2010-03-05
The following code will provide you with the IP# on the primary Ethernet Card in Win95. However, it won't let you find out your current PPP IP#.

Extra Special points for anyone who can tell me how to find ALL IP#'s on the machine (ex. 2 PPP connects + 2 ethernet cards) - using PERL not winipcfg :-)

Thanks,
Timothy


use Sys::Hostname;
print "start of an IP Poster in PERL\n";
print join '.', unpack 'C4', gethostbyname hostname;
print "\n" . hostname;
0
Comment
Question by:tcolson
3 Comments
 

Expert Comment

by:ijduggan
ID: 1208876
Is it possible for you to just parse the output of the netstat program?

"netstat -n"  returns data on current connections. You could try something like:

my %connections;
open(NETSTAT, "netstat -n |");
while(<NETSTAT>) {


process netstat data


}

Does netstat provide you with enough information to do what you want?

0
 

Author Comment

by:tcolson
ID: 1208877
IJDUGGAN wrote:
>Does netstat provide you with enough information
>to do what you want?
Unfortunately no - Netstat provides you with currently active connections on specific ports. So, for example, right now I'm connected to my ISP...and every 5 minutes my email client polls for mail -> during this time:
C:\WINDOWS>netstat
Active Connections
  Proto  Local Address          Foreign Address        State
  TCP    homebrew:1045          popserver.somewhere.com:pop3  TIME_WAIT

However, after this connection has closed:
C:\WINDOWS>netstat
Active Connections
  Proto  Local Address          Foreign Address        State

-> No data. But I am still connected to my ISP...so there must be another way to find the IP#.

Perhaps the answer lies in finding out where WINIPCFG gets its information from??? This stuff must be in the registry somewhere, eh?

Thanks,
TLC

0
 
LVL 5

Accepted Solution

by:
b2pi earned 100 total points
ID: 1208878
It's doable... but somewhat difficult.  You'll rely heavily on the registry module, and I'll assume you know how to use that.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Adapters
has subkeys that are a list of all the adapters. Those that are active will have NameServer and NameServerBackup values (but those will be blank)

On my machine, I've got
HKLM\CurrentControlSet\Services\NetBT\Adapters\El90x1
and
HKLM\CurrentControlSet\Services\NetBT\Adapters\NdisWan6

Then, go to
HKLM\CurrentControlSet\Services\X\Parameters\Tcpip
(Where X is one of the listed subkeys above, for instance El90x1, above)
and look at the value IPAddress for for the IPAddress.

So, that's of moderate difficulty?
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

I've just discovered very important differences between Windows an Unix formats in Perl,at least 5.xx.. MOST IMPORTANT: Use Unix file format while saving Your script. otherwise it will have ^M s or smth likely weird in the EOL, Then DO NOT use m…
A year or so back I was asked to have a play with MongoDB; within half an hour I had downloaded (http://www.mongodb.org/downloads),  installed and started the daemon, and had a console window open. After an hour or two of playing at the command …
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…

760 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

16 Experts available now in Live!

Get 1:1 Help Now