Solved

NetBios tables, and IP to MAC address translation

Posted on 2001-08-29
7
1,265 Views
Last Modified: 2013-12-03
I'm trying to programatically get the information which is returned by running the call nbtstat.  Basically, I want to get a look at a computers Netbios Name Table.  Unfortunately, all I have is the computers IP address.

From what I can tell, you can use the NetBios() call to get the Name table of a computer, but you need to have the computer's MAC address to make the NetBios() call.   ( Actually, I'm not even sure that would work come to think of it. I'm on a different physical network than the computer I'm querying.)  At any rate, I can't find a way to translate between IP and MAC.  Win2k has SendArp() but I need something for general Win32.  And writing my own arp driver appears to require raw socket access which has the same problem.

Can anyone tell me how to get the name table nbtstat will display to you.  Am I on the right track?  If so, how can I get the right MAC Address?  Any tips appreciated.
0
Comment
Question by:nothingman
  • 2
  • 2
7 Comments
 

Author Comment

by:nothingman
ID: 6439365
Slight clarification.  nbtstat is not a call.  It's a program that ships with Windows.  You give it an IP and it gives you the Name table.  
0
 
LVL 15

Accepted Solution

by:
NickRepin earned 300 total points
ID: 6439475
0
 

Author Comment

by:nothingman
ID: 6439519
Do you have a specific function in mind.  The only way I can see to do it based on the IP Helper API is with SendArp(), and that only works on Win2k.  
0
 
LVL 15

Expert Comment

by:NickRepin
ID: 6444023
GetAdaptersInfo()
IP_ADAPTER_INFO.CurrentIpAddress   <-- IP
IP_ADAPTER_INFO.IpAddressList

IP_ADAPTER_INFO.Address   <---- MAC
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to programmatically preset the "Pages per Sheet" option that's available with most printer drivers.   This setting lets you do "n-Up" printing, where two, four, or more pages are printed on each sheet of paper. If your …
If you have ever found yourself doing a repetitive action with the mouse and keyboard, and if you have even a little programming experience, there is a good chance that you can use a text editor to whip together a sort of macro to automate the proce…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

856 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