Jump to content

FreeBSD, mpd, mtu...


Recommended Posts

Доброго времени суток!

 

Вобщем получилась такая проблемка:

Есть машина c FreeBSD 5.4, на ней вертится mpd в качестве клинта VPN... соедениние поднимается, интерфейсу ng0 нзначается mtu 1460...но мне нужно 1500... при 1460 ужасно тупит множество веб сайтов....

в конфиге mpd прописываю

 

set link mtu 1500

 

не помогает!

как заставить установить 1500?

как вобще определяется это mtu?

заранее благодарен!

Link to post
Share on other sites

прописал... установилось в 1500... но проблема осталась.... можете обьяснить откукда берется значение этого mtu при коннекте?

Link to post
Share on other sites

1. С чего вы взяли, что сайты тупят изза mtu, если mtu уже установилось в 1500, как вы и хотели, а проблема осталась? )

Быть может дело в другом?

Link to post
Share on other sites

У меня когда-то использовалось mpd для нескольких клиентов. Впечатления ужасающие... "Глючит" - такая вот характеристика... "Тупизна сайтов" - частое явление. Т.е. реально коннектишься, работаешь 20-30 минут. Иногда больше... И начинаются тормоза вплоть до обрывов.

 

mtu судя по всему было совершенно ни при чем (т.к. длительное время можно было нормально работать).

 

Были подозрения, что причина в загруженности сервера, но проверить их так и не получилось, т.к. отказались от mpd - он стал уже не нужен.

Link to post
Share on other sites

вобщем я беру инет у провайдера по впн.

когда я первый раз настраивал роутер с биллингом, была та же ситуация.. mtu на VPN было 1492... были те же глюки... установил в 1500 опцией set link mtu 1500 и все стало нормально! без единого глюка проработало 3 месяца! потом у провайдера сменили биллинги и началось.... отсюда вывод - проблемы с впн... почему с помощью set link mtu не ставится? как оно вобще по дефолту его определяет?

Link to post
Share on other sites

Если единственное, что сменилось - это биллинг у провайдера, то обращаться надо к нему.

Может у них MTU проставлен левый?

Link to post
Share on other sites

понимаеш тут такой прикол: подключаю я виндовую машину, поднимаю с нее впн и все работает на этой машине отлично.

а если поднимаю с фри, далее все натится и в локаль то уже не работает... mtu по дефолту 1460... как оно определяется по дефолту?

Link to post
Share on other sites

все работало до смены биллинга провайдера... mtu было 1500... на езернетовых интерфейсах у меня тоже 1500.... после смены на впн стало 1460...

Link to post
Share on other sites

Может спросить у провайдера, чего они меняли?

И спросить насчет твоего вопроса.

Может чего дельное скажут.

Link to post
Share on other sites

MTU - Maximum Transfer Unit для твоей сети. То есть пакеты превышающие данный MTU будут либо сбрасываться, либо фрагментироваться.

Этот параметр может вызвать какое-то торможение, и то чисто теоретически, лишь в том случае, когда он большой для твоей сети.

 

Поэтому сначала попробуй установить его, скажем, в 1000.

 

Если всё-же грешишь на него, попробуй попинговать хабы по маршруту ping-ом с параметром -s 1500. Если будут потери или задержки - делаем выводы. Пробуем также ping -s 1400 и ping -s 1000. Пробовать, конечно, по 100 пакетов не меньше.

Link to post
Share on other sites

set iface enable tcpmssfix

а также tcpmssd специально для таких случаев наши написали

есть в портах под FreeBSD

/usr/ports/net/tcpmssd

Link to post
Share on other sites
set iface enable tcpmssfix

а также tcpmssd специально для таких случаев наши написали

есть в портах под FreeBSD

/usr/ports/net/tcpmssd

непомогло...

 

"а также tcpmssd специально для таких случаев наши написали

есть в портах под FreeBSD

/usr/ports/net/tcpmssd"

можно поподробней.... и если можно обьясните проблему, я просто непонимаю почему так происходит... пинги с -s 1500 пролетаю более-менее нормально...

Link to post
Share on other sites

вобщем путем эксперементов пришел к выводу, что нормальным путем (set link mtu ... в mpd.conf) максимальное значение mtu, которое можно установить, равняется 1460... с помощью ifconfig ng0 mtu ... можно установить любое значение, но результат остается тот же... до смены биллинга провайдера mtu было 1500. вывод: сервер провайдера не позволяет установить mtu свыше 1460, у меня есть 2 варианта: либо попросить провайдера установить по дефолту 1500 (что практически не реально...), либо подстроить свою систему под 1460... но как? даже немогу понять куда копать....

Link to post
Share on other sites

А если установить с помощью set link mtu в mpd.conf значение 1400 ?

Имхо, глючить не должно в принципе.

У диалапщиков mtu вообще в районе 500-600, а работают как-то.

Link to post
Share on other sites

ставил... пофиг... сам непойму как диалапшники работают... была мысль что у меня на эзернетовых интерфесах 1500, а тут 1460 из-за этого глючит... пробовал сравнять... не помогло... щас еще раз попробую..

Link to post
Share on other sites
  • 1 year later...
1. cd /usr/ports/net/tcpmssd | make | make install | make clean

2. /usr/local/bin/tcpmssd -p 1234 -b -m 1240

3. /sbin/ipfw add 1 divert 1234 all from any to any via ngX (X- number iface)

 

P.S. должно работать...

подскажите пожалуйста, а как потом отдать пакет на natd?

Link to post
Share on other sites

Кстати проблема с mtu есть, если на шлюзе стоит значение меньше 1500, появляются проблемы с некоторыми сайтами.

Вину за это можно много на кого спихнуть.

Например на всех, кто не дружит с пропусканием фрагментированных пакетов.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...