XpaH
написал 29 января 2008 года в 08:34 (1666 просмотров)
Ведет себя
как мужчина; открыл 1 тему в форуме, оставил 3 комментария на сайте.
Здравствуйте, проблема такого рода:
Настроил на сервере VPN, люди коннектятся и каждому пользователю выдается свой PPP# (PPP2,PPP3 и так далее, IP: 192.168.1.#), люди VPN пользуются нормально и могут использовать сервисы и игры обмен трафика где идет через сервер (например Контр-страйк), но как только заходят на сервис где обмен трафика с начала через сервер идет, а затем соединяет на прямую пользователей (например Варкрафт3) тогда люди не видят друг друга…
Вообщем я думаю что это дело в IPtables, подскажите плиз что надо прописывать, чтобы можно было соеденить PPP2 и PPP3 (и так далее) между собой через VPN сервер?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Если пользователи соединяются напрямую, то причём здесь iptables на сервере? Хотяб схему сети нарисуй.
Короче:
Сервер подключен к 2м провайдерам на 2х интерфейсах, пользователи соединяются с сервером по внутренним тарифам (каждый к своему интерфейсу). Задача — дать возможность пользователям разных провайдеров играть вместе по внутренним тарифам, т.е. обмен трафика между 2мя пользователями должен осуществляться через мой сервер…
Решение я нашел в VPN, читал, что кто-то смог настроить подобную схему… так вот…
Я настроил VPN — к нему конектятся пользователи разных провайдеров и каждому выдается свой PPP# т.е. одному PPP2 (192.168.1.20) другому PPP3 (192.168.1.21)…
т.е. по сути они в одну локалку теперь должны входить, так вот эти люди могут играть в контру например (где обмен трафика в самой игре настроен так, что передается через сервер), но наша задача чтобы они пользовались сервисами (Например DC++, Warcraft3) где обмен настроен на прямую между пользователями… в нашем случае между PPP2 и PPP3, но я не могу понять как нат настроить так, чтобы PPP2 (192.168.1.20) мог пинговать PPP3 (192.168.1.21)
Ясно обрисовал? Если нет попробую проще…
Вообщем я думаю, что у меня не настроен NAT для PPP# в IPTABLES, чтобы обмен пакетами шел от PPP2 к PPP3 (по сути они же в одной сети (192.168.1.#)(я не знаю даже как это делается, поэтому и прошу помощи)
Но может и просто routemap надо настраивать как-то, но тут уже будут проблемы, так как PPP# (1-200) выдается только при подключении пользователя, а значит и роут надо будет каждый раз править (так что это не подходит, остается только iptables)
А провайдеры то в курсе, что ты такие эксперименты стравишь? ))) Смотри, отключат тебя….
по теме: разбирайся с маршрутами.
Наверное это будет что-то в духе
$iptables -t nat -A POSTROUTING -o ppp+ -j MASQUERADE
вот только не уверен, что при этом не возникнет конфликтов из-за того, если я правильно понял, что в обеих сетях одинаковый диапазон адресов
Провайдеры не против )
По поводу одинаковых диапазонов — нет.
Каждый провайдер идет через свой интерфейс (eth1 и eth2) там уже поднято PPP0 и PPP1
А вот как настроить, чтобы пользователи, которым PPP2,PPP3….PPP324(и так далее) могли пакеты передавать друг с другом через сервер…
по поводу построунигда еще не пробовал, но думаю дело не в маршрутах, по крайней мере я придумать не могу возможные вариаты роута.
На клиентах нужно добавить маршруты…
примерно так:
для win: route add -p 10.0.0.0 mask 255.0.0.0 192.168.0.1
для linux: ip r add 10.0.0.0/8 via 192.168.16.1