Доброго времени суток всем.
Возникла такая проблема, боюсь, своими силами не разберусь.
Есть шлюз на базе Ubuntu server 12.04. Он имеет две сетевушки: eth0 внешняя в мир и eth1 во внутреннюю сеть. Содержимое interfaces:
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.10.45
netmask 255.255.255.0
gateway 192.168.10.1
dns-nameservers 192.168.10.2
# The first network interface
auto eth1
allow-hotplug eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0
В "локальной сети" есть "машинка" под WinXP.
Такой нехитрой схемкой пытаюсь эмулировать настройку и работу сети, чтобы потом перенести на настоящую сеть (Здесь речь о виртуалках).
Столкнулась с проблемой при настройке iptables. (С нуля пишу конфиг iptables в первый раз, поэтому, если пишу глупости - приму во внимание все замечания). Вот что получается:
*filter
:INPUT ACCEPT [408:34204]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [22:3479]
# 0 - Разрешить входящие на интерфейс замыкания на себе
-A INPUT -i lo -j ACCEPT
# 1 - Взаимодействие с внутренней подсетью:
# Разрешим входящие на маршрутизатор для управления из внутренней сети
-A INPUT -i eth1 -s 192.168.1.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# 2 - Разрешим пинги из внешней сети:
-A INPUT -i eth0 -p icmp -j ACCEPT
# 3 - Разрешаем доступ из внешней сети по ftp и ssh:
# данные
-A INPUT -i eth0 -p tcp --dport 20 -j ACCEPT
# команды
-A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT
# ssh
-A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
# 4 - Разрешаем Инернет на шлюзе:
-A INPUT -i eth0 -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
# 5 - Разрешаем интернет в локальной сети
# Разрешим маршрутизатору перенаправление пакетов из внутренней сети во
# внешнюю для установки новых соединений, уже установленных и присоединенных
-A FORWARD -i eth1 -s 192.168.1.0/24 -d 0.0.0.0/0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
# Разрешим перенапрвление пакетов из интернета во внутреннюю сеть
# только для установленных соединений и присоединенных пакетов
-A FORWARD -i eth0 -d 192.168.1.0/24 -m state --state ESTABLISHED,RELATED -j ACCEPT
-A OUTPUT -j ACCEPT
# Запрещено все, что явно не разрешено
-A INPUT -j REJECT
-A FORWARD -j REJECT
COMMIT
*nat
:PREROUTING ACCEPT [362:29019]
:INPUT ACCEPT [360:28899]
:OUTPUT ACCEPT [18:2421]
:POSTROUTING ACCEPT [20:2541]
# Разрешение и маскировка всех исходящих и входящих
# соединений по внешнему интерфейсу:
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*mangle
:PREROUTING ACCEPT [1506:112881]
:INPUT ACCEPT [1501:112581]
:FORWARD ACCEPT [5:300]
:OUTPUT ACCEPT [574:39683]
:POSTROUTING ACCEPT [599:45033]
:outtos - [0:0]
:pretos - [0:0]
-A PREROUTING -j pretos
-A OUTPUT -j outtos
-A outtos -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 22 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 21 -j TOS --set-tos 0x10/0xff
-A outtos -p tcp -m tcp --sport 20 -j TOS --set-tos 0x08/0xff
-A outtos -p tcp -m tcp --dport 20 -j TOS --set-tos 0x08/0xff
-A pretos -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 22 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --dport 21 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 21 -j TOS --set-tos 0x10/0xff
-A pretos -p tcp -m tcp --sport 20 -j TOS --set-tos 0x08/0xff
-A pretos -p tcp -m tcp --dport 20 -j TOS --set-tos 0x08/0xff
COMMIT
Проблема такая: с самого шлюза не уходят пинги по доменным именам. Вот то есть тот же ya.ru пингую как ya.ru - в ответ: unknown host ya.ru. По айпи же пингуется. С ХР по имени прекрасно пингуется и сайты открываются/файлы качаются.
Стоит на шлюзе сделать
iptables -F - и пинг по имени работать начинает. Не могла вроде нигде в dns-ах намудрить так.
Может кто подскажет, где туплю и что не так написала? Заранее спасибо большое за помощь.