Jump to content
Калькуляторы

ng_nat + pipe

Ребята, есть ли у кого-нибудь пример nat_ng + pipe на внешнем интерфейсе.

что-то не могу заставить шейпить исходящий трафик - входящий шейпит (если перенести на внутренний интерфейс, то шейпится все как положено)

 

 

mkpeer ipfw: nat 60 out

name ipfw:60 nat

connect ipfw: nat: 61 in

msg nat: setaliasaddr внешний_ip

 

/sbin/ipfw add 1000 netgraph 61 all from any to any in via внешний_ip

/sbin/ipfw add 1010 netgraph 60 all from any to any out via внешний_ip

 

ipfw pipe 2000 config bw 128Kbit/s

ipfw add 2000 pipe 2000 ip from any to IP/MASK in via внешний_ip

ipfw add 2000 pipe 2000 ip from IP/MASK out via веешний_ip

 

 

 

IP/MASK - внутренний IP

 

на меня проходит все оки, от меня не шейпит - перепробовал все комбинации уже, и ничего

 

PS: fw.one_pass=0

 

 

поделитесь примерчиками если не затруднит.

Edited by romka

Share this post


Link to post
Share on other sites
/sbin/ipfw add 1000 netgraph 61 all from any to any in via внешний_ip

ipfw add 2000 pipe 2000 ip from any to IP/MASK in via внешний_ip

правила сработают на входе и на выходе, чтобы этого непроисходило -

ipfw add 10 skipto 120 all from any to any out xmit $lan_if
ipfw add 20 skipto 260 all from any to any in recv $lan_if

ipfw add 2000 pipe 2000 ip from IP/MASK out via веешний_ip
поставить № 500 и заработает
Edited by IvanI

Share this post


Link to post
Share on other sites

Ничего не понял :)

 

зачем мне pipe правила разносить ?,

нельзя разве без skip-to ?

 

мой список прохождения пакетов где (em2 = внешний интерфейс):

видно что на pipe in прохождение 0

 

 

[root@nat ~]# ipfw show

00300 13947 8308069 netgraph 61 ip from any to any in via em2

00400 15343 5124168 netgraph 60 ip from any to any out via em2

00900 378 28873 allow ip from any to me

00900 10849 2540451 allow ip from me to any

01000 175 12332 allow ip from 192.168.1.8 to me via em2

01000 29 1973 allow ip from me to 192.168.1.8 via em2

01000 13 1767 allow udp from 195.225.130.2 53 to me via em2

01000 0 0 allow udp from me to 192.225.130.2 dst-port 53 via em2

05005 1484 1154592 pipe 5005 ip from any to 10.10.11.99 in via em2

05005 0 0 pipe 5005 ip from 10.10.11.99 to any out via em2

05005 46 4977 pipe 100 icmp from any to 10.10.11.99 in via em2

05005 0 0 pipe 100 icmp from 10.10.11.99 to any out via em2

05005 1686 250295 allow ip from 10.10.11.99 to any

05005 2968 2309184 allow ip from any to 10.10.11.99

65535 1326 130763 deny ip from any to any

Edited by romka

Share this post


Link to post
Share on other sites
/sbin/ipfw add 1000 netgraph 61 all from any to any in via внешний_ip

/sbin/ipfw add 1010 netgraph 60 all from any to any out via внешний_ip

ipfw add 2000 pipe 2000 ip from IP/MASK out via веешний_ip

поставить 1010 правило после 2000. Чтобы натился трафик после pipe'а, а не перед.

Share this post


Link to post
Share on other sites

репит:

 

out xmit ааа

in recv ааа

однозначно идентифицируют поток отправляемый и принимаемый через ааа

 

последовательность действий при отправке - _сначала_шейпинг_ потом нат, при приеме - сначала нат потом шейпинг

Share this post


Link to post
Share on other sites

все ок, по логике заработало. криво конечно - пришлось прикручивать таблицы чтобы красивее смотрелось

Share this post


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
Sign in to follow this