Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Jul 2001 16:34:17 -0700
From:      Michael VanLoon <MichaelV@EDIFECS.COM>
To:        "'Jag Johal'" <Jag@midstream.com>, "'hackers@freebsd.org'" <hackers@freebsd.org>
Cc:        "'hackers@freebsd.org'" <hackers@freebsd.org>
Subject:   RE: Finding MAC address of interface - programming question
Message-ID:  <36F7B20351634E4FBFFE6C6A216B30D54C81@ecx1.edifecs.com>

next in thread | raw e-mail | index | archive | help
Thanks that's just exactly the information I was looking for. :-)

I'm slow grunging through the code and man pages that take this apart.

As far as UNPv1 I assume you're referring to Stevens' "Unix Network
Programming"?  If I'm not mistaken he doesn't go much below the socket
level.  A quick glance through didn't reveal anything of this nature.

Thanks for the info.

> -----Original Message-----
> From: Jag Johal [mailto:Jag@midstream.com]
> Sent: Tuesday, July 31, 2001 4:21 PM
> To: 'hackers@freebsd.org'; Michael VanLoon
> Cc: 'hackers@freebsd.org'
> Subject: RE: Finding MAC address of interface - programming question
> 
> 
> Use sysctl(3), basically, its something like this.
> mib[0] = CTL_NET;
> mib[1] = AF_ROUTE;
> mib[2] = 0;
> mib[3] = AF_INET;
> mib[4] = NET_RT_IFLIST;
> mib[5] = 0;
> 
> sysctl(mib, 6, buf, &len, NULL, 0);
> buf will contain for each interface, an if_msghdr followed by 
> a sockaddr_dl,
> the sockaddr_dl will contain the interface name and mac addr. 
> Following that
> will be a ifa_msghdr for each ip address on the interface. 
> You may want to
> check out UNPv1. 
> 
> Jag
> 
> -----Original Message-----
> From: Chris Faulhaber [mailto:jedgar@fxp.org]
> Sent: Tuesday, July 31, 2001 3:56 PM
> To: Michael VanLoon
> Cc: 'hackers@freebsd.org'
> Subject: Re: Finding MAC address of interface - programming question
> 
> 
> On Tue, Jul 31, 2001 at 03:56:40PM -0700, Michael VanLoon wrote:
> > Please point me to a more appropriate forum if there is 
> one.  I'm kinda
> out
> > of my depth on this question.  Pseudo code is fine. :-)
> > 
> > What I'm looking for is how to enumerate the network 
> interfaces and get
> the
> > Ethernet MAC address of one programmatically.  Can anyone 
> point me in the
> > right direction?
> > 
> 
> /usr/src/sbin/ifconfig
> 
> -- 
> Chris D. Faulhaber - jedgar@fxp.org - jedgar@FreeBSD.org
> --------------------------------------------------------
> FreeBSD: The Power To Serve   -   http://www.FreeBSD.org
> 

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?36F7B20351634E4FBFFE6C6A216B30D54C81>