HLDS и default gateway (два интерфейса на freebsd)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

varjo
Сообщения: 43
ОС: ArchLinux, FreeBSD

HLDS и default gateway

Сообщение varjo »

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

Столкнулся с проблемой отсутствия необходимого опыта :rolleyes:

есть машинка с freebsd и двумя сетевыми интерфейсами (с интернетами от разных провайдеров)
1. смотрит в интернеты через pppoe соединение, динамический айпи
2. смотрит в локалку и интернеты через другой шлюз, внутренний ип статически, на шлюзе динамический

на машинке имеется сервер hlds (cs1.6) и хочется вывести его наружу на все интерфейсы. но с этим и проблема. сервер видится в интернетах, только на том ip для которого выставлен дефолтный шлюз.

пока реализовано вот так, через ipfw


Код: Выделить всё

#!/bin/sh

net1_if="re0"
net1_gw="192.168.88.254"
net1_ip="192.168.88.222"

net2_if="tun0"
net2_gw=`ifconfig tun0 | grep inet | awk '{print $4}'`
net2_ip=`ifconfig tun0 | grep inet | awk '{print $2}'`

local_if="lo0"

####

echo "net2 gw = $net2_gw"
echo "net2 ip = $net2_ip"

setfib 0 route delete default
setfib 1 route delete default
setfib 2 route delete default

route add default $net1_gw
#route add default $net2_gw

ipfw -f flush
ipfw -f pipe flush
ipfw -f queue flush

ipfw add allow ip from any to any via $local_if
ipfw add fwd $net2_gw ip from $net2_ip to any

ipfw add allow ip from any to any


После добавления
ipfw add fwd $net2_gw ip from $net2_ip to any
стало возможно соединятся с сервером через ssh по $net2_ip, без этого соединение попросту висит (как я подозреваю, пакеты хотят уйти по default gateway).

Но это не помогает для hlds(udp, 27015). Проверяю доступность сервера через HLSW Mobile и все время получаю отлуп.
В tcpdump вижу
02:43:52.878968 IP s9c.hlsw.org > мой_адрес: ICMP echo request, id 18346, seq 1, length 64
02:44:03.061611 IP s9b.hlsw.org.50781 > мой_адрес.27015: UDP, length 25
02:44:03.061686 IP s9b.hlsw.org.50781 > мой_адрес.27015: UDP, length 9
02:44:03.061732 IP s9b.hlsw.org.50781 > мой_адрес.27015: UDP, length 9

ничего в ответ не вылетает.

Если поменять default gw, то ситуация обратна: сервер видно через второго провайдера, а через первого нет.

Пробовал использовать setfib для создания различных таблиц маршрутизации, но с ним нужно биндить приложение на определенную таблицу, и для другой она будет так же недоступна. Возможно тут я заблуждаюсь.


Буду рад любым советам и предложениям по решению проблемки : )

Спасибо сказали:
Аватара пользователя
SHar
Сообщения: 182
Статус: Уйду я от вас...
ОС: Arch,FreeBSD,Mac 10.6.4

Re: HLDS и default gateway

Сообщение SHar »

BGP. Требет денюжек (ASN) и вменяемых провайдеров. Имхо это слишком для сервера КС
Спасибо сказали: