The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"ipatbles+masquerade pptp. Не могу понять где ошибка"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Firewall, Фильтрация пакетов / Linux)
Изначальное сообщение [ Отслеживать ]

"ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от Frag email(ok) on 10-Окт-12, 09:11 
CentOS 5.4
Есть локальная сеть Eth1 192.168.255.0/24, сеть провайдера eth0 DHCP. Доступ в интернет осуществляется через pptp. Адрес VPN сервера всегда разный и лежит в подсети 192.168.0.0/255.255.255.0. DNS 81.28.160.1  81.28.160.111. Для ДНС и ВПН сервера прописаны постоянные маршруты при поднятии eth0.

В /etc/sysctl.conf    net.ipv4.ip_forward=1
Сделаны:
/sbin/modprobe ipt_nat
/sbin/modprobe ipt_masquerade

Pptp поднимается на линух машине и с него все пингуется и через wget можно скачать страницу, например ya.ru. На Вынь ХР, находящейся в сети пинги, проходят нормально, но через explorer страницы не грузятся.

Не могу понять где затык...

Все листинги сняты при поднятом pptp.

[root@homegate tmp]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1B:11:C3:06:DB
          inet addr:10.13.136.29  Bcast:10.13.136.63  Mask:255.255.255.192
          inet6 addr: fe80::21b:11ff:fec3:6db/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:10769 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7377 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:7292589 (6.9 MiB)  TX bytes:1353202 (1.2 MiB)
          Interrupt:185 Base address:0x2000

eth1      Link encap:Ethernet  HWaddr 00:11:5B:98:6C:D5
          inet addr:192.168.255.1  Bcast:192.168.255.255  Mask:255.255.255.0
          inet6 addr: fe80::211:5bff:fe98:6cd5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:7776 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7916 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1452977 (1.3 MiB)  TX bytes:7201324 (6.8 MiB)
          Interrupt:193 Base address:0x4000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)

ppp0      Link encap:Point-to-Point Protocol
          inet addr:31.28.43.199  P-t-P:31.28.43.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1464  Metric:1
          RX packets:6026 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4166 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:6680145 (6.3 MiB)  TX bytes:936852 (914.8 KiB)

[root@homegate tmp]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.9     *               255.255.255.255 UH    0      0        0 eth0
192.168.0.8     *               255.255.255.255 UH    0      0        0 eth0
192.168.0.11    *               255.255.255.255 UH    0      0        0 eth0
192.168.0.10    *               255.255.255.255 UH    0      0        0 eth0
192.168.0.13    *               255.255.255.255 UH    0      0        0 eth0
31.28.43.1      *               255.255.255.255 UH    0      0        0 ppp0
ns2.tlt.aist.ne *               255.255.255.255 UH    0      0        0 eth0
192.168.0.14    *               255.255.255.255 UH    0      0        0 eth0
ns1.tlt.aist.ne *               255.255.255.255 UH    0      0        0 eth0
192.168.0.2     *               255.255.255.255 UH    0      0        0 eth0
192.168.0.5     *               255.255.255.255 UH    0      0        0 eth0
10.13.136.0     *               255.255.255.192 U     0      0        0 eth0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
192.168.255.0   *               255.255.255.0   U     0      0        0 eth1
169.254.0.0     *               255.255.0.0     U     0      0        0 eth1
default         *               0.0.0.0         U     0      0        0 ppp0
[root@homegate tmp]# iptables-save
# Generated by iptables-save v1.3.5 on Wed Oct 10 03:30:56 2012
*nat
:PREROUTING ACCEPT [356:27853]
:POSTROUTING ACCEPT [1:108]
:OUTPUT ACCEPT [65:4749]
-A POSTROUTING -o eth0 -j MASQUERADE
-A POSTROUTING -o ppp0 -j MASQUERADE
COMMIT
# Completed on Wed Oct 10 03:30:56 2012
# Generated by iptables-save v1.3.5 on Wed Oct 10 03:30:56 2012
*mangle
:PREROUTING ACCEPT [17022:14759828]
:INPUT ACCEPT [6719:7000944]
:FORWARD ACCEPT [10301:7758784]
:OUTPUT ACCEPT [5980:1244185]
:POSTROUTING ACCEPT [16157:8945122]
COMMIT
# Completed on Wed Oct 10 03:30:56 2012
# Generated by iptables-save v1.3.5 on Wed Oct 10 03:30:56 2012
*filter
:INPUT DROP [155:17102]
:FORWARD DROP [26:1399]
:OUTPUT DROP [98:56448]
:allowed - [0:0]
:bad_tcp_packets - [0:0]
:icmp_packets - [0:0]
:tcp_packets - [0:0]
:udp_packets - [0:0]
-A INPUT -p tcp -j bad_tcp_packets
-A INPUT -s 192.168.255.0/255.255.255.0 -i eth1 -j ACCEPT
-A INPUT -s 127.0.0.1 -i lo -j ACCEPT
-A INPUT -s 192.168.255.1 -i lo -j ACCEPT
-A INPUT -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -j tcp_packets
-A INPUT -i eth0 -p udp -j udp_packets
-A INPUT -i eth0 -p icmp -j icmp_packets
-A INPUT -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i ppp0 -p tcp -j tcp_packets
-A INPUT -i ppp0 -p udp -j udp_packets
-A INPUT -i ppp0 -p icmp -j icmp_packets
-A FORWARD -p tcp -j bad_tcp_packets
-A FORWARD -i eth1 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -s 127.0.0.1 -j ACCEPT
-A OUTPUT -s 192.168.255.1 -j ACCEPT
-A OUTPUT -o eth0 -j ACCEPT
-A OUTPUT -o ppp0 -j ACCEPT
-A allowed -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A allowed -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A allowed -p tcp -j DROP
-A bad_tcp_packets -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A bad_tcp_packets -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j LOG --log-prefix "New not syn:"
-A bad_tcp_packets -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A icmp_packets -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A icmp_packets -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A tcp_packets -p tcp -m tcp --dport 22 -j allowed
COMMIT
# Completed on Wed Oct 10 03:30:56 2012

С линух машины
[root@homegate tmp]# ping gosuslugi.ru
PING gosuslugi.ru (109.207.1.97) 56(84) bytes of data.
64 bytes from gosuslugi.ru (109.207.1.97): icmp_seq=1 ttl=244 time=32.9 ms
64 bytes from gosuslugi.ru (109.207.1.97): icmp_seq=2 ttl=244 time=32.5 ms

С Вынь ХР машины
C:\Users\user>ping gosuslugi.ru

Обмен пакетами с gosuslugi.ru [109.207.1.97] с 32 байтами данных:
Ответ от 109.207.1.97: число байт=32 время=34мс TTL=243
Ответ от 109.207.1.97: число байт=32 время=33мс TTL=243

Статистика Ping для 109.207.1.97:
    Пакетов: отправлено = 2, получено = 2, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 33мсек, Максимальное = 34 мсек, Среднее = 33 мсек

ЗЫ: внешний IP динамический...

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от КуКу (ok) on 10-Окт-12, 10:39 
Пинг работает на icmp протоколе, "explorer"  на tcp. Это так для справки.
попробуйте с линукс машины wget -d http://gosuslugi.ru  

Посмотрите tcpdump'ом на шлюзе, проблема скорее всего в mtu/mss.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +1 +/
Сообщение от Frag email(ok) on 10-Окт-12, 10:53 
> Пинг работает на icmp протоколе, "explorer"  на tcp. Это так для
> справки.
> попробуйте с линукс машины wget -d http://gosuslugi.ru

Пробовал сразу после пинга, wget ya.ru загружает вполне читабельный index.html

> Посмотрите tcpdump'ом на шлюзе, проблема скорее всего в mtu/mss.

спс, посмотрю...


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от Дядя_Федор on 10-Окт-12, 21:01 
> спс, посмотрю...

Как верно указал выше коллега - подобная проблема именно в МТУ. :) И в том, что в файрволле не разрешены ICMP Path MTU Discovery.
Это в дополнение.
1. http://www.znep.com/~marcs/mtu/
2. http://en.wikipedia.org/wiki/Path_MTU_Discovery


Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от Дядя_Федор on 10-Окт-12, 21:03 
Вот, кстати целый трактат от cisco. :) http://www.cisco.com/en/US/tech/tk827/tk369/technologies_whi...
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

3. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от ALex_hha (ok) on 10-Окт-12, 11:27 
Попробуй

# iptables -t mangle -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от Frag email(ok) on 10-Окт-12, 22:16 
---
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от Frag email(ok) on 10-Окт-12, 22:17 
Конфиг был полностью взят с https://www.opennet.ru/docs/RUS/iptables/iptables-rus.tar.gz, там почему-то
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
и в самом конфиге есть строки
if [ $PPPOE_PMTU == "yes" ] ; then
$IPTABLES -t nat -A POSTROUTING -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --clamp-mss-to-pmtu
fi
Только вот по ночи забыл PPPOE_PMTU = "yes" прописать.
Зато теперь буду полностью знать что такое --clamp-mss-to-pmtu

Полезные ссылки
https://www.opennet.ru/base/net/pppoe_mtu.txt.html  ...полностью описание проявления проблемы и ее исправление
http://tldp.org/HOWTO/IP-Masquerade-HOWTO/mtu-issues.html

Проблему решили строки
$IPTABLES -A icmp_packets -p ICMP -s 0/0 -j ACCEPT
$IPTABLES -t nat -A POSTROUTING -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

Всем спасибо.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от ALex_hha (ok) on 11-Окт-12, 15:01 
> Проблему решили строки
> $IPTABLES -A icmp_packets -p ICMP -s 0/0 -j ACCEPT

не обязательно все типы пропускать, но это уже мелочи

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "ipatbles+masquerade pptp. Не могу понять где ошибка"  +/
Сообщение от FragMaster on 11-Окт-12, 19:16 
>> Проблему решили строки
>> $IPTABLES -A icmp_packets -p ICMP -s 0/0 -j ACCEPT
> не обязательно все типы пропускать, но это уже мелочи

Решение временное, буду копать дальше.
Если следовать http://www.cymru.com/Documents/icmp-messages.html, то достаточно
NAME             TYPE    CODE  COMMENT
ICMP_ECHO           8       0  /* Ping. */
ICMP_ECHOREPLY      0       0  /* Ping response. */
ICMP_UNREACH        3       4  /* ICMP_UNREACH_NEEDFRAG - Used by Path */
                               /* MTU to determine the optimal MTU setting. */
ICMP_TIMXCEED      11       0  /* TTL expired in transit.  Used by UNIX */
                               /* traceroute and Windows tracert.  Note that */
                               /* UNIX traceroute also uses a high UDP port. */
                               /* This message is also important when */
                               /* routing loops occur. */


Если не сложно, поделитесь минимально необходимыми типами icmp.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру