Автор Тема: pppoe+etcnet ping: sendmsg: No buffer space available  (Прочитано 5086 раз)

Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Поднял pppoe+etcnet  на сервере 4.0.1 и сталкнулся с такой проблемой
rp-pppoe-*-3.7-alt2
при ринге с размером пакета более 10308 байт выдает
ping: sendmsg: No buffer space available
По крайней мере пакеты до 64к должны ходить без таких сообщений.
Проблема проявляется для MS почтовых клиентов. WEB как-то еще работает.
причем на двух серверах с Altlinux 4.0

Провайдер непричем, через D-Link router работает, а через Altlinux нет.
Оборудование непричем - два разных сервера с разным железом, проблема одна.
Обновление последнее.
Облазил весь Инет - решения не нашел, кроме смены дистрибутива, но это не мой случай( один сервер в другом городе).
Настроил все как написано в http://www.altlinux.org/НастройкаVPN
Попробовал увеличить
/proc/sys/net/core/wmem*, rmem* - не помогло

Кто подскажет, может проблема в другом. Проверьте, как у вас.
D-Link router работает, а Altlinux нет, обидно, однако, за Alt и за linux.


Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #1 : 02.10.2008 18:06:44 »
Никто не ответил. Печально.

Мужики, кто использует pppoe соединение  с сетью, проверьте, как ведет себя
ping -s 12000 www.rbc.ru

С уважением, Игорь

Оффлайн dottedmag

  • /usr/sbin/control
  • *******
  • Сообщений: 235
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #2 : 02.10.2008 18:39:53 »
MTU какой у провайдера и какой выставлен на интерфейсе?

Ещё почитайте man iptables: --clamp-mss-to-pmtu
Debian Lenny

Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #3 : 03.10.2008 11:19:16 »

Какой MTU у провайдера сказать не могу, не знаю как посмотреть, а на интерфейсе выставлен 1492
>> Ещё почитайте man iptables: --clamp-mss-to-pmtu
В man iptables про --clamp-mss-to-pmtu написано:


This  target allows to alter the MSS value of TCP SYN packets, to control the maximum size for that con-
       nection (usually limiting it to your outgoing interface's MTU minus 40).  Of course, it can only be used
       in conjunction with -p tcp.  It is only valid in the mangle table.
       This  target  is  used  to  overcome criminally braindead ISPs or servers which block ICMP Fragmentation
       Needed packets.  The symptoms of this problem are that everything  works  fine  from  your  Linux  fire-
       wall/router, but machines behind it can never exchange large packets:
        1) Web browsers connect, then hang with no data received.
        2) Small mail works fine, but large emails hang.
        3) ssh works fine, but scp hangs after initial handshaking.
       Workaround: activate this option and add a rule to your firewall configuration like:
        iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
                    -j TCPMSS --clamp-mss-to-pmtu

Как раз мои синдромы, в ptables это правило прописал, но все равно почта из Outlook Express-а уходит через раз. Когда затыкается в tcpdumd выдает следующее:

12:19:12.187113 IP n60-h32.gw-net.metromax.ru > 192.168.0.250: ICMP smtp.mail.ru unreachable - need to frag (mtu 1492), length 556

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

Оффлайн dottedmag

  • /usr/sbin/control
  • *******
  • Сообщений: 235
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #4 : 03.10.2008 11:26:56 »
Когда затыкается в tcpdumd выдает следующее:

12:19:12.187113 IP n60-h32.gw-net.metromax.ru > 192.168.0.250: ICMP smtp.mail.ru unreachable - need to frag (mtu 1492), length 556

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


Проблема как раз где-то в MSS. Можно попрбовать --set-mss (рядом в мане) на разные значения.

После этого посмотрите в tcpdump - действительно ли правило применяется:

IP 10.0.0.2.46928 > 213.180.204.8.80: S 334828821:334828821(0) win 5840 <mss 1460,sackOK,timestamp 150848210 0,nop,wscale 7>
IP 213.180.204.8.80 > 10.0.0.2.46928: S 2019349548:2019349548(0) ack 334828822 win 4096 <mss 1410,nop,wscale 0,nop,nop,timestamp 790252958 150848210,sackOK,eol>

В этом дампе видно, что MSS был уменьшен с изначально запрошенного 1460 до 1410 в ответе.
Debian Lenny

Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #5 : 03.10.2008 11:50:00 »
Попробовал поменять MSS

Было
12:45:51.560489 IP n60-h32.gw-net.metromax.ru.3614 > smtp.mail.ru.smtp: S 929152317:929152317(0) win 65535 <mss 1452,nop,nop,sackOK>
12:45:51.630896 IP smtp.mail.ru.smtp > n60-h32.gw-net.metromax.ru.3614: S 608006171:608006171(0) ack 929152318 win 32768 <mss 1460>

Стало
12:50:18.317577 IP n60-h32.gw-net.metromax.ru.3616 > smtp.mail.ru.smtp: S 2499128999:2499128999(0) win 65535 <mss 1460,nop,nop,sackOK>
12:50:18.419688 IP smtp.mail.ru.smtp > n60-h32.gw-net.metromax.ru.3616: S 3892872931:3892872931(0) ack 2499129000 win 32768 <mss 1460,sackOK,eol>
Но все равно сообщение остается
12:50:19.582147 IP n60-h32.gw-net.metromax.ru > 192.168.0.250: ICMP smtp.mail.ru unreachable - need to frag (mtu 1492), length 556

Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #6 : 03.10.2008 11:59:05 »
Может быть wins поменять на 33580?

Оффлайн dottedmag

  • /usr/sbin/control
  • *******
  • Сообщений: 235
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #7 : 03.10.2008 12:00:15 »
Может быть wins поменять на 33580?

Попробуйте лучше mss снижать, пока оно не начнёт работать.
Debian Lenny

Оффлайн gik

  • Завсегдатай
  • *
  • Сообщений: 12
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #8 : 03.10.2008 13:26:25 »
Снизил mss до 1400, вроде бы пока работает.

Спасибо.

Оффлайн AMike

  • alt linux team
  • ***
  • Сообщений: 479
Re: pppoe+etcnet ping: sendmsg: No buffer space available
« Ответ #9 : 06.10.2008 14:30:11 »
Снизил mss до 1400, вроде бы пока работает.

Спасибо.
Надо было вроде только MTU уменьшить на pppoe интерфейсе.