ipfw fwd и rdr ipnat + squid

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-17 14:46:16

1. ipnat не перенапровляет с двех сетевых fxp0 и fxp1 ( их ip находяться в одной сети, например 192.168.1.1 и 192.168.1.3).
делается пренапровление только с одной. правила ниже
2. ipnat отказывается перенапровлять пакеты по логичному правилу.

Код: Выделить всё

rdr fxp0 192.168.1.0/24 port 80 -> 127.0.0.1 port 3128 tcp
перенапровление идет только если сеть 192.168.1.0/24 заменить 0.0.0.0/0 , тоесть any

Код: Выделить всё

rdr fxp0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcp
rdr fxp1 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcp
3. ipnat перенапровляет пакеты с любого каличества сетевых , НО они должны быть в разных классах.
вариант 1 192.168.1.0/24 и 192.168.2.0/24 работает только одна подсеть
вариант 2 192.168.1.0/24 и 172.16.16.0/24 работают обе подсети, опять же при указании 0.0.0.0/0


ipfw fwd интересен тем что не нужно указывать устройства с каторого нужно перенапровлять , тоесть сетевые.
опять же fwd отказался работать и через него не шли правила когда указываю подсеть (192.168.1.0.24) , работает при значение any

Код: Выделить всё

ipfw add 25 fwd 127.0.0.1,3128 tcp from 192.168.1.0/24 to any 80 via ng0    не работает
ipfw add 25 fwd 127.0.0.1,3128 tcp from any to any 80 via ng0               работает
это то что прописано в прокси.

Код: Выделить всё

http_port 127.0.0.1:3128 intercept
прокоментируйте данное явление. может кто знает как с этим бороться.
Последний раз редактировалось terminus 2010-08-17 15:03:24, всего редактировалось 1 раз.
Причина: Автору, выбирайте пожалуйста раздел соответствуюший тематике вашего сообщения.
... Да освятится имя твое и pасшиpение твое, Господи...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-17 15:26:20

Код: Выделить всё

ipfw show
:)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-17 16:08:55

Код: Выделить всё

md5ksr# ipfw show
00010        0          0 check-state
00025        0          0 fwd 127.0.0.1,3128 tcp from 192.168.1.0/24 to any dst-port 80 via ng0
00050  9944663 6628180012 skipto 670 ip from any to any via fxp0
00050   418118  374242829 skipto 670 ip from any to any via rl0
00100      300      16146 deny log logamount 10 ip from any to 84.xx.xx.xx dst-port 21,22,135-139,443,445,1723 via ng0
00110        0          0 deny log logamount 10 tcp from any to 84.xx.xx.xx not established tcpflags fin
00120        0          0 deny log logamount 10 tcp from any to 84.xx.xx.xx tcpflags syn,fin,ack,psh,rst,urg
00130       11        548 allow log logamount 10 tcp from me 1723 to any keep-state
00180  6190969 6432312834 skipto 400 ip from any to any in via ng0
00181  4292201  600518472 skipto 600 ip from any to any out via ng0
00200    24700    2909748 allow ip from any to any via lo0
00210        0          0 deny ip from any to 127.0.0.0/8
00220        0          0 deny ip from 127.0.0.0/8 to any
00400        0          0 deny ip from any to 192.168.0.0/16 in via ng0
00405        0          0 deny ip from any to 10.10.0.0/16 in via ng0
00410        0          0 deny ip from any to 224.0.0.0/4 in via ng0
00420        0          0 deny ip from any to 240.0.0.0/4 in via ng0
00430        0          0 deny ip from any to 0.0.0.0/8 in via ng0
00440        0          0 deny ip from any to 172.16.0.0/16 in via ng0
00450  6190969 6432312834 skipto 660 ip from any to any in via ng0
00600      933      47344 deny ip from 192.168.0.0/16 to any out via ng0
00603        0          0 deny ip from 192.168.0.0/16 to any out via ng0
00605        0          0 deny ip from 172.16.0.0/16 to any out via ng0
00610        0          0 deny ip from 224.0.0.0/4 to any out via ng0
00620        0          0 deny ip from 240.0.0.0/4 to any out via ng0
00630        0          0 deny ip from 0.0.0.0/8 to any out via ng0
00660        0          0 deny icmp from any to 255.255.255.255 via ng0
00670        0          0 deny icmp from any to any frag
00680     4856     298636 allow icmp from any to any icmptypes 0,8,11
00690    13216    1163921 deny icmp from any to any
00699 10465307 7031320650 skipto 3300 ip from any to any via ng0
00720  4895406 5380743993 pipe 1 ip from not 192.168.1.0/24 to 192.168.1.0/24 out
00721   820508  687800841 pipe 3 ip from not 10.10.0.0/24 to 10.10.0.0/24 out
00722   264509  362241551 pipe 5 ip from not 172.16.16.0/24 to 172.16.16.0/24 out
00730  3476328  434907045 pipe 2 ip from 192.168.1.0/24 to not me in
00731   625585   58898869 pipe 4 ip from 10.10.0.0/24 to not me in
00732   148496    9909440 pipe 6 ip from 172.16.16.0/24 to not me in
02000  5693682 3992714257 allow tcp from any to any established
02200  4236844 2712093871 allow ip from any to any via fxp0
02500     6782     562965 allow ip from any to any via rl0
02600        0          0 allow gre from any to any
03300 10465465 7031393804 allow ip from any to any via ng0
05000        0          0 deny log logamount 10 ip from any to any
65535        2        156 deny ip from any to any


... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-17 16:49:30

гадский fwd не ведет счетчик пакетов, как насчет поставить перед ним такое же правило с count
и еще интересно, до или после ipfw работает у вас ipnat
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-17 18:23:29

до или после, незнаю. так это можно выяснить. одновременно rdr и fwd не использую. если одно то другое вырубаю...


опынтым путем выяснил. что у меня конкретно при наличии rdr и fwd первый перехватывает и перенаправляет fwd, значит ipnat работает после ipfw

fwd считает пакеты . вот пример наглядный касаемо any в правеле 28, а на 25 вообще несрабатывает

Код: Выделить всё

00010        0          0 check-state
00025        0          0 fwd 127.0.0.1,3128 tcp from 192.168.1.0/24 to any dst-port 80 via ng0
00028        7       1040 fwd 127.0.0.1,3128 tcp from any to any dst-port 80 via ng0
00050 10995005 7313673751 skipto 670 ip from any to any via fxp0
00050   507695  440009488 skipto 670 ip from any to any via rl0

... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-17 18:42:23

такое ощущение что оно натицо до того как работает fwd
как насчет вписать

Код: Выделить всё

fwd 127.0.0.1,3128 tcp from <nat адрес> to any dst-port 80 via ng0
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-17 19:34:46

nat адрес, это имееться ввиду ip внутренней сетевой или чего, непонел... что конкретно вписать

Код: Выделить всё

fwd 127.0.0.1,3128 tcp from <nat адрес> to any dst-port 80 via ng0
тоесть ты счетаешь нужно вообще отключить ipnat и попробывать. щас попробую.

ipnat.rules это такой вариант когда ipfw fwd работает

Код: Выделить всё

#rdr fxp0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcp

map ng0 192.168.1.0/24 -> 84.xx.xx.xx/32 portmap tcp/udp auto
map ng0 192.168.1.0/24 -> 84.xx.xx.xx/32
... Да освятится имя твое и pасшиpение твое, Господи...

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-17 19:50:39

а вот и выеснилось если я отрубаю ipnat, то пакеты пошли по логичному пути смотри ниже.

Код: Выделить всё

#rdr fxp0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcp
#map ng0 192.168.1.0/24 -> 84.xx.xx.xx/32 portmap tcp/udp auto
#map ng0 192.168.1.0/24 -> 84.xx.xx.xx/32
но тогда предеться использовать natd, по тому что в инет идет только 80 порт а остольное не натиться...

Код: Выделить всё

md5ksr# ipfw show
00010        0          0 check-state
00025      439      55864 fwd 127.0.0.1,3128 tcp from 192.168.1.0/24 to any dst-port 80 via ng0
00050 11178608 7410300202 skipto 670 ip from any to any via fxp0
00050   594544  502674081 skipto 670 ip from any to any via rl0


Твое мнение на счет natd по сравнению с ipnat по бытродействию и меньшей нагрузкой?
... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-17 20:30:14

бсдя какая? как насчет kernel nat или, прости господи, pf?
как ipnat грузится, модулем или вкомпилено в ядрышко ?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-18 2:18:44

на счет kernel nat пока незнаю. как он себя ведет?

ipnat собран в ядро.

Код: Выделить всё

md5ksr# uname -a
FreeBSD md5ksr 7.2-RELEASE FreeBSD 7.2-RELEASE #0
... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-18 8:18:46

порядок прохождения пакетов
http://paix.org.ua/freebsd/fwpackets.html
а kernel nat меня к примеру вполне устраивает
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-19 14:09:41

посмотрю. блогадарю за ссылку. а на счет кернел ната. в интернете ммного про него чего плохого пишут или это относиться к ранним версиям?
... Да освятится имя твое и pасшиpение твое, Господи...

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-19 19:39:59

посматри как такой конфиг будет работать. может что подправишь или совет дашь.

Код: Выделить всё

ipfw pipe 1 config bw 3500Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 1 config pipe 1 mask dst-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw pipe 2 config bw 900Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 2 config pipe 2 mask src-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

#  вот тут вопрос возникает у меня 2 сетевый смотрят в локалку , будет логично применить два правила
ipfw nat 1 config log if fxp0 same_ports reset deny_in
ipfw nat 1 config log if rl0  same_ports reset deny_in


ipfw add pipe 1 ip from not 10.10.0.0/24 to 10.10.0.0/24 out
ipfw add pipe 2 ip from 10.10.0.0/24 to not me in

ipfw add 3300 queue 1 ip from any to any out xmit ng0
ipfw add 3301 nat 1 ip from any to any via gn0
ipfw add 3302 queue 2 ip from any to any in recv ng0

... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-19 20:10:59

нет, делайте два разных nat
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-19 20:14:20

тогда вопрос у меня канал один и и я хочу его использовать по максимому. не деля его по полам для двех nat и не делать 4 pipe...

что можно придумать в этой ситуации
... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-19 20:30:17

а я не понял почему nat вы пишете в сторону локалки :)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-19 21:37:31

да точно подмечено.. затупил что то...

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

Код: Выделить всё

ipfw pipe 1 config bw 3500Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 1 config pipe 1 mask dst-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw pipe 2 config bw 900Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 2 config pipe 2 mask src-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw add pipe 1 ip from not 10.10.0.0/24 to 10.10.0.0/24 out
ipfw add pipe 2 ip from 10.10.0.0/24 to not me in

# nat пока не трогал пока просто шейпер потестить решил. натиться все пока через ipnat

интересно получаеться. щас работает 4 pc с одресами
10.10.0.15
10.10.0.17
10.10.0.19
10.10.0.36
у всех все работает... только я не пойму работает ли шейпер.
пример 5 взял с сайта http://www.lissyara.su/articles/freebsd ... /ipfw_nat/ про kernel nat.
вобщемто внизу брет какойто. не разяснишь?

Код: Выделить всё

md5ksr# ipfw pipe show

00001:   3.500 Mbit/s    0 ms   60 sl. 1 queues (1 buckets)
          GRED w_q 0.001999 min_th 10 max_th 30 max_p 0.099991
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp    94.100.178.25/443        10.10.0.19/49435 1737245 1500238965  0    0 333

00002: 900.000 Kbit/s    0 ms   60 sl. 1 queues (1 buckets)
          GRED w_q 0.001999 min_th 10 max_th 30 max_p 0.099991
    mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 tcp       10.10.0.15/1940     95.25.173.15/80    1121502 104434550  0    0  14


q00001: weight 1 pipe 1   60 sl. 1 queues (64 buckets)
          GRED w_q 0.001999 min_th 10 max_th 30 max_p 0.099991
    mask: 0x00 0x00000000/0x0000 -> 0xffffffff/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
 22 ip           0.0.0.0/0        84.xx.xx.xx/0     2551972 2606102469  0    0 751

q00002: weight 1 pipe 2   60 sl. 1 queues (64 buckets)
          GRED w_q 0.001999 min_th 10 max_th 30 max_p 0.099991
    mask: 0x00 0xffffffff/0x0000 -> 0x00000000/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
 46 ip      84.xx.xx.xx/0             0.0.0.0/0     1743925 152469032  0    0   0
... Да освятится имя твое и pасшиpение твое, Господи...

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-19 21:43:18

попробывал щас этот вариант... даже пинг не пошел и злой интернет.

Код: Выделить всё

ipfw nat 1 config log if ng0 same_ports reset deny_in

ipfw add 3300 queue 1 ip from any to any out xmit ng0
ipfw add 3301 nat 1 ip from any to any via ng0
ipfw add 3302 queue 2 ip from any to any in recv ng0
... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-19 23:17:34

смотрите man ipfw в части one_pass и прохождение пакетов через nat и pipe/queue
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-20 12:32:25

эта конструкция вообще не работает, не зависимо от one_pass

Код: Выделить всё

ipfw pipe 1 config bw 3500Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 1 config pipe 1 mask dst-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw pipe 2 config bw 900Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 2 config pipe 2 mask src-ip 0xffffffff queue 60 gred 0.002/10/30/0.1


ipfw nat 1 config log if ng0 reset same_ports deny_in

ipfw add  queue 1 ip from any to any out xmit ng0
ipfw add  nat 1 ip from any to any via ng0
ipfw add queue 2 ip from any to any in recv ng0
работатет если выкинуть правила queue... и шейпер ведет себя как то не так... а конфиг с сайта и говорят что рабочий

Код: Выделить всё

ipfw pipe 1 config bw 3500Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 1 config pipe 1 mask dst-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw pipe 2 config bw 900Kbit/s queue 60 gred 0.002/10/30/0.1
ipfw queue 2 config pipe 2 mask src-ip 0xffffffff queue 60 gred 0.002/10/30/0.1

ipfw nat 1 config log if ng0 reset same_ports deny_in

ipfw add  nat 1 ip from any to any via ng0
... Да освятится имя твое и pасшиpение твое, Господи...

RAGNAR
ст. прапорщик
Сообщения: 530
Зарегистрирован: 2009-07-10 22:12:06
Откуда: Ржев
Контактная информация:

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение RAGNAR » 2010-08-20 12:35:23

а по поводу основного вопроса... kernel nat, все работает различий от ipnat .
... Да освятится имя твое и pасшиpение твое, Господи...

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw fwd и rdr ipnat + squid

Непрочитанное сообщение hizel » 2010-08-20 12:46:23

это полный набор правил? в таких случаях просят

Код: Выделить всё

ipfw -d show
ибо конструкция с one_pass должна работать

Код: Выделить всё

ipfw add  queue 1 ip from any to any out xmit ng0
ipfw add  nat 1 ip from any to any via ng0
ipfw add queue 2 ip from any to any in recv ng0
я чтобы не ломать моск обычно разделяю nat правила

Код: Выделить всё

disable one_pass
#каша
#неизвестно входящие соединения требуют НАТ или нет
100 nat 1 ip from any to <nat-ip> in via ng0
#далее в правилах все адреса нормальные без НАТ 
200 add queue 1 ip from any to any out via ng0
300 add queue 2 ip from any to any in via ng0
3000 nat 1 ip from any to any out via ng0
# исходящие соединения оттранслированы если требуется
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.