Здравствуйте!
Собственно сабж. Подробности:
есть роутер с дыумя интерфейсами: WAN1 и WAN2. На WAN2 (W2) поднята локалка от второго прова (статик IP, vlan1), прописан маршрут. Проверил - пакеты ходят во вторую сеть (tracert сеть 2го прова), но интернет по дефолту настроен на основного прова (WAN1, PPPoE) и соответственно, все ходят через него, а там канал не очень широкий (в домашке 3 компа и сервак). Мне нужно завернуть трафик с определенных машин моей локалки (по IP адресу) через W2, а также (если это возможно) по определенным портам оставить на основном WAN (W1) - это нужно для доступа некоторые ресурсы провайдеров.
Это вообще реально сделать? В интернете нарыл интересные моменты через маркировку пакетов, но не знаю как это реализовать.
буду очень благодарен за помощь
Нужна помощь по IPTABLES (перенаправление трафика на другой gateway)
именно через маркировку. Щас нет возможности выложить.
Но суть такова что создаете таблицы rt_tables и метите пакеты в forward.
почти точто вам надо.
http://sys.net.ru/docs/tri-provajdera-i-servera-vnutri-seti/
почти точто вам надо.
http://sys.net.ru/docs/tri-provajdera-i-servera-vnutri-seti/
я видел похожие правила на других форумах, но это почти не то что мне надо ибо фраза
Все, теперь наш веб и почтовый сервер будет доступен по всем внешним портам
меня вполне не устраивает! Мне не надо открывать порты снаружи во внутреннюю сеть, а просто перенаправить трафик (желательно любой) с 2х компов внутренней сети на другой шлюз внутри роутера (то есть в интернет).
Я в сабже не силен (по мне так это вообще язык программирования, который не осилишь за неделю) и поэтому прошу помощи тех кто с этим разобрался.
Немного упрощу задачу так как за второй интернет уплачено на 3 месяца вперед, но не юзается. Пойдем от простого к сложному:
- нужно с 2х компов сети (по IP) завернуть весь трафик на WAN2, то есть чтоб эти 2 компа ходили через второго прова в интернет. При этом дефолтным шлюзом будет адрес WAN1 (первого прова).
- нужен скрипт/команда возвращающая трафик в дефолтный шлюз. Нужно это для того чтоб быстро вручную сбросить настройки в дефолт при проблемах у второго прова.
- уже по возможности можно будет разбираться с трафиком по портам
мммм. Смотрим.
Берём выше изложенную статью за основу.
Создаем в файле /etc/iproute2/rt_tables записи на таблицу на одного провайдера:
echo 122 prov_2 >> /etc/iproute2/rt_tablesДобавляем в iproute маршруты по провайдерам:
ip route add default via 62.62.62.61 table prov_2
ip rule add fwmark 2 table prov_2
62.62.62.61 - тут ваш гетвей от второго прова!
Теперь добавляем правила для маршрутизации по источнику
ip rule add from 128.128.128.2 table prov_2тут айпи адрес вашего клиента из сети 128.128.128.2
ip route flush cache Чистим кеш.
Для правильной обратной связи
iptables -t mangle -N PROV
iptables -t mangle -A PROV -i eth1 -j CONNMARK --set-mark 2
iptables -t mangle -A PREROUTING -i eth2 -m state --state ESTABLISHED -j CONNMARK --restore-mark
iptables -t mangle -A FORWARD -i eth1 -m state --state NEW -j PROV
eth1 эт сетевая второго прова.
Всё как то так. Но камни будут обязательно.
Спасибо тебе добрый человек!
Фактически заработало слету: tracert с клиентской машины показал проход через новый шлюз, www.speedtest.net - увеличение скорости в 4 раза. При этом сервак остался на старом интернете.
Теперь бы узнать команду возвращающую настройки на дефолтный шлюз.
PS.: Отписался в личку - есть еще несколько вопросов касающейся этой темы
Спасибо тебе добрый человек!
Фактически заработало слету: tracert с клиентской машины показал проход через новый шлюз, www.speedtest.net - увеличение скорости в 4 раза. При этом сервак остался на старом интернете.
Теперь бы узнать команду возвращающую настройки на дефолтный шлюз.
PS.: Отписался в личку - есть еще несколько вопросов касающейся этой темы
щас погоди покумекаю как лучше)
напомни чуть позже в личку.
Надо будет источник указывать не через
ip rule add from 128.128.128.2 table prov_2а в FORWARD так будет проще.
вместо
ip rule add from 128.128.128.2 table prov_2вот это
iptables -t mangle -I PREROUTING -s 128.128.128.2 -j MARK --set-mark 2Остальное всё тоже самое. Проверьте для начало это.
Для более точно решения нужна ещё информация.
Какая инфа нужна? Применение переменнх не катит? - тут я уж сам подставлю нужные значения или объявлю их в качеств переменных, чтоб не писать по много раз.
А вариант через удаление маршрутов (ip rule del... ) и очистки кеша не прокатит? то есть там будет больше 2-3 строк?
может сработает так
ip rule del from 128.128.128.2 table prov_2