Биллинговая система Nodeny
06 Октября 2024, 06:32:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1] 2
  Печать  
Автор Тема: Помощь с gw  (Прочитано 10735 раз)
Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« : 18 Января 2010, 16:47:59 »

Нужна помощь с настройкой шлюза.

Всё работает всё хорошо, в инет у всех работает, надо добавить нат на pf, а с pf первый раз столкнулся.

# pfctl -sn
No ALTQ support in kernel
ALTQ related functions disabled
nat pass on vr0 inet from 10.1.1.0/24 to any -> 91.212.80.138
nat pass on vr0 inet from 10.1.16.0/24 to any -> 91.212.80.138
nat pass on vr0 inet from 10.1.17.0/24 to any -> 91.212.80.138

# ifconfig
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:02:44:8b:c5:6a
        inet 10.10.0.4 netmask 0xffffff00 broadcast 10.10.0.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=8<VLAN_MTU>
        ether 00:02:44:57:83:04
        inet 10.1.1.1 netmask 0xffffff00 broadcast 10.1.1.255
        inet 10.1.16.1 netmask 0xffffff00 broadcast 10.1.16.255
        inet 10.1.17.1 netmask 0xffffff00 broadcast 10.1.17.255
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=2808<VLAN_MTU,WOL_UCAST,WOL_MAGIC>
        ether 00:0d:87:75:de:49
        inet 91.212.80.138 netmask 0xfffffff8 broadcast 91.212.80.143
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        inet 127.0.0.1 netmask 0xff000000

# uname -a
FreeBSD gw1.lnet 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Tue Oct 27 05:19:55 EET 2009     groov@tp.home:/usr/src/sys/i386/compile/ROUTER  i386

]# ipfw show
00040    19067    1037132 allow tcp from 10.10.0.2 to me dst-port 514
00041    24913   28571993 allow tcp from me 514 to 10.10.0.2
00050    38451    2125384 allow tcp from any to me dst-port 22
00051    52614   11758964 allow tcp from me 22 to any
00100     1621      77756 deny tcp from any to any dst-port 445
00110      862      95958 allow ip from any to any via lo0
00120   252971   24961430 skipto 1000 ip from me to any
00130    10795     604520 deny icmp from any to any in icmptypes 5,9,13,14,15,16,17
00140     1528      79425 deny ip from any to table(120)
00150      300      31471 deny ip from table(120) to any
00160   270626  127172938 skipto 2000 ip from any to me
00200 10547093 8644732869 skipto 500 ip from any to any via vr0
00300  4192692  311386681 skipto 4500 ip from any to any in
00400  6429487 8317518190 skipto 450 ip from any to any recv vr0
00420    16971     674609 divert 1 ip from any to any
00450  6446448 8318192345 divert 2 ip from any to any
00490  6444742 8315738511 allow ip from any to any
00500  6445827 8338723414 skipto 32500 ip from any to any in
00510  4101266  306009455 divert 1 ip from any to any
00540  4100997  305983594 allow ip from any to any
01000    65917    8658549 allow udp from any 53,7723 to any
01010   228598  119685727 allow tcp from any to any setup keep-state
01020    99033   13461634 allow udp from any to any keep-state
01100    18419    2558895 allow ip from any to any
02000        0          0 check-state
02010    16396     996959 allow icmp from any to any
02020     2029     308163 allow tcp from any to any dst-port 80,443
02050    24382    2722948 deny ip from any to any via vr0
02060    68583    3727459 allow udp from any to any dst-port 53,7723
02100      240      14034 deny ip from any to any
05000    40514    2461723 deny ip from not table(0) to any
05001        0          0 skipto 5010 ip from table(127) to table(126)
05002  4135555  308280132 skipto 5030 ip from any to not table(2)
05003       22       1634 deny ip from any to not table(1)
05004    16487     636719 pipe tablearg ip from table(21) to any
05005        0          0 deny ip from any to any
05010        0          0 pipe tablearg ip from table(127) to any
05030    18869     830300 deny tcp from table(15) to any dst-port 25
05140   144653    7168983 allow ip from table(41) to table(40)
05154        0          0 allow ip from table(55) to table(54)
05400  3972033  300280849 pipe tablearg ip from table(11) to any
32000        0          0 deny ip from any to any
32490       47       2622 deny ip from any to any
33000        0          0 pipe tablearg ip from table(126) to table(127)
33001  6445827 8338723414 skipto 33010 ip from not table(2) to any
33002        0          0 pipe tablearg ip from any to table(20)
33003        0          0 deny ip from any to any
33140   142963   25840408 allow ip from table(40) to table(41)
33154        0          0 allow ip from table(54) to table(55)
33400  6302691 8312853793 pipe tablearg ip from any to table(10)
65535      189      30085 allow ip from any to any

надо что бы на 10.10.0.0/24 всё уходило на rl0 как это сделать ??

и на Optimu 
195.248.160.0/19
212.86.224.0/19
213.227.192.0/18
217.24.160.0/20
213.133.165.64/27
213.154.216.0/21
213.154.214.0/23
195.248.176.96/27
195.248.169.195/32

всё уходило на 10.10.0.2
Записан
Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« Ответ #1 : 18 Января 2010, 16:58:43 »

вот мои направления
Записан
Fredik
NoDeny
Старожил
*

Карма: 5
Offline Offline

Сообщений: 362


Просмотр профиля
« Ответ #2 : 18 Января 2010, 17:07:13 »

так а че там в мануале по настройке есть вроде как все.
Записан
Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« Ответ #3 : 18 Января 2010, 17:20:31 »

так а че там в мануале по настройке есть вроде как все.
Перечитывал нету !
Записан
Fredik
NoDeny
Старожил
*

Карма: 5
Offline Offline

Сообщений: 362


Просмотр профиля
« Ответ #4 : 18 Января 2010, 18:10:31 »

Цитировать
Для трансляции «серых» адресов в «белые» необходим NAT. Будем использовать pf nat:

Команда bash
ee /etc/pf.conf

Вставляем в файл pf.conf
set limit states 128000
set optimization aggressive
nat pass on em0 from 10.0.0.0/8 to any -> em0
nat pass on em0 from 192.168.0.0/16 to any -> em0
Обязательно вместо em0 укажите внешний интерфейс сервера, т.е тот, который смотрит с сторону провайдера. В это же значение должна быть установлена переменная ifOut в файле /etc/rc.firewall!

Команда bash
pfctl -N -f /etc/pf.conf

и если получаем сообщение:

pfctl: /dev/pf: No such file or directory

то подгрузим pf как модуль ядра и добавим в автозагрузку:

Команды bash
kldload pf.ko
pfctl -N -f /etc/pf.conf
pfctl -e
echo pf_load=\"YES\" >> /boot/loader.conf
echo pf_enable=\"YES\" >> /etc/rc.conf


Записан
Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« Ответ #5 : 18 Января 2010, 20:07:35 »

Цитировать
Для трансляции «серых» адресов в «белые» необходим NAT. Будем использовать pf nat:

Команда bash
ee /etc/pf.conf

Вставляем в файл pf.conf
set limit states 128000
set optimization aggressive
nat pass on em0 from 10.0.0.0/8 to any -> em0
nat pass on em0 from 192.168.0.0/16 to any -> em0
Обязательно вместо em0 укажите внешний интерфейс сервера, т.е тот, который смотрит с сторону провайдера. В это же значение должна быть установлена переменная ifOut в файле /etc/rc.firewall!

Команда bash
pfctl -N -f /etc/pf.conf

и если получаем сообщение:

pfctl: /dev/pf: No such file or directory

то подгрузим pf как модуль ядра и добавим в автозагрузку:

Команды bash
kldload pf.ko
pfctl -N -f /etc/pf.conf
pfctl -e
echo pf_load=\"YES\" >> /boot/loader.conf
echo pf_enable=\"YES\" >> /etc/rc.conf




Это всё так и настроено и всё работает ! вот только к этому надо добавить нат чтобы уходило на нужную внешнюю подсеть через другой инет !! и мог принимать пакеты с сити 10.10.0.0/24 а то их блокирует  на интерфейс rl0 !
Записан
versus
Администратор
Спец
*****

Карма: 21
Offline Offline

Сообщений: 845


44306843
Просмотр профиля WWW Email
« Ответ #6 : 19 Января 2010, 01:14:03 »

То что ты хочешь реализовать называется Policy Based Routing
В гугле сразу попадаем на статью Настройка Policy Based Routing с помощью pf
http://www.lissyara.su/articles/freebsd/tuning/pbr+pf/

Удачи в настройке. попотеть придется
Записан
smallcms
NoDeny
Старожил
*

Карма: 64
Offline Offline

Сообщений: 279



Просмотр профиля WWW
« Ответ #7 : 19 Января 2010, 05:49:13 »

надо добавить нат чтобы уходило на нужную внешнюю подсеть через другой инет

Код:
ext_if0="ng0"
ext_if1="vr0"
set limit states 128000
set optimization aggressive

table <gorod_networks> persist file "/usr/local/nodeny/dcix"
table <trusted_direct_nat> { 192.168.0.0/16 }

scrub in all

nat pass on $ext_if0 from <trusted_direct_nat> to <gorod_networks> -> ($ext_if0)
nat pass on $ext_if1 from <trusted_direct_nat> to any -> ($ext_if1)

Что-то и без лисяры всё работает...
Записан

Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« Ответ #8 : 19 Января 2010, 06:32:03 »

надо добавить нат чтобы уходило на нужную внешнюю подсеть через другой инет

Код:
ext_if0="ng0"
ext_if1="vr0"
set limit states 128000
set optimization aggressive

table <gorod_networks> persist file "/usr/local/nodeny/dcix"
table <trusted_direct_nat> { 192.168.0.0/16 }

scrub in all

nat pass on $ext_if0 from <trusted_direct_nat> to <gorod_networks> -> ($ext_if0)
nat pass on $ext_if1 from <trusted_direct_nat> to any -> ($ext_if1)

Что-то и без лисяры всё работает...

Спасибо ! а можешь показать весь свой pf.conf ! можно и личку !

я добавил вот такое правило в фаирвол и всё забегало на 10.10.0.0/24

${f} add 145 skipto 33001 ip from 10.10.0.0/24 to any

ну и роуты на 10.10.0.0/24

route add 10.1.0.0/16 10.10.0.4
Записан
smallcms
NoDeny
Старожил
*

Карма: 64
Offline Offline

Сообщений: 279



Просмотр профиля WWW
« Ответ #9 : 19 Января 2010, 09:53:32 »

а можешь показать весь свой pf.conf
к сожалению это и есть мой текущий pf.conf. извиняюсь, что огорчил.
внешний файл dcix вида аа.бб.вв.гг/дд. по одному с новой строки.
Записан

Groov
NoDeny
Постоялец
*

Карма: -3
Offline Offline

Сообщений: 100

102196993
Просмотр профиля
« Ответ #10 : 19 Января 2010, 10:22:38 »

Как перезапустить всё правила pf ( какой командой) сори за такие вопросы но я чайник в pf.
а то перезагружать машину постоянно не дело Улыбающийся

Записан
goletsa
NoDeny
Спец
*

Карма: 21
Offline Offline

Сообщений: 973


Просмотр профиля
« Ответ #11 : 19 Января 2010, 10:41:28 »

Как перезапустить всё правила pf ( какой командой) сори за такие вопросы но я чайник в pf.
а то перезагружать машину постоянно не дело Улыбающийся



/etc/rc.d/pf reload ??
Записан
Andrey Zentavr
NoDeny
Старожил
*

Карма: 29
Offline Offline

Сообщений: 301



Просмотр профиля
« Ответ #12 : 19 Января 2010, 13:08:39 »

Было как-то так на два провайдера:

Код:
#/etc/pf.conf

ifT="vlan413"
ipT="91.214.29.134"
gwT="91.214.29.133"

ifE="vlan2"
ipE="80.84.184.126"
gwE="80.84.184.125"

ifL="vlan100"

# Tables
table <glb_gray>     { 10.55.0.0/16 }
table <glb_switches> { 10.55.250.0/24 }
table <glb_all>      { 10.55.0.0/16, 224.0.0.0/4, 80.84.187.0/24, 10.0.0.0/8 }
table <rfc_gray>     { 10.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.168.0.0/16 }
table <uaix>         persist file "/etc/uaix.txt"
table <me> const     { self }


set limit states 128000
set optimization aggressive

# Nat Outgoing Connections
nat pass on $ifT from <glb_gray> to any -> $ipT
nat pass on $ifE from <glb_gray> to any -> $ipE

# Express IP via Express Channel
pass out quick route-to ($ifE $gwE) inet from ($ifE) to ! <glb_all> flags any keep state
#pass out quick on $ifT route-to ($ifE $gwE) from ($ifE) to ! <glb_all> flags any keep state
# Telza IP via Telza Channel
pass out quick route-to ($ifT $gwT) inet from ($ifT) to ! <glb_all> flags any keep state
#pass out quick on $ifE route-to ($ifT $gwT) from ($ifT) to ! <glb_all> flags any keep state

# UA-IX routing via Telza
pass in quick on $ifL route-to {($ifT $gwT)} from <glb_gray> to <uaix> flags any keep state

# Round Robin Routing
pass in on $ifL route-to { ($ifE $gwE), ($ifT $gwT)} round-robin from <glb_gray> to ! <glb_all> flags any keep state
#pass in quick on $ifL route-to ($ifE $gwE) from <glb_gray> to ! <glb_all> probability 60% keep state
#pass in quick on $ifL route-to ($ifT $gwT) from <glb_gray> to ! <glb_all> probability 40% keep state

# Allow All on LocalHost
set skip on lo
block return in  quick on ! lo0 from any to 127.0.0.0/8
block return out quick on ! lo0 from 127.0.0.0/8 to any

# Allow OSPF
pass on $ifL proto ospf from any to any
pass on $ifL proto igmp from any to any

# Deny forwarding grey IP address
block return out quick on $ifE from any to <rfc_gray>
block return in  quick on $ifE from <rfc_gray> to any
block return out quick on $ifT from any to <rfc_gray>
block return in  quick on $ifT from <rfc_gray> to any

# Deny incoming request to MySQL Serv from Internet
block return in quick on $ifE proto tcp from any to <me> port { 411, 3306 }
block return in quick on $ifT proto tcp from any to <me> port { 411, 3306 }

# Deny incoming TFTP, but switches
block return quick proto udp from ! <glb_switches> to <me> port 69

Извиняйте за буржуйские комменты - уж так я привык.
ЗЫ: да и фря 7я что-то русский язык через mc не принимает Грустный
Записан
elite
Начальник планеты
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1227

In LAN we trust!

358714596
Просмотр профиля
« Ответ #13 : 19 Января 2010, 14:18:42 »

Извиняйте за буржуйские комменты - уж так я привык.
только не grey networks, а fake networks Улыбающийся
Записан
Tech
NoDeny
Пользователь
*

Карма: 0
Offline Offline

Сообщений: 15


Просмотр профиля Email
« Ответ #14 : 19 Января 2010, 14:51:23 »

Как перезапустить всё правила pf ( какой командой) сори за такие вопросы но я чайник в pf.
а то перезагружать машину постоянно не дело Улыбающийся



pfctl -f /etc/pf.conf перечитает правила из файла /etc/pf.conf
pfctl -N -f /etc/pf.conf перечитает только правила NAT'а

рекомендую к ознакомлению - http://syiron.wordpress.com/2007/12/08/basic-pfctl-control/
Записан
Страниц: [1] 2
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!