Задать вопрос

Q-in-Q в сети из D-Link и Linux?

Добрый день.


Имеется схема:

Компьютер---(2)D-Link DES-3028(1)---(2)D-Link DGS-3627G(1)---Сервер

В скобках указаны номера портов, — это линки :)


На сервере поднят интерфейс eth0.12.34.

На DGS создан влан 12, назначен тегированным на порт, смотрящий в сторону 3028 (2й) и на порт, смотрящий в сторону сервера (1й). Настроено правило трансляции create vlan_translation ports 2 cvid 34 add svid 12. Для порта 1 задана роль nni, для 2 — uni. Для всех портов установлен tpid 0x8100.

На DES создан влан 34, назначен тегированным на порт, смотрящий в сторону DGS и унтегированным на порт компьютера.

На сетевом интерфейсе компьютера и на интерфейсе eth0.12.34 назначены ip из одной подсети, пинги ходят, вроде все работает.

Однако, исходящий от компьютера трафик ходит с каким-то явными проблемами. Если замерять скорость при помощи iperf, то в направлении от сервера к компьютеру все в порядке, а в обратном — 10-20 килобит. Если воспользоваться сервисом типа speedtest.net (сервер просто маршрутизирует трафик в интернет, NAT не используется), то тест на download проходит отлично, а тест на upload начинается с большой задержкой и показывает низкие значения. Подобные проблемы наблюдаются при любом исходящем трафике, при использовании различного софта, различных компьютеров, различных DES и даже различных DGS.

При использовании влана с одним тегом все в порядке. При этом на DGS создаем влан 34, назначаем тегированным на 1,2 порты и создаем другое правило трансляции: create vlan_translation ports 1 cvid 34 replace svid 34. На сервере используем влан 34. В этом случае проблем с трафиком нет ни в каком направлении.


Интуиция подсказывает проблему с MTU. Уменьшение MTU на компьютере до 1492 проблему вроде бы решает.


Вопрос: как можно решить проблему, не меняя MTU на компьютере?
  • Вопрос задан
  • 5884 просмотра
Подписаться 4 Оценить Комментировать
Решения вопроса 1
peter23
@peter23 Автор вопроса
Проблема решена использованием следующего правила на сервере:
iptables -t mangle -A POSTROUTING -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1454
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
Никак, а зачем вам влан во влане, не хватает 1024 вланов?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы