The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Пример разделения трафика для использования двух каналов в FreeBSD
rl0 -> Первый ифайс во вне, rl1 -> Второй ифайс во вне

rc.conf:
   defaultrouter="${rl1_gateway_ip}"

rc.local:
   /sbin/natd -n rl0 -p 8660
   /sbin/natd -n rl1 -p 8661

rc.firewall:

   ${fwcmd} add 1100 divert 8660 tcp from ${local_ip} to not ${rl0_ip} 22,25,53,80,110,6667
   ${fwcmd} add 1110 fwd ${rl0_gateway_ip} tcp from ${rl0_ip} to not ${local_ip}
   ${fwcmd} add 1120 divert 8660 all from not ${rl0_ip},${local_ip} to ${rl0_ip}
   ${fwcmd} add 1150 pass all from any to ${rl0_ip}
   ${fwcmd} add 1150 pass all from ${rl0_ip} to any
   ${fwcmd} add 1999 divert 8661 all from ${local_ip} to not ${rl1_ip}
   ${fwcmd} add 2000 divert 8661 all from not ${rl1_ip},${local_ip}
   ${fwcmd} add 2010 pass all from any to ${local_ip}
   ${fwcmd} add 2010 pass all from ${local_ip} to any
   ${fwcmd} add 2100 pass all from any to ${rl1_ip}
   ${fwcmd} add 2100 pass all from ${rl1_ip} to any

Правила тестировались на FreeBSD 4.7, 4.8, 4.9, 4.10, c ipfw2. Если у вас с
ipfw(1) не работает, попробуйте убрать "not ${ip}"
и вместо него вставить "any". "not" нужен для того чтобы локальные адреса не
дивертировались, т.к. нам это не нужно.
Порядковые номера могут быть на ваше усмотрение, рекомендую в начале разрешить
трафик lo0, защититься от спуфа,
запретить некоторые типы ICMP, разрешить внутренний трафик и т.д., и т.п.
 
24.08.2004 , Автор: ILJA , Источник: http://www.opennet.me/openforum/vsl...
Ключи: ipfw, policy, route, freebsd, forward
Раздел:    Корень / Администратору / Сетевая подсистема, маршрутизация / Policy routing

Обсуждение [ RSS ]
  • 1, kavva (?), 17:41, 07/12/2006 [ответить]  
  • +/
    Проверил, работает, но надо добавить маршруты для не дефолтного gateway. Включил в rc.local маршруты:
    #HostMin: 194.0.0.1 HostMax: 195.255.255.254
    route add 194.0.0.0/7 ${rl0_gateway_ip}
    #HostMin: 200.0.0.1 HostMax: 207.255.255.254
    route add 200.0.0.0/5 ${rl0_gateway_ip}
    #HostMin: 64.0.0.1 HostMax: 95.255.255.254
    route add 64.0.0.0/3 ${rl0_gateway_ip}
    Все работает, дело за малым, сделать нагрузку динамической. Попробую поковырять.
     
  • 2, Serega (??), 00:16, 03/10/2009 [ответить]  
  • +/
    А что должно быть в rc.conf
    чтобы это все правльно работало
    у меня сейчас вот так
    # -- sysinstall generated deltas -- # Thu May 29 16:15:11 2008
    # Created: Thu May 29 16:15:11 2008
    # Enable network daemons for user convenience.
    # Please make all changes to this file, not to /etc/defaults/rc.conf.
    # This file now contains just the overrides from /etc/defaults/rc.conf.
    defaultrouter="${rl1_gateway_ip}"
    ifconfig_em0="inet 192.168.0.1  netmask 255.255.255.0"
    ifconfig_rl0="inet 78.159.54.34  netmask 255.255.254.0"
    ifconfig_rl1="inet 94.244.164.144  netmask 255.255.255.0"
    tcp_extensions="YES"
    hostname="erby.ihome.ua"
    inetd_enable="YES"
    natd_enable="YES"
    natd_interface="rl0"
    # natd_flags="-f /etc/natd.conf"
    gateway_enable="YES"
    firewall_enable="YES"
    firewall_type="open"
    firewall_script="/etc/rc.firewall"
    firewall_logging="YES"
    keymap="ua.koi8-u"
    sshd_enable="YES"
    apache_enable="YES"
    mysql_enable="YES"
    # ntpd_enable="YES"
    # webmin_enable="YES"# -- sysinstall generated deltas -- # Fri Oct  2 02:35:34 2009
    что нужно убрать а что оставить
    заранее спасибо за помощь
     
  • 3, Serega (??), 00:17, 03/10/2009 [ответить]  
  • +/
    А что должно быть в rc.conf
    чтобы это все правльно работало
    у меня сейчас вот так
    defaultrouter="${rl1_gateway_ip}"
    ifconfig_em0="inet 192.168.0.1  netmask 255.255.255.0"
    ifconfig_rl0="inet 78.159.54.34  netmask 255.255.254.0"
    ifconfig_rl1="inet 94.244.164.144  netmask 255.255.255.0"
    tcp_extensions="YES"
    hostname="erby.ihome.ua"
    inetd_enable="YES"
    natd_enable="YES"
    natd_interface="rl0"
    # natd_flags="-f /etc/natd.conf"
    gateway_enable="YES"
    firewall_enable="YES"
    firewall_type="open"
    firewall_script="/etc/rc.firewall"
    firewall_logging="YES"
    keymap="ua.koi8-u"
    sshd_enable="YES"
    apache_enable="YES"
    mysql_enable="YES"
    # ntpd_enable="YES"
    # webmin_enable="YES"# -- sysinstall generated deltas -- # Fri Oct  2 02:35:34 2009
    что нужно убрать а что оставить
    заранее спасибо за помощь
     


     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру