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

Проблема в работе шлюза на Debian 12

 ,


0

2

Всем привет Начальные данные: Есть компьютер с установленным Debian 12. Настроен для работы в качестве шлюза для раздачи интернета в локальную сеть. На компьютере 2 сетевые карты: одна настроена на локальную сеть, вторая карта используется для подключения интернет через pppoe соединение.

Есть второй компьютер, настроен как шлюз, на нем стоит Debian 9 и все работает хорошо. На компьютере с Debian 12 все настроено аналогично, как на втором. Но есть проблема.

Суть проблемы: У пользователей работающих через шлюз, не открываются сайты. Кроме yandex.ru и mail.ru, которые открываются медленно, но работают. Другие сайты не открываются вовсе.

Проделанные проверки: На самом сервере интернет работает отлично, есть доступ на любые ресурсы и есть скорость. Так же на сервере стоит прокси squid. Через него все работает отлично, все сайты открываются быстро у любого пользователя. ping от пользователей идет к любому сайту отлично. Через шлюз в браузере у пользователей открываются только яндекс и майл. К остальным доступа нет, заканчивается время ожидания. Трассировка до проверочного сайта показывает завершение ожидания по времени на 6 строке. Через другого провайдера проблемы нет, но скорость отклика медленная по сравнению с 9 Debian.

На мой взгляд проблема где то в работе NAT Debian 12, но понять не могу, где еще и что проверить.

Ответ на: комментарий от anc

добавил два правила nft 'add rule ip mangle FORWARD tcp flags syn / syn,rst counter tcp option maxseg size set rt mtu' nft 'add rule ip mangle POSTROUTING tcp flags syn / syn,rst counter tcp option maxseg size set rt mtu'

не помогло вот правила:

/usr/sbin/nft list ruleset table inet filter { chain input { type filter hook input priority filter; policy accept; }

chain forward { type filter hook forward priority filter; policy accept; }

chain output { type filter hook output priority filter; policy accept; } } table ip nat { chain postrouting { type nat hook postrouting priority srcnat; policy accept; masquerade }

chain prerouting { type nat hook prerouting priority dstnat; policy accept; } } table ip mangle { chain forward { tcp flags syn / syn,rst counter packets 0 bytes 0 tcp option maxseg size set rt mtu }

chain postrouting { tcp flags syn / syn,rst counter packets 0 bytes 0 tcp option maxseg size set rt mtu } }

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

попробовал открыть яндекс майл и другие сайты, яндекс и майл загрузился быстро но в статистику не попал. как понять маршрут трафика? или как пустить его через nftables (он стоит по умолчанию). система установлена чистая с диска.

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

deb дистрибутивы не использую по религиозным соображениям, поэтому подсказать не смогу. Но природа не открывающихся сайтов в TCP MSS. Почему нет попаданий или не работают счетчики - хз. Попробуйте сделать conntrack -F

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

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

Управлением трафиком занимается ядро Линукс. Ты можешь вообще остановить службу и загрузить правила руками в ядро и будет работать точно так же.

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

попробовал отключить службу nftables. перестали открываться яндекс и майл. потом попробовал очистить все правила nftables с включенной службой. яндекс и майл по прежнему не открываются. добавил в правила masquerade. яндекс и майл заработали. значит фаервол работает и обрабатывает правила, осталось написать правильное правило для tcp mss. отконвертированые правила из iptables в nftables не сработали.

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

трассировка с клиента под windows

(адрес шлюза 10.1.1.119)

tracert 2ip.ru

Трассировка маршрута к 2ip.ru [195.201.201.35] с максимальным числом прыжков 30:

1 4 ms <1 мс <1 мс 10.1.1.119

2 1 ms 1 ms <1 мс 172.21.191.253

3 1 ms 1 ms 1 ms lag-3-438.bgw01.omsk.ertelecom.ru [109.194.120.30]

4 * * * Превышен интервал ожидания для запроса.

5 80 ms 80 ms 80 ms 188-234-140-9.ertelecom.ru [188.234.140.9]

6 76 ms 76 ms 76 ms core21.fsn1.hetzner.com [213.239.224.97]

7 86 ms 84 ms 84 ms 213-239-252-110.clients.your-server.de [213.239.252.110]

8 75 ms 75 ms 76 ms static.35.201.201.195.clients.your-server.de [195.201.201.35]

Трассировка завершена.

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

добавил то же правило в раздел inet filter forward, все заработало ,все сайты стали открываться. в общем проблема снята. хотя трассировка по прежнему показывает прерывание по ожиданию на 4 шаге.

вот рабочая секция правил nftables:

table inet filter {

    chain input {

            type filter hook input priority filter; policy accept;

}

    chain forward {

            type filter hook forward priority filter; policy accept;

            tcp flags syn / syn,rst counter packets 0 bytes 0 tcp option maxseg size set rt mtu

    }

    chain output {

            type filter hook output priority filter; policy accept;

    }

}

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