LINUX.ORG.RU

Сообщения Akmal

 

gпомогите разобраться с ip и iptables

Форум — Admin

Всем привет.

У нас есть три линка в интернет, я разруливаю пользователей при помощи ip и iptables, но происходят странные вещи.

Три различных ISP подключены к свичу cisco. Затем транком виланов приходят на eth0 сервера Linux (ASPLinux 12). Интерфейс eth1 смотрит в локалку.
Транк поднимается сервером на интерфейсы eth0.101, eth0.102, eth0.103

На сервере мною написан вот такой скрипт

[root@gw rc.d]# cat def_routing
#!/bin/bash
#
ip rule del table 1
ip rule del table 2
ip rule del table 3

ip route del table 1
ip route del table 2
ip route del table 3

ip route add default via xxx.xxx.xxx.xxx table 1
ip route flush cache
ip route add default via yyy.yyy.yyy.yyy table 2
ip route flush cache
ip route add default via zzz.zzz.zzz.zzz table 3
ip route flush cache

ip rule add fwmark 1 table 1
ip rule add fwmark 2 table 2
ip rule add fwmark 3 table 3

iptables -t mangle -F
iptables -t mangle -X

iptables -F
iptables -X

iptables -t nat -F
iptables -t nat -X

iptables -t mangle -N routing
iptables -t mangle -N routing_n

############################################################################### ########################

iptables -t mangle -A PREROUTING -i eth1 -j routing

############################################################################### #######################

iptables -t mangle -A routing -m state --state NEW,RELATED -j routing_n
iptables -t mangle -A routing -m connmark --mark 1 -j MARK --set-mark 1
iptables -t mangle -A routing -m connmark --mark 2 -j MARK --set-mark 2
iptables -t mangle -A routing -m connmark --mark 3 -j MARK --set-mark 3

iptables -t mangle -A routing_n -s 192.168.200.0/24 -d ! 192.168.0.0/16 -j CONNMARK --set-mark 3

iptables -t mangle -A routing_n -s 192.168.200.2/32 -d ! 192.168.0.0/16 -j CONNMARK --set-mark 1

iptables -t mangle -A routing_n -s 192.168.200.3/32 -d ! 192.168.0.0/16 -j CONNMARK --set-mark 2

iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -m mark --mark 1 -o eth0.101 -j SNAT --to-source xxx.xxx.xxx.xxx

iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -m mark --mark 2 -o eth0.102 -j SNAT --to-source yyy.yyy.yyy.yyy

iptables -t nat -A POSTROUTING -s 192.168.200.0/24 -m mark --mark 3 -o eth0.103 -j SNAT --to-source zzz.zzz.zzz.zzz

Скрипт прописан для запуска в rc.local

Так вот в чем странность - после перезагрузки сервера все работает на УРА.
Я на своей машине (192.168.200.2) внутри локалки запускаю tracert www.ru -d, все бежит так как должно и я вижу что пакеты бегут через ISP1, точно такоеже действие на машине (192.168.200.3) показывает похождение пакетов через ISP2, у всех остальных в локалке прохождение через ISP3.
Теперь я правлю свой скрипт в строке
iptables -t mangle -A routing_n -s 192.168.200.2/32 -d ! 192.168.0.0/16 -j CONNMARK --set-mark 2
запускаю скрипт и проверяю на своей машине - tracert www.ru -d, но почемуто трасерт показывает, что я опять иду через ISP1.
Делаю перезагрузку сервера и все встает на свои места - трасерт показывает что я иду через ISP2.

Может у меня в скрипте что-то не так.
Подскажите.

>>>

Akmal
()

Что это такое libdns_sd.so.1

Форум — Admin

Всем добрый день.
У меня на сервере установлен ASPLinux12. Решил установить пакет с диска ntpd, но при попытке запустить команду
rpm -ivh ntp-4.2.4p2-3.0.120asp.i386.rpm
выдает ошибку -
ошибка: Неудовлетворенные зависимости:
libdns_sd.so.1 нужен для ntp-4.2.4p2-3.0.120asp.i386

Что это за библиотека libdns_sd.so.1 и где ее можно взять.

Подскажите.
Спасибо.

>>>

Akmal
()

как пробросить порт на www-server

Форум — Admin

Не могу пробросить порт на внутренний сервер www.
Структура сети:

server Linux
trank vlan |---|
--------------->| |
| |-----+---->192.168.200.0/24
|---| |
+--->192.168.200.100/32(www server)


Из мира по транку виланов приходят три вилана от трех различных Интернет провайдеров. Три разных провайдера дают свой IP для выхода в интернет.
Есть внутренняя сеть 192.168.200.0/24 и во внутренней сети стоит сервер WWW (192.168.200.100/32).
На Linux настроен iproute2 на 3 маршрута по умолчанию, также настроен iptables для маркировки пакетов клиентов для выхода в интернет (к примеру: пакеты моей машины маркируються 2 и идут в инет через второй вилан). Как сделать так чтобы любой запрос к 80 порту к Linux server пробрасывался на машину 192.168.200.100.



>>>

Akmal
()

SQUID

Форум — General

Люди помогите, можноли средствами squid ограничить трафик internet для каждого ip, допустим чтобы ip 192.168.5.100 мог получить из интернета не больше 1 Гб.

Akmal
()

RSS подписка на новые темы