LINUX.ORG.RU
ФорумAdmin

iptables, nat, пинг есть, браузеры не работают


0

1

Есть машинка на бубунте, которая, по некоторым обстоятельствам, одновременно является как моим десктопом, так и шлюзом: xxx.xx.xxx.28 (eth0) и 192.168.0.1 (eth1). На всякий случай, шлюз к нему: xxx.xx.xxx.18.
Есть группа машинок на виндах (хотя теста ради я пробовал с livecd puppy, проблема та же): 192.168.0.0/24
На 192.168.0.1 крутится dhcp-сервер, который удачно раздаёт адреса машинкам из 192.168.0.0/24.
Одни добрые люди мне выдали следущий скрипт для настройки nat:

#!/bin/sh -e
PATH=/usr/sbin:/sbin:/bin:/usr/bin
INET_IFACE=eth0
LNET_IFACE=eth1
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X
iptables -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE
sysctl -w net.ipv4.ip_forward=1 > /dev/null
exit 0

После запуска скрипт срабатывает следущим образом: что на шлюзе, что на клиентских машинах начинает нормально пинговаться внешка, dns резолвится, но, ни один браузер не показывает сайтики.
Идеи?



Последнее исправление: GreatCornholio (всего исправлений: 1)

Для начала глянь iptables -L , может там ещё другие правила присутсвуют.
Если нет - то проблема, скорее всего, в MTU

ovax ★★★
()
Ответ на: комментарий от ovax

1440 байт пинги идут.
iptables -L:
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

GreatCornholio
() автор топика

ах да, конкретно проблема проявляется при включении форвардинга

GreatCornholio
() автор топика

с клиентской машины телнетом на 80 порт ЛОРа. плясать от этого.

Komintern ★★★★★
()

Боюсь что 192.168.0.1 раздает себя в качестве шлюза по умолчанию. Отсюда и все проблемы.

Jetty ★★★★★
()
Ответ на: комментарий от GreatCornholio

>1440 байт пинги идут.

А пинги большего размера, допустим 5000 байт, идут?

И вобще надо посмотреть пакеты tcpdump-ом на обоих интерфейсах. То есть берёте определённый ip-адрес какого-нибудь web-сервера, запускаете «tcpdump -i eth0 -n -nn host IP-АДРЕС», запускаете в другом терминале «tcpdump -i eth1 -n -nn host IP-АДРЕС» и делаете с машинки из локальной сети «telnet IP-АДРЕС 80».

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.