I need help, в поиск меня слать не надо пожалуйста :) первый раз пишу на opennet'e, до этого все вопросы решались без создания топика для конкретного обсуждения. И так ситуация следующая... Есть сервер с двумя сетевухами, одна смотрит в инет, другая в локалку. В локалке есть Counter-Strike сервер с ip 10.2.0.1 и портом 27015, вот туда надо пробросить с IP смотрящего в инет. Порт UDP, поэтому с помошью rinetd не пробросить.
ОС - FreeBSD 7.0
Все нужные функции в ядро включены (IPDIVERT и т.п.)
ifconfig:
msk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=9a<TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:18:f3:68:78:62
inet 10.2.33.33 netmask 0xffff0000 broadcast 10.2.255.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
sk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=b<RXCSUM,TXCSUM,VLAN_MTU>
ether 00:18:f3:68:39:f4
inet 92.246.128.20 netmask 0xffffffe0 broadcast 92.246.128.31
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000Пробровал пробрасывать с помощью natd. Ничерта не выходит. И так и сяк, и с бубном и без... конф natd.conf менял по-разному. Текущий нерабочий вариант:
interface msk0
use_sockets yes
same_ports yes
unregistered_only yes
redirect_port tcp 10.2.0.1:27015 27015
redirect_port udp 10.2.0.1:27015 27015Чего ещё нужно наколдовать чтобы при коннекте на 92.246.128.20 на udp порт 27015 шёл заход в CS на 10.2.0.1(cs server) с 10.2.33.33(шлюз, смотри фейс ifconfig msk0) ??
Чисто на всякий случай, а в обратную сторону NAT udp пакетов настроен?
>Чисто на всякий случай, а в обратную сторону NAT udp пакетов настроен?
>В ipfw правило:
00050 divert 8668 ip from any to any via msk0
Поэтому вроде обратно должно нормально ходить.
насколько я помню контра не использует только порт 27015, попробуй пробросить диапазон портов. Как вариант, открой фаер на внешней машине и делай проброс
>насколько я помню контра не использует только порт 27015, попробуй пробросить диапазон
>портов. Как вариант, открой фаер на внешней машине и делай проброс
>Я хоть тоже в кантру давно не играл, но порт помню точно, 27015. Фаер на внешней машине открыт.
>Я хоть тоже в кантру давно не играл, но порт помню точно,
>27015. Фаер на внешней машине открыт.нет я не зато, используеться вроде как диапазон портов
дай вывод sockstat | grep hlds
У меня это так
sockstat | grep hlds
hlds_i686 2273 4 udp4 *:27015 *:*
**** hlds_i686 2273 7 udp4 10.10.10.10:26900 *:*
**** hlds_i686 2272 4 udp4 *:27015 *:*
**** hlds_i686 2272 7 udp4 10.10.10.10:26900 *:*
**** hlds_i686 2271 4 udp4 *:27015 *:*
**** hlds_i686 2271 7 udp4 10.10.10.10:26900 *:*Что указывает что используеться не только один порт
>[оверквотинг удален]
> *:*
>**** hlds_i686 2272 7 udp4
> 10.10.10.10:26900 *:*
>**** hlds_i686 2271 4 udp4
> *:27015
> *:*
>**** hlds_i686 2271 7 udp4
> 10.10.10.10:26900 *:*
>
>Что указывает что используеться не только один портПорты 26900 не обязательны..
Добавив в конф ничего не изменилось :)
/etc/natd.conf:
interface msk0
use_sockets yes
same_ports yes
unregistered_only yes
redirect_port udp 10.2.0.1:27015 27015
redirect_port udp 10.2.0.1:26900 26900
redirect_port udp 10.2.0.1:27016 27016
redirect_port udp 10.2.0.1:26901 26901
честно говоря, непонятно...Посмотрите тут
http://www.lissyara.su/?id=1159