LINUX.ORG.RU
решено ФорумAdmin

В чём может быть проблема?


0

2

Собрал из старого железа сервер/шлюз.

$ uname -a
Linux athlon 3.1.1-1-ARCH #1 SMP PREEMPT Fri Nov 11 22:05:37 UTC 2011 i686 AMD Athlon(tm) XP 2000+ AuthenticAMD GNU/Linux
$ lspci | grep -i net
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0a.0 Ethernet controller: D-Link System Inc DGE-528T Gigabit Ethernet Adapter (rev 10)
00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
        inet 10.X.X.24  netmask 255.255.255.0  broadcast 10.X.X.255
        inet6 fe80::2e0:4cff:fe38:b5b8  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:38:b5:b8  txqueuelen 1000  (Ethernet)
        RX packets 1314161  bytes 1139941288 (1.0 GiB)
        RX errors 288  dropped 2985  overruns 181  frame 0
        TX packets 1005320  bytes 950954628 (906.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 16  base 0xaf00

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
        inet 192.168.1.1  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::1e7e:e5ff:fe1f:e170  prefixlen 64  scopeid 0x20<link>
        ether 1c:7e:e5:1f:e1:70  txqueuelen 1000  (Ethernet)
        RX packets 989597  bytes 941283113 (897.6 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1048513  bytes 1118438752 (1.0 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 18  base 0x4e00

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 16436  metric 1
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1492  metric 1
        inet xXx.xXx.97.195  netmask 255.255.255.255  destination 172.16.0.1
        ppp  txqueuelen 3  (Point-to-Point Protocol)
        RX packets 1312540  bytes 1110923421 (1.0 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1004978  bytes 928817063 (885.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

На шлюзе

$ curl privat24.ua
выдаёт HTML как положено.

На клиентах (Ubuntu 10.04/Windows XP) браузер эту страницу не открывает принципиально. Это полный вывод веб-консоли Firefox на Windows XP:

[15:41:47.774] GET http://privat24.ua/
Больше ничего не происходит.

На шлюзе и на клиенте вывод traceroute одинаковый: пакеты уходят за пределы шлюза нормально.

$ traceroute privat24.ua
traceroute to privat24.ua (217.117.65.42), 30 hops max, 40 byte packets
................................
 8  kv-sm-ext-cis2-vl812-peer-inet.people.net.ua (77.109.8.26)  12.762 ms  13.508 ms  12.779 ms
 9  217.117.66.129 (217.117.66.129)  20.651 ms  21.253 ms  21.381 ms
10  217.117.64.6 (217.117.64.6)  21.405 ms  20.854 ms  20.787 ms
11  * * *
12  * * *
13  * * *
14  * * *
^C

В то же время, например, ЛОР (и многие другие страницы) открываются нормально.

На всякий случай вывод iptables:

$ sudo iptables-save
# Generated by iptables-save v1.4.12.1 on Sat Nov 19 15:37:02 2011
*nat
:PREROUTING ACCEPT [29849:1989180]
:INPUT ACCEPT [14834:923083]
:OUTPUT ACCEPT [499:25275]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sat Nov 19 15:37:02 2011
# Generated by iptables-save v1.4.12.1 on Sat Nov 19 15:37:02 2011
*filter
:INPUT ACCEPT [19077:1270812]
:FORWARD ACCEPT [81:6207]
:OUTPUT ACCEPT [20428:1933158]
-A FORWARD ! -i eth0 -o ppp0 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Sat Nov 19 15:37:02 2011

Такая же участь постигла страницу skydrive.live.com и http://www.youtube.com/guide (именно эту страницу, редирект с главной получить удаётся) и много других.

Сабж.



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

http://billauer.co.il/ipmasq-html.html

14 The wrong way to masquerade

iptables -t nat -A POSTROUTING -j MASQUERADE

    This makes masquerading the default policy for any outgoing packet
    ... including any forwarded packet.
    All forwarded packets will appear to come from the masquerading host.
    May confuse firewalls
    Even worse, may confuse service applications to compromise security

И ты не показал sysctl net.ipv4.ip_forward

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

Как и положено.

$ sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

Ну, я же указал в правилах на какие интерфейсы требуется маскарад.

Нужно было указать ещё и с каких?

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

Складывается впечатление, что пакеты ответа от некоторых серверов просто застряют (очевидно, на моём шлюзе) и не доходят до клиента, но я не знаю как это проверить и что может быть причиной.

inst
() автор топика
Ответ на: комментарий от blind_oracle

Для чего это правило?

Вот, что получилось в результате:

$ sudo iptables-save
# Generated by iptables-save v1.4.12.1 on Sat Nov 19 16:37:18 2011
*nat
:PREROUTING ACCEPT [28524:1962579]
:INPUT ACCEPT [12820:834558]
:OUTPUT ACCEPT [336:21540]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sat Nov 19 16:37:18 2011
# Generated by iptables-save v1.4.12.1 on Sat Nov 19 16:37:18 2011
*filter
:INPUT ACCEPT [21:2122]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [32:3708]
-A FORWARD ! -i eth0 -o ppp0 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Sat Nov 19 16:37:18 2011

К сожалению отзывчивости на клиентах не прибавилось.

inst
() автор топика
Ответ на: комментарий от kam

Не подумал. Спасибо. Кажется, сработало.

Так для чего это правило всё-таки служит? В чём разница между открывавшимися и не открывавшимися страницами? Где почитать про возможные подобные подводные камни?

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