[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49EF8891.9010306@cosmosbay.com>
Date: Wed, 22 Apr 2009 23:13:53 +0200
From: Eric Dumazet <dada1@...mosbay.com>
To: Inaky Perez-Gonzalez <inaky@...ux.intel.com>
CC: netdev@...r.kernel.org
Subject: Re: What makes a good fake MAC address?
Inaky Perez-Gonzalez a écrit :
> Hi All
>
> The Intel i2400m WiMAX driver behaves as an ethernet device, and currently
> when sending packets to the netdev stack, it fakes an ethernet header, sets
> the "from" mac address to zeroes and the "to" to it's own MAC address.
>
> The WiMAX network can be considered to be a point-to-point (up to the gateway)
> connection, all IP based, so there are not MAC addresses from our gateway
> (not to mention that it can change behind us).
>
> The problem with using a zero mac address is that it confuses the bridging
> software (and maybe others). I was wondering, what would be a fake mac
> address we could put in there that is legal for this kind of "faking"? [or
> the closest thing to legal?]
>
> Thanks!
>
We have random_ether_addr(), it should be self explained :)
/**
* random_ether_addr - Generate software assigned random Ethernet address
* @addr: Pointer to a six-byte array containing the Ethernet address
*
* Generate a random Ethernet address (MAC) that is not multicast
* and has the local assigned bit set.
*/
static inline void random_ether_addr(u8 *addr)
{
get_random_bytes (addr, ETH_ALEN);
addr [0] &= 0xfe; /* clear multicast bit */
addr [0] |= 0x02; /* set local assignment bit (IEEE802) */
}
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists