LINUX.ORG.RU
ФорумAdmin

Проблема с НАТом


0

0

Всем привет! Наткнулся та такую проблему, помогите решить.

Значит имеется машина с Мандрива 2008.1 подключенная через eth1 внешней сети через которую бегает интернет по PPPOE (ppp0), так же имеется локалка 10.10.0.х и воткнутая в eth0 и настроен NAT.

Суть проблемы: машины в локальной сети 10.10.0.х ходят в интернет, но большенство сайтов зайти не могут, хотя из консоли эти сайты пингуются. Фаерврол в Мандриве через панель управления отключил... Подскажите куда дальше рыть ?

Всем заранее спасибо!

anonymous

Как настроен NAT? Пингуются по IP или по имени? Зайти не могут из какого браузера? Из консольного браузера зайти могут?

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

echo "1" > /proc/sys/net/ipv4/ip_forward /sbin/iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE /sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Пингуется по имени из ФаерФокса, IE.

В винде из консольного ??? это из какого такого ?

anonymous
()
Ответ на: комментарий от Uncle_Theodore

echo "1" > /proc/sys/net/ipv4/ip_forward /sbin/iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE /sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Пингуется по имени. Из ФаерФокса, IE.

В винде из консольного ??? это из какого такого ?

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

echo "1" > /proc/sys/net/ipv4/ip_forward 
/sbin/iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE
/sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Угум. Я бы закомментировал последнее правило на время, посмотрел, что получится. Оно для чего у тебя? 

> Пингуется по имени из ФаерФокса, IE.

Не понял. Что такое пингуется из ФФ? 

> В винде из консольного ??? это из какого такого ?

Так у тебя там винда... 

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

Пробовал пробовал закоментировать последнее правило, пофиг, не помогает.. Зачем оно, не знаю :( взял вот тут http://joy.od.ua/tmp/index.php?pageid=tech&type=pppoe_Linux

Пингуется из cmd (win xp) по имени.

Не заходится на большенство сайтов из Фаерфокс, IE.

На серваке Линукс, Мандрива 2008.1, а в локально сети Винда ХР, Виста.

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

Последнее правило нужно, хотя может быть и не в mangle, а в filter. Оно решает проблему MSS, можно попробовать поставить там не "--clamp-mss-to-pmtu", а число поменьше, например, 1200. То есть:

iptables -I FORWARD -o ppp+ -p tcp --tcp-flags SYN,RST SYN -j TCPMSS 1200

Я бы советовал запустить tcpdump или другой дампер пакетов (дампить только пакеты с определенным ip-адресом) и посмотреть, что происходит сначала на pppoe интерфейсе, а потом на eth0 при обращении к веб-странице на этом адресе. Можено просто запостить сюда вывод команды:

tcpdump -n -i ppp0 host 'IP-адрес'

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

>tcpdump -n -i ppp0 host 'IP-адрес' попробую, вот только чуть позже, сейчас доступа к машине нет :(

anonymous
()
Ответ на: комментарий от mky

>Последнее правило нужно, хотя может быть и не в mangle, а в filter

TCPMSS можно использовать только в mangle

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

Раньше работало и в filter. Не знаю, работает ли это сейчас, не смотря на запрет в man'е, в исходниках ядре как была, так и стоит только проверка вида "xt_TCPMSS: path-MTU clamping only supported in FORWARD, OUTPUT and POSTROUTING hooks".

У меня сейчас нет доступа к системе со свежим ядром и iptables... Какое сообщение выводится при попытке добавить -j TCPMSS в FORWARD в цепочке filter на вашей системе?

mky ★★★★★
()

покажи ifconfig на внешнем ip
обрати внимание на mtu
разреши входящие icmp пакеты на внешнем интерфейсе
чтобы проверить фрагментацию, используй ping c большими пакетами, скажем больше чем 1500

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

> а telnet linux.org.ru 80 на локальных компах что показывает?

не пробовал что то телнетом, но на linux.org.ru заходится без проблем.

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

Да блин, скока ж можно отправлять читать рфц по хттп)) То что телнетом НА ПОРТ коннектится, это дико круто. Тока после коннекта нужно ещё послать руками запрос типа telnet linux.org.ru 80 GET / HTTP/1.1 Host: linux.org.ru (enter))) (сорри если где ошибся..) И посмотреть, отдаст он те страницу или нет. Если всё подвиснет и ноль реакции, возможно даже на интерфейсе стоит какое-то загадочное значение mtu.... или файрвол копать, но часто mtu.

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

з.ы. телнетом пробовать надо с клиентов, а не с шлюза.

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