LINUX.ORG.RU
ФорумAdmin

iptables + -d ! ip_adres's


0

0
В общем есть правило

/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE -s 10.0.0.112 -d ! 81.222.178.8 -o vlan55

которое значит натить на все кроме ип адреса 81.222.178.8, в общем то мне и надо ТОЛЬКО надо не один такой адрес а пачка (ип будет из разных подсетей). Кто знает как сделать ?


Попробуй patch-o-matic там есть возможность указывать ip через запятую.
anonymous
()
Ответ на: комментарий от anonymous
а если без него ? неужто нельзя ?
PUZO
() автор топика
iptables -t nat -A POSTROUTING -s 10.0.0.112 -d 81.222.178.8 -o vlan55 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.0.0.112 -d x.x.x.x -o vlan55 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.0.0.112 -d y.y.y.y -o vlan55 -j ACCEPT
...
iptables -t nat -A POSTROUTING -s 10.0.0.112 -o vlan55 -j MASQUERADE

Это для случая, если пакеты должны выходить, но без masquerade. Если же на указанные IP пакеты вобще не должны выходить - запретить их в FORWARD, OUTPUT цепочках таблицы filter (чтоб до nat POSTROUTING даже не доходили).
spirit ★★★★★
()
Ответ на: комментарий от spirit
так и я могу, но мне надо одним правилом. просто у меня на машине 1000 пользователей и делать для каждого из них 6-10 правил это задница
PUZO
() автор топика
Ответ на: комментарий от spirit
да и натить надо куда угодно кроме тех адресов. а надо это для того что бы работал простой форвард, тоесть что бы на www сервере были их ип адреса а не адрес vlan55
PUZO
() автор топика
Ответ на: комментарий от saper
Я же вроде правильно выразился >>> надо не один такой адрес а пачка (ип будет из разных подсетей) >>> и мне надо все одним правилом, и оматик не помог.
PUZO
() автор топика
Ответ на: комментарий от PUZO
1. Пакеты на not_NAT (81.222.178.8, ...) адреса маркируешь на входе.
   Ну будет у тебя N правил, где N="кол-во not_NAT"

2. На выходе 
   iptables -t nat -A POSTROUTING -s yyy -m mark --mark ! XXX -j MASQUERADE ...
sdio ★★★★★
()
Ответ на: комментарий от sdio
а разве таблица натов идет не самая первая ? толку маскировать, можно было и форвард обычный, если бы нат не шел первой таблицей по приоритетам.
PUZO
() автор топика
Ответ на: комментарий от PUZO
-t nat PREROUTING -- первый


-t nat POSTROUTING -- последний
sdio ★★★★★
()
Ответ на: комментарий от PUZO
Используй маску, если не можешь сформулировать по какому принципу у тебя раздаются IP, то решить твою проблему одним правилом не получится.
saper ★★★★★
()
Ответ на: комментарий от saper
я сделал интересней, дал всем нат, на запретил форвард по дефолту и в общем в динамике теперь только добавка в правило форварда. Спасибо всем кто пытался помочь.
PUZO
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.