Jump to content

Помогите с IPTABLES DNAT плис...


Recommended Posts

Итак, есть Линух РХ9.0

У него два интерфейса - eth1 (192.168.100.2) и 192.168.1.2 (eth0).

Через eth0 он поднимает PPPoE сессию через ADSL модем и получает динамический IP на PPP0.

В локальной сетке стоит сервер Lineage II (порты 2106 - авторизация и 7777 - игровой сервер - два модуля зависящие друг от друга). Так же на нём стоит Remote Administrator (порт 4899).

На Линухе правила:

Output from iptables -t nat -L ..

Chain PREROUTING (policy ACCEPT)

target prot opt source destination

DNAT tcp -- !192.168.100.0/24 anywhere tcp dpt:4899 to:192.168.100.50

DNAT tcp -- !192.168.100.0/24 anywhere tcp dpt:2106 to:192.168.100.50

DNAT tcp -- !192.168.100.0/24 anywhere tcp dpt:7777 to:192.168.100.50

Chain POSTROUTING (policy ACCEPT)

target prot opt source destination

MASQUERADE all -- 192.168.100.0/24 anywhere

Так вот Remote Admin и авторизация при заходе из инета работают, а вот войти на игровой сервер не получается. =(

Есть подозрение, что игровому серверу не нравицца белый IP подключающегося клиента, ибо в локалке всё работает нормально.

Как мне решить эту проблему?

Link to post
Share on other sites

Daggers писал(а) сб, 10 декабря 2005 10:46

Есть подозрение, что игровому серверу не нравицца белый IP подключающегося клиента, ибо в локалке всё работает нормально.

Как мне решить эту проблему?

Поставьте маскарад двусторонний, чтоб до игрового сервака пакеты приходили не с реального ИПа, а со 192.168.100.2

Link to post
Share on other sites

Цитата:

Поставьте маскарад двусторонний

обычный маскарад нужен.

1. включить в proc ip_forward (или через /etc/sysctl.conf если есть поддержка)

2. открыть форвард в обе стороны

iptables -A FOWARD -s xxx -d xxx -j ACCEPT

3. использовать проброс через DNAT

Link to post
Share on other sites

1. Давно включено.

2. Открыл.

3. Использую.

На данный момент такие правила:

iptables -t nat -A PREROUTING --dst tigra.game-host.org -p tcp --dport 2106 -j DNAT --to-destination 192.168.100.50
iptables -t nat -A POSTROUTING -p tcp --dst 192.168.100.50 --dport 2106 -j SNAT --to-source 192.168.100.2
iptables -t nat -A PREROUTING --dst tigra.game-host.org -p tcp --dport 7777 -j DNAT --to-destination 192.168.100.50
iptables -t nat -A POSTROUTING -p tcp --dst 192.168.100.50 --dport 7777 -j SNAT --to-source 192.168.100.2
iptables -t nat -A PREROUTING --dst tigra.game-host.org -p tcp --dport 2009 -j DNAT --to-destination 192.168.100.50
iptables -t nat -A POSTROUTING -p tcp --dst 192.168.100.50 --dport 2009 -j SNAT --to-source 192.168.100.2
iptables -A FORWARD -s tigra.game-host.org -d 192.168.100.50 -j ACCEPT
iptables -A FOWARD -s 192.168.100.50 -d tigra.game-host.org -j ACCEPT

Те же яйца но в другой руке.

Причём если я подключаюсь к линуху VPN`ом и получаю адрес типа 10.0.10.x то всё работает и всё пускает. Ниччё не понимаю.

PS. tigra.game-host.org - Линух, который смотрит в инет через ppp0, а 192.168.100.50 сервер Lineage II в локалке.

Link to post
Share on other sites

Dr.Spectre писал(а) пн, 19 декабря 2005 22:04

Цитата:

Поставьте маскарад двусторонний

обычный маскарад нужен.

А я все же утверждаю, что если демону не нравится внешний ИП, то вполне логично сменить его на внутренний.

Цитата:

1. включить в proc ip_forward (или через /etc/sysctl.conf если есть поддержка)

Написано же - при заходе из инета работает все, кроме Линейки. При чем тут разрешение форвардинга?

Цитата:

2. открыть форвард в обе стороны

iptables -A FOWARD -s xxx -d xxx -j ACCEPT

1. См. предыдущий пункт

2. В приведенных Дагерсом правилах я не заметил изменения политик для цепочек, а какая политика стоит для всех цепочек (в т.ч. FORWARD) по умолчанию? Wink

Цитата:

Поставьте маскарад двусторонний, чтоб до игрового сервака пакеты приходили не с реального ИПа, а со 192.168.100.2

Чё-то ума не приложу как это осуществить...

Наверное, я не совсем правильно выразился... Имелось в виду помимо

MASQUERADE all -- 192.168.100.0/24 anywhere

маскарад в направлении 192.168.100.0/24. Напомню, что был поставлен вопрос о том, что демону не нравится реальный ИП, поэтому ИМХО вполне логично было прописать маскарад в направлении инет-> локалка. А если маскарад есть и тот и тот, его можно назвать двусторонним. Я так думаю (с) Винни Пух Wink

ЗЫ: А с Вашими новыми правилами я тоже ничо не понимаю Sad

Link to post
Share on other sites

Маскарад в направлении инет -> локалка тоже пробовал, и опять ничего не заработало. Мне на данный момент хочецца понять, почему при подключении по VPN (на линухе PPtPD) и получении IP типа 10.0.10.x к игровому серверу подключается, хотя в коннект идёт так же на tigra.game-host.org? И клиент так же понятия не имеет про 192.168.100.50! Была мысял что стрим блокриует порты, но в списке заблокированых портов порта 7777 нет, да и в бытность ява эмулятора сервера всё коннектилось из инета на ура! Confused

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...