Jump to content

правильное использование ipset bitmap:ip,mac


Recommended Posts

приветствую

 

использовал у себя конструкцию:

iptables.init:

ipset create internet hash:ip
/sbin/iptables -t filter -A FORWARD -m set --match-set internet src,dst -j ACCEPT
/sbin/iptables -t filter -A FORWARD -m set --match-set internet dst,src -j ACCEPT

OnConnect

ipset add internet $ip

народ начал играться подменой адресов.

хочу сделать

iptables.init:

ipset create internet bitmap:ip,mac range 10.238.0.0/16
/sbin/iptables -t filter -A FORWARD -m set --match-set internet src,dst -j ACCEPT
/sbin/iptables -t filter -A FORWARD -m set --match-set internet dst,src -j ACCEPT

OnConnect

ipset add internet $ip,$mac

проверяю:

ipset add internet 10.238.48.251,c0:4a:00:8e:1a:17
ipset test internet 10.238.48.251,c0:4a:00:8e:1a:17
10.238.48.251,c0:4a:00:8e:1a:17 is in set internet
ipset test internet 10.238.48.251
10.238.48.251 is in set internet

но в интернет не пускает

понимаю, что ошибка здесь:

/sbin/iptables -t filter -A FORWARD -m set --match-set internet src,dst -j ACCEPT
/sbin/iptables -t filter -A FORWARD -m set --match-set internet dst,src -j ACCEPT

но в чем, не подскажете ?

 

прошу не подымать дискуссию о том, что начнут подменять маки. интересует только технический вопрос

Link to post
Share on other sites

разобрался сам :) :

 

iptables.init:

ipset create internet bitmap:ip,mac range 10.238.0.0/16
/sbin/iptables -t filter -A FORWARD -m set --match-set internet src,src -j ACCEPT
/sbin/iptables -t filter -A FORWARD -d 10.238.0.0/16 -j ACCEPT

пробовал правило

/sbin/iptables -t filter -A FORWARD -m set --match-set internet dst,dst -j ACCEPT

но не проходит, очевидно, это связано с тем, что маки привязываются к интерфейсам, а на входящем интерфейсе незафиксированны маки. в принципе можно сделать еще один сет для входящих пакетов. но у меня все за натом, поэтому последнее правило меня устраивает

Edited by dummy
Link to post
Share on other sites

Эмммм, это вы так страшно arp -S пытаетесь эмулировать?

 

Скорее, ip neigh add permanent

:)

 

PS На самом деле, отличие существенное ipset от permanent arp.

Edited by vop
Link to post
Share on other sites
Эмммм, это вы так страшно arp -S пытаетесь эмулировать?

нет

 

 

PS На самом деле, отличие существенное ipset от permanent arp.

согласен

 

у меня в сети все работают по Always-Online:

ткнулся абон в инет - в браузере предложило ввести имя-пароль. для данного абона только в этот момент сохранился ип+мак. инет заработал.

после простоя больше 15 мин инет автоматом выключился

в след раз пользователь ткнулся в инет, - по совпадению комбинации ип/мак автоматом включился инет и все ок.

проблема в том, что вредитель(сосед), зная ип абона, может прописать себе ип соседа и пользоваться его инетом - уже были случаи

знаю, может и мак прописать, но пока такого еще не было

на время пройдет такая заглушка, а сейчас проводится замена свичей на умные и будет проверка на ип-мак-порт, и, надеюсь, проблем больше не будет

Edited by dummy
Link to post
Share on other sites

Первоначальная конструция у вас не работала из-за логической ошибки.

-m set --match-set internet src,dst
-m set --match-set internet dst,src

В случае с IP конструкция работала, второй параметр тупо игнорировался т.к. список одномерный.
После переделки на двумерный(IP и MAC), начал работать второй параметр. И вылезло что вы пытаетесь проверять src IP и dst MAC, естественно должно быть src.

А согласно man'у dst mac для ipset вообще проверять невозможно :)

The bitmap:ip,mac type of sets require two src/dst parameters of the set match ... and the second one must be src to match, add or delete entries, because the set match .. have access to the source MAC address only.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...