LINUX.ORG.RU
решено ФорумAdmin

Перенаправление игроков

 


1

3

Дано: 1 комп с IP:1.1.1.1 2 комп с IP:2.2.2.2 обе тачки работают на системе Linux на 1 компе работает игровой сервер CS:Source на порту 27015

Задача: со 2-го компа перенаправлять игроков на игровой сервер 1-го компа; т.е. при подключении к 2.2.2.2:27015 игрок попадает на 1.1.1.1:27015

Кто знает, как это сделать средствами Linux ?

Интернет рыл, находил, пробовал - ничего не работает(

Интернет рыл, находил, пробовал - ничего не работает(

Что находил, что пробовал? Не стесняйся, рассказывай.

edigaryev ★★★★★
()
Ответ на: комментарий от edigaryev

В основном эти правила iptables чаще всего попадались: iptables -t nat -A PREROUTING -d 2.2.2.2 -p tcp --dport 27015 -j DNAT --to-destination 1.1.1.1:27015 iptables -t nat -I POSTROUTING -d 1.1.1.1 -p tcp --dport 27015 -j SNAT --to-source 2.2.2.2

после написания их в консоль, список правил «iptables -L» был пуст о_О странно... ошибки никакие не выскакивали

естественно перенаправление не работало

dj_andrey
() автор топика
Ответ на: комментарий от dj_andrey

и находились еще разные правила на основе тех что выше (уже запутался в них) находились и другие вещи, которые я попробовать не осмелился, ибо не шарю... Сильно не пинайте, опыта у меня очень мало в Linux )

dj_andrey
() автор топика
Ответ на: комментарий от dj_andrey

список правил «iptables -L» был пуст о_О странно...

а iptables -t nat -L

Имя таблицы надо указывать, иначе она показывает для filter

Pryanick
()
Ответ на: комментарий от Pryanick

«iptables -t nat -L» - норм показывает правила) но при подключении к игровому серверу меня НЕ перенаправляет на другой сервер (

dj_andrey
() автор топика
Ответ на: комментарий от dj_andrey

вот кое что нашел, буду пробовать:

«прописываем в самый низ: sysctl.conf net.ipv4.ip_forward=1 net.ipv4.conf.default.forwarding=1 net.ipv4.conf.all.rp_filter=0 net.ipv4.conf.default.rp_filter=0

Правила iptables на стороне прокси iptables -t nat -A PREROUTING -p udp -m udp --dport 27015 -d АДРЕС-ПРОКСИ -j DNAT --to-destination АДРЕС-СЕРВЕРА:27015 iptables -t nat -A POSTROUTING -p udp -m udp --dport 27015 -j SNAT --to-source АДРЕС-ПРОКСИ iptables -t filter -A INPUT -s АДРЕС-СЕРВЕРА -d АДРЕС-ПРОКСИ -j ACCEPT iptables -t filter -A FORWARD -j DROP iptables -t filter -A FORWARD -s АДРЕС-СЕРВЕРА/32 -j ACCEPT iptables -t filter -A FORWARD -d АДРЕС-СЕРВЕРА/32 -j ACCEPT

Правила iptables на стороне сервера iptables -t filter -A INPUT -s АДРЕС-ПРОКСИ -d АДРЕС-СЕРВЕРА -j ACCEPT»

dj_andrey
() автор топика
Ответ на: комментарий от dj_andrey

все получилось, после того как удалил эти строчки

iptables -t filter -A FORWARD -s АДРЕС-СЕРВЕРА/32 -j ACCEPT

iptables -t filter -A FORWARD -d АДРЕС-СЕРВЕРА/32 -j ACCEPT

dj_andrey
() автор топика
Ответ на: комментарий от dj_andrey

Вообщем вот итоговый набор правил, при которых все фурычит!

лично проверил!

получается как сервер-зеркало

1. прописываем в самый низ: sysctl.conf

net.ipv4.ip_forward=1

net.ipv4.conf.default.forwarding=1

net.ipv4.conf.all.rp_filter=0

net.ipv4.conf.default.rp_filter=0

2. Правила iptables на стороне прокси

iptables -t nat -A PREROUTING -p udp -m udp --dport ПОРТ-ПРОКСИ -d АДРЕС-ПРОКСИ -j DNAT --to-destination АДРЕС-СЕРВЕРА:ПОРТ-СЕРВЕРА

iptables -t nat -A POSTROUTING -p udp -m udp --dport ПОРТ-СЕРВЕРА -j SNAT --to-source АДРЕС-ПРОКСИ

iptables -t filter -A INPUT -s АДРЕС-СЕРВЕРА -d АДРЕС-ПРОКСИ -j ACCEPT

3. Правила iptables на стороне сервера

iptables -t filter -A INPUT -s АДРЕС-ПРОКСИ -d АДРЕС-СЕРВЕРА -j ACCEPT

dj_andrey
() автор топика

Отлично, отметь тему как решённую.

xenith
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.