Route передал трафик через eth0, но локальный трафик через tun0

В первую очередь, 40 000 хитов в день и 400 + отправляют день, не походит на что-то, что заставило бы MySQL потеть. 40 000 хитов в день являются приблизительно 2 хитами в секунду, если распространено среди дня, и 400 +, сообщения означают, что существует новое сообщение после каждых трех минут.

И это не очень.В самом деле.

Вы не упоминали, какой механизм устройства хранения данных используется. С таблицами MyISAM необходимо настроить особенно значения table_cache и key_buffer. С таблицами InnoDB innodb_buffer_pool_size является самым важным.

key_buffer = 16k в Вашем примере звучит странным. 16 килобайтов key_buffer? Никакой путь, сделайте его, по крайней мере, 16M (мегабайты), или если Ваш сервер имеет достойный объем памяти, то это может быть намного больше. Знайте, хотя это, много переменных MySQL являются конкретным соединением и не глобальные значения, поэтому если Ваша загрузка сервера будет означать тысячи одновременных Подключений mysql, то необходимо будет настроить значения вниз, но если у Вас обычно есть только небольшое количество соединений, но больших наборов данных, затем необходимо настроить значения.

0
задан 25 June 2012 в 22:31
2 ответа

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

Сначала пометьте новую таблицу маршрутизации для VPN-соединения. . Это нужно сделать только один раз.

echo 10 vpn >> /etc/iproute2/rt_tables

Заполните новую таблицу маршрутизации правилами для отправки трафика через VPN (при условии, что 1.0.0.10/24 - это адрес eth0, а VPN-шлюз - 10.8.0.1).

ip route add 169.254.0.0/16 dev br1 table vpn
ip route add 192.168.1.0/24 dev br1 table vpn
ip route add 1.0.0.0/24 dev eth0 table vpn
ip route add default via 18.8.0.1 table vpn

Затем добавьте правило для использования этой новой таблицы для трафика от самого хоста.

ip rule add from 1.0.0.10/32 lookup vpn

Если это не так '

3
ответ дан 4 December 2019 в 12:44

Мне удалось это сделать, используя iif lo следующим образом.

Переместите маршрут по умолчанию в отдельную таблицу, чтобы можно было локальное правило переопределить:

default_route=$(ip route list | grep -m 1 "default via")
ip route add $default_route table default
ip route delete $default_route

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

main=$(ip rule list | grep -m 1 "lookup main $")
main_rule=$(echo $main | cut -d ":" -f 2)
main_priority=$(echo $main | cut -d ":" -f 1)
ip rule add $main_rule priority 16384
ip rule delete $main_rule priority $main_priority

Добавьте маршрут шлюза VPN по умолчанию в отдельную таблицу и добавьте правилом.

echo "10 vpn" >> /etc/iproute2/rt_tables
ip rule add priority 24576 iif lo lookup vpn

Скажите клиенту OpenVPN, чтобы он поместил маршрут по умолчанию в таблицу vpn, добавление следующего в конфигурационный файл / etc / openvpn / * :

script-security 2
route-up "/bin/sh -x -c 'route_net_gateway=$(ip route ls table default | cut -d \" \" -f 3) && ip route add $trusted_ip via $route_net_gateway table vpn && /sbin/ip route add default via $ifconfig_remote table vpn' route-up"
0
ответ дан 4 December 2019 в 12:44

Теги

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