[RFC] ifconfig: match by link-level address
From: Peter Pentchev (roam_at_ringlet.net)
Date: 05/20/04
- Previous message: Eugene Grosbein: "Re: [ANALISYS] Re: multicast arp entry"
- Next in thread: Brooks Davis: "Re: [RFC] ifconfig: match by link-level address"
- Reply: Brooks Davis: "Re: [RFC] ifconfig: match by link-level address"
- Maybe reply: Louis A. Mamakos: "Re: [RFC] ifconfig: match by link-level address"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 20 May 2004 19:29:19 +0300 To: freebsd-net@FreeBSD.org
Hi,
I found out recently that the Linux (or at least recent RedHat) startup
scripts could be configured to not bring up an Ethernet interface unless
it has a specified MAC address. This, combined with the wonderful
interface renaming functionality recently committed to -CURRENT, led me
to the idea of interface renaming on boot-up, by hardware addresses -
something like 'I don't care how you detected this network card, or how
many others like it are there, but the card with MAC address
00:03:0d:08:dc:a7 will be known as sis0int from now on'.
The main missing piece was the ability to find an interface by MAC
address; hence the attached patch, also available at
http://www.ringlet.net/~roam/bsd-patches/src5/sbin-ifconfig-hwmatch.patch
http://people.FreeBSD.org/~roam/bsd-patches/src5/sbin-ifconfig-hwmatch.patch
It teaches ifconfig(8) to treat interface "names" beginning with 'hw-'
as link-level addresses; ifconfig tries to find an interface with this
address and behaves as if its name was specified on the command line:
[roam@straylight ~/fbsd/r/src/sbin/ifconfig]> ./ifconfig hw-00:03:0d:08:dc:a7
sis0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=8<VLAN_MTU>
inet 10.0.8.129 netmask 0xffff0000 broadcast 10.0.255.255
inet 192.168.1.13 netmask 0xffffff00 broadcast 192.168.1.255
ether 00:03:0d:08:dc:a7
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
[roam@straylight ~/fbsd/r/src/sbin/ifconfig]>
This could be the first step towards teaching rc.conf about something like
network_interfaces_rename="hw-00:03:0d:08:dc:a7 sis0int"
I had initially written my own function for parsing the user-supplied
address into a sequence of bytes instead of using ether_aton(); it would
have the advantage of being able to specify 'hw-' to match lo0's empty
link-level "address". However, the odds of somebody actually wishing to
rename lo0 don't seem to be so high :)
G'luck,
Peter
-- Peter Pentchev roam@ringlet.net roam@sbnd.net roam@FreeBSD.org PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553 You have, of course, just begun reading the sentence that you have just finished reading.
- text/plain attachment: sbin-ifconfig-hwmatch.patch
- application/pgp-signature attachment: stored
- Previous message: Eugene Grosbein: "Re: [ANALISYS] Re: multicast arp entry"
- Next in thread: Brooks Davis: "Re: [RFC] ifconfig: match by link-level address"
- Reply: Brooks Davis: "Re: [RFC] ifconfig: match by link-level address"
- Maybe reply: Louis A. Mamakos: "Re: [RFC] ifconfig: match by link-level address"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|