Jump to content
Калькуляторы

Centos border и gre

Всем привет. Заменили значит микротик на тазик с centos на борту. На машине только bgp и ipt_NETFLOW. От юзерей стали поступать жалобы о плохой работе gre. Тормоза и обрывы. Куда можно копнуть, с какой стороны подойти к проблеме?

Share this post


Link to post
Share on other sites

Немного разобрался в ситуации. Увеличил net.netfilter.nf_conntrack_max до 1048576. 

Сейчас из крутилок:

/sbin/ethtool -K eth1 tso off
/sbin/ethtool -K eth0 tso off
/sbin/ethtool -K eth1 lro off
/sbin/ethtool -K eth0 lro off
/sbin/ethtool -G eth0 rx 4096 tx 4096
/sbin/ethtool -G eth1 rx 4096 tx 4096

/sbin/ifconfig eth0 txqueuelen 10000
/sbin/ifconfig eth0.851 txqueuelen 10000
/sbin/ifconfig eth1 txqueuelen 10000

 

Очереди прибиты к ядрам. На какие еще переменные стоит обращать внимание в sysctl при роутинге?

Share this post


Link to post
Share on other sites

Ну как бы контрак по умолчанию мониторят. А на бордере совсем отрубают, если НАТа нет.

Вангую, что в лог сыпало что-то вроде nf_conntrack: table full

 

Крутить надо, но надо понимать что крутить и зачем. Можно порезать таймауты tcp. Можно еще много чего. Но нужно почитать и понять что вам надо, что нет. А уж потом крутить.

Edited by TriKS

Share this post


Link to post
Share on other sites

Вы правы на счет сообщений nf_conntrack: table full. 

Может статейку посоветуете какую почитать можно по теме?

Share this post


Link to post
Share on other sites

google.com -> тюнинг сетевого стека linux.

Share this post


Link to post
Share on other sites
5 часов назад, roma33rus сказал:

Хорошо, поищу.

вас просто послали на три буквы. если будете в гугле искать тюнинг сетевого стек, то нарвётесь на тюнинг tcp-параметров, которые влияют на локальные приложения (все эти howto написаны под веб-сервера), но не на форвардинг (софтроутеры)

 

вообщем вот рецепт:

# cat /etc/modprobe.d/nf_conntrack.conf 
options nf_conntrack hashsize=1048576
# cat /etc/sysctl.conf | grep max | grep conntr
net.nf_conntrack_max=8388608

опционально, можно ещё подкрутить таймауты, но с таким хешем и общим размером таблицы скорее всего вам это не потребуется

Share this post


Link to post
Share on other sites
10 часов назад, s.lobanov сказал:

опционально, можно ещё подкрутить таймауты, но с таким хешем и общим размером таблицы скорее всего вам это не потребуется

Да-да. Расскажите это при ДДОСе.

Share this post


Link to post
Share on other sites
11 часов назад, s.lobanov сказал:

вас просто послали на три буквы. если будете в гугле искать тюнинг сетевого стек, то нарвётесь на тюнинг tcp-параметров, которые влияют на локальные приложения (все эти howto написаны под веб-сервера), но не на форвардинг (софтроутеры)

 

вообщем вот рецепт:


# cat /etc/modprobe.d/nf_conntrack.conf 
options nf_conntrack hashsize=1048576
# cat /etc/sysctl.conf | grep max | grep conntr
net.nf_conntrack_max=8388608

опционально, можно ещё подкрутить таймауты, но с таким хешем и общим размером таблицы скорее всего вам это не потребуется

то есть при роутинге conntrack лучше оставить или все-таки отключить?

Share this post


Link to post
Share on other sites

Если NAT'а нет, и в фаере не нужны состояния, лучше -j NOTRACK

Share this post


Link to post
Share on other sites

 

8 минут назад, roma33rus сказал:

то есть при роутинге conntrack лучше оставить или все-таки отключить?

При чистом роутинге, conntrack лучше отключить. Если есть нат/трекинг состояний, то вы вынуждены использовать conntrack

Share this post


Link to post
Share on other sites

Нет, на этой железке НАТа не будет, только bgp и netflow

 

32 минуты назад, pppoetest сказал:

Если NAT'а нет, и в фаере не нужны состояния, лучше -j NOTRACK

Спасибо. попробую перенастроить iptables

Share this post


Link to post
Share on other sites
7 минут назад, roma33rus сказал:

попробую перенастроить iptables

Лучше его(модуль) вообше отключить в таком случае.

Share this post


Link to post
Share on other sites
В 04.04.2019 в 10:38, TriKS сказал:

Лучше его(модуль) вообше отключить в таком случае.

Ну да, сначала правила переписать и же отрубать модуль.

Share this post


Link to post
Share on other sites

@roma33rus 

Обычно проще не трогать модуль и использовать для самого сервера established-правила, а для транзитного добавить -j NOTRACK.

Если на сервере кроме маршрутизации еще куча сервисов, stateless правила могут быть длинными и нудными.

Share this post


Link to post
Share on other sites

А правило NOTRACK должно быть в табличке raw? а потом уже в табличке filter разрешающие правила? я все правильно понимаю? На этой железке, кроме маршрутизации и нетфлоу ничего не будет.

Share this post


Link to post
Share on other sites

@roma33rus 

Верно. Фаервол остается без изменений, добавляется таблица RAW с 1 или несколькими правилами.

Даже на серверах с NAT такой прием используют, для реальных адресов делается NOTRACK, а серые работают по старинке с трекингом.

Share this post


Link to post
Share on other sites

спасибо. вроде стал немного понимать логику. изучаю просторы интернета.

Share this post


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