Cernat Gabriel wrote:
>
> La iptables extensia mark cum lucreaza?
> Exista vreun camp in pachetul ip (eventual antet) care este
> posibil a fi markat?
Nu. (ai putea sa te joci cu tos-ul dar nu asta face mark).
> Sau pachetului ii este atasata o structura
> suplimentara de date care este "dezasociata" la iesirea prin interfata
> de out a pachetului astfel incat marcarea nu mai e valabila pe un
> alt calculator?
Da, fiecarui packet ii e asociat un sk_buff, sau mai bine zis in Linux
pachetul e un sk_buff (vezi include/linux/skbuff.h).
sk_buff are un camp nfmark care e folosit de iptables (net filter mark).
> Daca este o structura de date suplimentara cand
> se face "asocierea" si este valabila si pentru a fi folosita si alte
> programe sau comenzi (ex. iproute-despre care nu stiu mare lucru)
Asocierea se face cand ii spui tu :) Poti sa o faci fie in PREROUTING
fie in OUTPUT (vezi mangle la iptables).
De exemplu daca marchezi in PREROUTING se face practic imediat dupa ce
packetul a fost primit de placa : net_if_rx ia pachetul de la placa, il
face sk_buff, il baga in coada si apoi face raise la soft irq,
net_rx_action se executa cand e tratat soft irq-ul, ip_rcv e chemat de
net_rx_action daca pachetul e ip. ip_rcv face niste sanity checks apoi
executa hook-urile netfilter de pe PREROUTING. Dupa asa e chemat
ip_rcv_finish, ip_route_input etc.
Daca marchezi in OUTPUT e oarecum similar cu exceptia faptului ca
pachetele sunt generate local (de procese de pe masina locala) si nu vin
de pe retea.
Poti folosi nfmark-ul si in alte comenzi, de exemplu rules in iproute:
ip ru add fwmark 1234 lookup 3
> Care sunt valorile admise pentru un mark?
unsigned long nfmark;
> Cum se lucreaza cu maskul?
--mark value[/mask]
Matches packets with the given unsigned mark value
(if a mask is specified, this is logically ANDed
with the mark before the comparison).
Andrei
---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to
unsubscribe from this list.