PDA

Bekijk de volledige versie : можно ли решить проблему пересекающихся сетей



jiv
14-10-2009, 20:03
Здравствуйте.
Прошу помощи в решение проблемы)
Ситуация такая, есть комп(на нем стоит ubuntu 9.04), используется как сервер CSS(игра контр страйк) и есть два провайдера , у первого провайдера локальная сеть диапозона 10.0.0.0-10.255.255.255 и у второго провайдера диапозон локальных айпи такойже.
Превый провайдер "воткнут" в "сервак" напрямую, а второй провайдер воткнут сначала в DIR-320(c последней прошивкой от Олега), а с роутера уже в сервак.
Проблема в том, что когда юзеры со второго поровайдера, проходят через роутер, то у них остаются свои же родные айпишки из сети 10.0.0.0-10.255.255.255 , а у пользователй первого провайдера тоже айпишки из сети 10.0.0.0-10.255.255.255. и получается конфликт.так что на сервере могут играть только юзеры из одного провайдера.
как сделать так, чтобы юзерам при проходе через роутер, выдавались айпишки из другой подсети?пусть даже один айпи на всех.
помогите, плиз)

joohny
15-10-2009, 14:09
Как вариант на одном из провайдеров поставить себе адрес, к примеру 192.168.55.1 и пользователям что хотят играть в CS говорить, чтоб себе брали адреса на компах из подсети 192.168.55.0, ведь наверняка все соединены "тупо" свичами.

vectorm
15-10-2009, 14:14
помогите, плизз)
D-Link в каком режиме включен? Включите в Home Gateway или Router.

jiv
15-10-2009, 14:29
D-Link в каком режиме включен? Включите в Home Gateway или Router.

Home Gateway

vectorm
15-10-2009, 15:02
Home Gateway
тогда рисуйте, ибо из описания не понимаю, как пользователи второго провайдера проходят через Длинк "прозрачно".

jiv
15-10-2009, 19:51
тогда рисуйте, ибо из описания не понимаю, как пользователи второго провайдера проходят через Длинк "прозрачно".

вот, как получается
http://linkme.ufanet.ru/images/3e/3e67f538a26cba8cb7a656f00c1717b2.png

vectorm
16-10-2009, 08:32
вот, как получается

А если Дир развернуть наоборот?
Чтобы пользователи приходили со стороны LAN. Тогда они будут в один WAN IP трансформироваться.

VEDMED007
16-10-2009, 09:09
Зачем так сложно - интернет сейчас есть у всех - дать dyndns запись юзерам одного из провайдерам и пусть "стучатся" через инет.

pirogkov
16-10-2009, 09:13
Зачем так сложно - интернет сейчас есть у всех - дать dyndns запись юзерам одного из провайдерам и пусть "стучатся" через инет.
думается через интернет пинги большие будут, что не айс для CS.

jiv
16-10-2009, 12:29
Зачем так сложно - интернет сейчас есть у всех - дать dyndns запись юзерам одного из провайдерам и пусть "стучатся" через инет.

невариант, там и пинги большие, и не увсех деньги на внешку есть, а локалка работает всегда.

jiv
16-10-2009, 12:30
А если Дир развернуть наоборот?
Чтобы пользователи приходили со стороны LAN. Тогда они будут в один WAN IP трансформироваться.

:eek: ваще чет себе этого непредставляю.

блин да мне кажется есть какойнить другой способ для подмены айпи, чето надо както похитрому прописать перенаправлени, а вот как?:confused:

sauron093
16-10-2009, 13:51
А если Дир развернуть наоборот?
Чтобы пользователи приходили со стороны LAN. Тогда они будут в один WAN IP трансформироваться.

я тоже другого варианта не вижу

в дире отключить dhcp на wan порт статический ип типа 192.168.1.2 в сервак на сетевуху куда он втыкнут соответственно 192.168.1.1

на компах провайдера 2 прописать маршрут до сервака и шлюз

jiv
16-10-2009, 15:27
я тоже другого варианта не вижу

в дире отключить dhcp на wan порт статический ип типа 192.168.1.2 в сервак на сетевуху куда он втыкнут соответственно 192.168.1.1

на компах провайдера 2 прописать маршрут до сервака и шлюз

я так понимаю, что впн уже подыматься на роутере не будет?!

sauron093
16-10-2009, 15:49
я так понимаю, что впн уже подыматься на роутере не будет?!

нет, впн никаких не надо.

компов у провайдера 2 не очень дофига? а то дир их не обслужит всех :-)

Power
16-10-2009, 18:42
Вам должно помочь действие NETMAP (в обе стороны, на какую-нибудь /8 сеть, наример, 11.0.0.0/8) из iptables - см. ман по iptables (http://linux.die.net/man/8/iptables). И мне кажется, лучше делать это на самом сервере, ведь там полноценный линукс.

jiv
16-10-2009, 20:31
Вам должно помочь действие NETMAP (в обе стороны, на какую-нибудь /8 сеть, наример, 11.0.0.0/8) из iptables - см. ман по iptables (http://linux.die.net/man/8/iptables). И мне кажется, лучше делать это на самом сервере, ведь там полноценный линукс.

iptables -t nat -A PREROUTING -p udp -d 10.10.17.96 --dport 27015 -j DNAT --to-destination 192.168.1.164:27015

iptables -t nat -A PREROUTING -p tcp -d 10.10.17.96 --dport 27015 -j DNAT --to-destination 192.168.1.164:27015

iptables -t nat -A POSTROUTING -p udp -d 192.168.1.164 --dport 27015 -j SNAT --to-source 10.10.17.96

iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.164 --dport 27015 -j SNAT --to-source 10.10.17.96

вот сматри, что прописал на роутере и что получилось.(все подключено как на схеме)
10.10.17.96 это айпи на ван порту(апи присваевается роутеру от второго провайдера)
192.168.1.164 это айпи сервера с ubuntu, получаемый от роутера
27015 это порт сервера КС

получается я пробрасываю пользователей по этому порту в обе стороны
и теперь у всех пользователий которые приходят от второго провайдера айпишник самого роутера 10.10.17.96

впринципе получилось, но хотелось бы присвоить какойнить другой апи для пользователей, не из 10.0.0.0/8 сети.
или чтоб каждому пользователю выдавлись разный айпи.
подскажите поточнее, я так понимаю вы в этом шарите!)

net_net
22-10-2009, 20:05
похоже можно использовать iptables mangle, тут где-то описывалось как менять ttl с помощью в пакетах iptables mangle, сам не силен в iptables ;-(