|
| Mac-adresse i Linux-kernen Fra : Rasmus Bøg Hansen |
Dato : 28-10-05 17:26 |
|
Hej
Jeg roder med noget kode i Linux-kernen (2.6.X), nærmere bestemt et
QoS-modul (WRR for at være mere bestemt).
For at gøre et langt spørgsmål så kort som muligt, skal jeg bruge
mac-adressen på afsender og helst også modtager (sidstnævnte er
formentlig kun muligt, når man kører bridging)...
I gamle dage (2.2) fik man mac-adresse fra skbuff'enpå denne måde (dog
kun hvis man kørte bridging):
skb->mac.ethernet->h_source
skb->mac.ethernet->h_dest
men den var kun tilgængelig, hvis man kørte bridging. Nu om dage synes
dette at skulle gøres med:
eth_hdr(skb)->h_source
eth_hdr(skb)->h_dest
men tilsyneladende er mac-adresserne ikke tilgængelige, selv ikke når
man kører bridging. Jeg tjekker om de er tilgængelige ved at undersøge
om der er en ethernet header i skbuff'en:
if (skb->mac.raw >= skb->head && (skb->mac.raw + ETH_HLEN) <= skb->data))
{ ... }
Men skb->mac.raw synes at være 0 uanset hvad...
Er det korrekt forstået at man på dette niveau (sched) i 2.6-kernerne
ikke kan uddrage mac-adresserne på hverken modtager eller afsender,
selv ikke når man kører bridging?
Pft
/Rasmus
--
-- [ Rasmus "Møffe" Bøg Hansen ] ---------------------------------------
Tolkien? Who's that? Wasn't that Lord of the rings thingy written by
this Peter Jackson guy?
-- Till Westermayer on alt.fan.douglas-adams
----------------------------------------------[ moffe at zz9 dot dk ] --
| |
Rasmus Bøg Hansen (01-11-2005)
| Kommentar Fra : Rasmus Bøg Hansen |
Dato : 01-11-05 01:29 |
|
spam05@zz9.dk (Rasmus Bøg Hansen) hit the keyboard.
Afterwards the following was on the screen:
> Jeg roder med noget kode i Linux-kernen (2.6.X), nærmere bestemt et
> QoS-modul (WRR for at være mere bestemt).
>
> For at gøre et langt spørgsmål så kort som muligt, skal jeg bruge
> mac-adressen på afsender og helst også modtager (sidstnævnte er
> formentlig kun muligt, når man kører bridging)...
/* SNIP */
> Er det korrekt forstået at man på dette niveau (sched) i 2.6-kernerne
> ikke kan uddrage mac-adresserne på hverken modtager eller afsender,
> selv ikke når man kører bridging?
Nå, ifølge kerneguruerne er mac-adressen åbenbart kun tilgængelig i
ganske særlige tilfælde i sched-laget. Øjensynlig skyldes det at der
kan jongleres rundt med pakker (netfilter, sched-moduler og meget
andet), at man ikke kan regne med at have den tilgængelig.
--
-- [ Rasmus "Møffe" Bøg Hansen ] ---------------------------------------
Christ, you haven't even seen the film yet and you're comparing it,
unfavourably, to a dressing gown.
-- Freakstone on alt.fan.douglas-adams
----------------------------------------------[ moffe at zz9 dot dk ] --
| |
|
|