« Отговор #2 -: Jan 23, 2004, 15:58 »
Редактирах го, за да си поправя грешките
защо просто на PREROUTING веригата на nat таблицата не сложиш политика дроп и не приемаш само от определени MAC адреси?
Ако трябва да приемаш от интернет ще трябва да добавиш само да приема всичко от картата към него, или по-добре само на портовете, който ти трябват. Тогава праволата ще изглеждат така:
iptables -t nat -P PREROUTING DROP
iptables -t nat -A PREROUTING -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT (по едно правило за всеки MAC адрес)
iptables -t nat -A PREROUTING -i ethX -j ACCEPT (което ти е към интернет, ако искаш всичко)
iptables -t nat -A PREROUTING -i ethX -tcp --dport 80 -j ACCEPT (и съответно още такива правила за всички портове, който искаш отворени)
Предлагам ти това, защото ми звучи като опит да ограничаваш интернета на който не си е плащал от мрежата ти в блока. Така независимо дали са на статични или динамични IP, пак ще можеш да ги ограничаваш, а с DROP политиката ще си предпазиш сървъра от ненужни проблеми.
Да допълня..
Ако все пак ти трябва чак толкова да вържеш IP с MAC адрес това ще ти трябва като правило, за всеки компютър:
iptables -t nat -A PREROUTING -s xxx.xxx.xxx.xxx -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
Надявам се да съм бил от полза.