Я новичок в LINUX, поэтому пришлось много почитать чтобы настроить то что надо, но даже после этого есть проблемы.
Есть сервер с двумя сетевыми интерфейсами. HP ProLiant ML110 (добавлена карта RTL8139)
Задача: настроить DHCP в подсети 192.168.66.0, настроить маршрутизацию NAT таким образом чтобы в инет ч/з сервер могли выходить только зарезервированные IP адреса выдаваемые DHCP по MAC адресу клиента. Для этого всем клиентам DHCP передает неправильный шлюз и DNS и только зарезервированным передает все настройки правильные. NAT так и не получилось настроить на маршрутизацию только определенных IP адресов.
После настройки все заработало, только появилась огромная проблема если клиенты ерзают по страничкам все ок, но стоит им зайти на сайт типа youtube.com и начать загрузку видео сервер виснет и выбрасывает кучу ошибок.
Скрин:

Вот настройки (ставился Ubuntu Server 10.10 amd64 на RAID1 c ролями /LAMP/SSH/SAMBA):
--------------------------------------------------
# НАСТРАИВАЕМ СЕТЬ
--------------------------------------------------
$ sudo nano /etc/network/interfaces
# LOOPBACK
auto lo
iface lo inet loopback
# ADSL
auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1
# LAN
auto eth1
iface eth1 inet static
address 192.168.66.1
netmask 255.255.255.0
# network 192.168.66.0
# broadcast 192.168.66.255
# gateway xxx.xxx.xxx.xxx
# dns-nameservers xxx.xxx.xxx.xxx
# dns-search myhost.com
$ sudo nano /etc/resolv.conf
# Список DNS серверов провайдера
nameserver 192.168.1.1
nameserver212.154.163.162
--------------------------------------------------
# УСТАНАВЛИВАЕМ НУЖНЫЕ ПАКЕТЫ
--------------------------------------------------
$ sudo apt-get update
$ sudo apt-get install mc
$ sudo apt-get install dhcp3-server
$ sudo apt-get install dnsmasq
--------------------------------------------------
# НАСТРАИВАЕМ DHCP
--------------------------------------------------
$ sudo nano /etc/default/dhcp3-server
# Интерфейс для раздачи IP адресов
INTERFACES="eth1"
$ sudo nano /etc/dhcp3/dhcpd.conf
# Отдать адрес серверу ч/з 604800 сек.
default-lease-time 604800;
# Забрать адрес у клиента ч/з 864001 сек.
max-lease-time 864001;
# Параметры для раздачи с DHCP
subnet 192.168.66.0 netmask 255.255.255.0 {
range 192.168.66.41 192.168.66.254;
option routers 192.168.66.2;
option domain-name-servers 192.168.66.3;
# option subnet-mask xxx.xxx.xxx.xxx;
# option broadcast-address xxx.xxx.xxx.xxx;
# option netbios-name-servers xxx.xxx.xxx.xxx;
# option domain-name "myhost.com";
}
# Привязка по MAC адресам
host media1 {
hardware ethernet 88:AE:1D:F5:6A:1E;
fixed-address 192.168.66.5;
option routers 192.168.66.1;
option domain-name-servers 192.168.66.1;
}
--------------------------------------------------
# НАСТРАИВАЕМ СЕРВЕР СЛУШАТЬ
--------------------------------------------------
$ sudo nano /etc/dnsmasq
listen-address=127.0.0.1, 192.168.66.1
--------------------------------------------------
# НАСТРАИВАЕМ NAT
--------------------------------------------------
$ sudo nano /etc/sysctl.conf
# Разрешить форвардинг
net.ipv4.ip_forward=1
$ sudo touch /etc/nat
$ sudo chmod +x /etc/nat
$ sudo nano /etc/nat
#!/bin/sh
# Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward
# Разрешаем трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT
# Разрешаем доступ из внутренней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
# Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.66.0/24 -j MASQUERADE
# Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth0 -j REJECT
$ sudo nano /etc/network/interfaces
# Запускаем NAT (добавить в конце файла)
post-up /etc/nat
--------------------------------------------------
# ВСЕ
--------------------------------------------------
$ sudo reboot