февраля 20 2010 01:44 дп

Настройка Kernel NAT на FreeBSD

freebsd_logo.png

Эта маленькая статья описывает настройку kernel nat на Freebsd, настройка очень проста и займет у вас минимум времени. Основное время потраченное на настройку уйдет на сборку ядра системы, установку и перезагрузку.

Начнем с сборки ядра, если вы не сталкивались с ней, тогда вам будет полезно прочитать статью в которой это процесс описан более-менее подробно: http://sudouser.com/kompilyaciya-yadra-v-freebsd.html . Если же вам знакому эта процедура то перейдем к редактированию конфига нашего ядра, добавим туда следующие строки

Код:

options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
options IPFIREWALL_FORWARD
options DUMMYNET
options IPFIREWALL_NAT
options LIBALIAS

В файл /etc/make.conf добавляем

Код:

CFLAGS+= -DIPFIREWALL_NAT

Затем собираем ядро

Код:

cd /usr/src/ ; make buildkernel KERNCONF=YOURKERNCONF && make installkernel KERNCONF=YOURKERNCONF

В файл конфигурации ipfw добавляем параметры для NAT, айпи адрес 1.1.1.1 замените на ваш айпи, в который вы будете транслировать локальные айпи пользователей, так же замените сеть 192.168.0.0/16 из примера на вашу, так же обратите внимание на номера правил для ната, возможно вам придется сменить их в соответствии с вашей конфигурацией.

Код:

extip="1.1.1.1"
ipfw nat 123 config ip ${extip} log
ipfw add 10 nat 123 ip from 192.168.0.0/16 to any
ipfw add 20 nat 123 ip from any to ${extip}

Если вы еще не использовали ipfw на вашей машине не забудьте включить его, внеся изменения в файл /etc/rc.conf, путь до файла с правилами ipfw смените на ваш, или не указывайте, если используете файл по умолчанию.

Код:

firewall_enable="YES"
firewall_script="/home/ipfw.sh"

Затем внесем изменения в файл /etc/sysctl.conf, добавьте в конец файла строку, она нужна что бы пакеты проходили через все правила фаервола, а не до первого совпадения, как стоит по умолчанию, так как если вы например ограничиваете скорость, то нат работать не будет, так как фаервол проверяет пакеты только до первого совпадения правил, иначе говоря только обрежет скорость и все.

Код:

net.inet.ip.fw.one_pass=0

Теперь можно перезагрузить машину, после загрузки NAT будет работать.
Надеюсь, статья была вам полезна.

Popularity: 6%





3 Комментариев »


3 Responses to “Настройка Kernel NAT на FreeBSD”

  1. funt1k on 10 Мар 2010 at 08:31 #

    Бываю редко и метко.
    options IPDIVERT — пережитки старого NATD
    это уже не модно как говориться

  2. transkriptsiya on 09 мая 2011 at 14:58 #

    для чего добавляем в мейк файл строку
    options IPDIVERT
    ? для чего она

  3. transkriptsiya on 09 мая 2011 at 14:59 #

    для чего добавляем в мейк файл строку
    CFLAGS = -DIPFIREWALL_NAT

    ? для чего она

Trackback URI | Comments RSS

Leave a Reply

You must be logged in to post a comment.


Самые популярные статьи

  • Установка и настройка DNS сервера bind9 Ubuntu-Debian HOWTO
  • Установка Samba сервера на Ubuntu или Debian за 5 минут
  • Установка почтового сервера Postfix + Dovecot + MYSQL и виртуальных доменов
  • Установка и настройка Open VPN сервера на Debian и Ubuntu
  • Настройка маршрутизации в Ubuntu Linux для начинающих
  • Настройка шлюза в локальной сети, лимитирование скорости (shaper), фаервол (iptables).
  • Удаленное подключение к рабочему столу Linux из Windows с помощью Xming и SSH
  • Установка и настройка DHCP сервера
  • Установка и настройка VSFTPD + MYSQL (Ubuntu & Debian)
  • Настройка ограничения и распределения канала (HTB Shaper)
  • Настройка sudo в Debian GNU/Linux и Ubuntu Linux
  • Mail.ru Агент в Linux
  • Установка и настройка L2TP сервера xl2tpd или l2tpd
  • Установка хостинг панели ISPConfig 3 на Ubuntu 9.04
  • Как установить LDAP сервер и его клиентов. (ldap linux debian & ubuntu auth)
  • Сетевые утилиты онлайн - NSLOOKUP
  • Подробное руководство по настройке wifi соединения с шифрованием разных типов
  • Установка apache2.2.x во FreeBSD 7.0
  • IP телефония в Ubuntu или Debian на базе Asterisk за 15 минут
  • Различия в ядрах Ubuntu Server и Ubuntu Desktop
  • Linux в роли WI-FI точки доступа
  • Игры в Linux
  • Установка Ubuntu на RAID-1 диски
  • Настройка рабочего стола Ubuntu, или как догнать и перегнать Windows!
  • Ставим и настраиваем XEN сервер
  • Установка Nginx, PHP5, FastCGI, XCache и MySQL на Ubuntu
  • Открылся русскоязычный Linux торрент трекер
  • HDR обои на рабочий стол 1920×1200
  • Установка Zend Optimizer на Ubuntu 10.04 LTS
  • Сборка Midnight Commander 4.6.3 на Mac OS Leopard

  • « | »

    Рейтинг блогов Rambler's Top100
    службы мониторинга серверов