несколько каналов (разделения запросов по нескольким каналам.)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

pahan40
Сообщения: 40

несколько каналов

Сообщение pahan40 »

Есть сервер с тремя сетёвками. " из этих сетевки смотрят в интернет с айпишниками например
1.1.1.2 через шлюз 1.1.1.1 и вторая сетевка с адресом 2.2.2.2 должна ходить в инет через шлюз 2.2.2.1
и есть третья сетевка, которая смотрит в локалку с адресом 3.3.3.3 . Для того чтобы в инетренет сетевки ходили через разные шлюзы прописаны вот такие правила

Код: Выделить всё

/sbin/ip rule add from 1.1.1.0/24 to 0/0 table 102 pref 100
/sbin/ip route add table 102 via 1.1.1.1
/sbin/ip rule add from 2.2.2.2/29 to 0/0 table 103 pref 100
/sbin/ip route add table 103 via 2.2.2.1

так вроде всё работает отлично, но вот 3 сетевка почему то не может установить не одного tcp или udp соединения с любой машиной в локалке. То есть пинги проходят трассировки и прочая ерунда. а при попытке например подконнектиццо по ссш или подключиться к удалённому mysql серверу не получается. То есть попытка открыть соединение есть, а соединение не открывается. В чём проблема понять не могу,
Вот правила и таблицы маршрутизации

Код: Выделить всё

etc]# ip rule list
0:      from all lookup 255
100:    from 1.1.1.0/24 lookup 102
100:    from 2.2.2.40/29 lookup 103
32766:  from all lookup main
32767:  from all lookup default

Код: Выделить всё

[etc]# ip route show
2.2.2.40/29 dev eth2  proto kernel  scope link  src 2.2.2.2
3.3.3.0/24 dev eth1  proto kernel  scope link  src 3.3.3.3
1.1.1.0/24 dev eth0  proto kernel  scope link  src 1.1.1.2
default via 1.1.1.1 dev eth0

вот пинги

Код: Выделить всё

PING 3.3.3.5 (3.3.3.5) 56(84) bytes of data.
64 bytes from 3.3.3.5: icmp_seq=1 ttl=64 time=3.36 ms
64 bytes from 3.3.3.5: icmp_seq=2 ttl=64 time=0.154 ms
64 bytes from 3.3.3.5: icmp_seq=3 ttl=64 time=0.159 ms

--- 3.3.3.5 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.154/1.225/3.362/1.511 ms

Помогите пожалуйста уже всю голову себе сломал....
Спасибо сказали:
skor
Сообщения: 419
ОС: RTFM-OS v127.0.0.1

Re: несколько каналов

Сообщение skor »

pahan40 писал(а):
01.11.2008 16:07

Код: Выделить всё

PING 3.3.3.5 (3.3.3.5) 56(84) bytes of data.
64 bytes from 3.3.3.5: icmp_seq=1 ttl=64 time=3.36 ms
64 bytes from 3.3.3.5: icmp_seq=2 ttl=64 time=0.154 ms
64 bytes from 3.3.3.5: icmp_seq=3 ttl=64 time=0.159 ms

--- 3.3.3.5 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.154/1.225/3.362/1.511 ms
Это пинг с самого сервера?
ИМХО: запрос из сети 3.3.3.0 (3.3.3.5) проходит через сервер в сеть 1.1.1.0 (1.1.1.5). Машина (1.1.1.5) отвечает на запрос, ответ попадает на сервер и по ip rule from 1.1.1.0/24 lookup 102 уходит в сторону 1.1.1.1, а не в строну 3.3.3.5 (ведь похоже что таблица 102 ничего не знает о сети 3.3.3.0/24)

Или добавить
ip rule add from 1.1.1.0/24 to 3.3.3.0/24 table default
(повторить для всех вариантов сетей)
или в таблицы 102, 103 добавь маршруты на сеть 3.3.3.0/24
Спасибо сказали:
pahan40
Сообщения: 40

Re: несколько каналов

Сообщение pahan40 »

skor писал(а):
02.11.2008 15:16
pahan40 писал(а):
01.11.2008 16:07

Код: Выделить всё

PING 3.3.3.5 (3.3.3.5) 56(84) bytes of data.
64 bytes from 3.3.3.5: icmp_seq=1 ttl=64 time=3.36 ms
64 bytes from 3.3.3.5: icmp_seq=2 ttl=64 time=0.154 ms
64 bytes from 3.3.3.5: icmp_seq=3 ttl=64 time=0.159 ms

--- 3.3.3.5 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.154/1.225/3.362/1.511 ms
Это пинг с самого сервера?
ИМХО: запрос из сети 3.3.3.0 (3.3.3.5) проходит через сервер в сеть 1.1.1.0 (1.1.1.5). Машина (1.1.1.5) отвечает на запрос, ответ попадает на сервер и по ip rule from 1.1.1.0/24 lookup 102 уходит в сторону 1.1.1.1, а не в строну 3.3.3.5 (ведь похоже что таблица 102 ничего не знает о сети 3.3.3.0/24)

Или добавить
ip rule add from 1.1.1.0/24 to 3.3.3.0/24 table default
(повторить для всех вариантов сетей)
или в таблицы 102, 103 добавь маршруты на сеть 3.3.3.0/24


Сделал так

ip rule add from 1.1.1.0/24 to 3.3.3.0.24 table 104
ip rule add from 2.2.2.0/29 to 3.3.3.0/24 table 104
всё без успешно. Долго еще ковырял ip route и добавлял маршруты в таблицы. Но чёт всё бесполезно. Может еще какой вариант есть ?
Спасибо сказали:
skor
Сообщения: 419
ОС: RTFM-OS v127.0.0.1

Re: несколько каналов

Сообщение skor »

А в table 104 что?
И вообще без ip rule и тд, локальные сети видят друг-друга?
Спасибо сказали:
pahan40
Сообщения: 40

Re: несколько каналов

Сообщение pahan40 »

skor писал(а):
05.11.2008 17:46
А в table 104 что?
И вообще без ip rule и тд, локальные сети видят друг-друга?

104 таблица была пустой.
по сути делал следующее
ip rule add from 0/0 to 3.3.3.0/24 table 104
ip route add table 104 via 3.3.3.1

без iproute сети видят друг друга .

Так же пытался задать дефолтный шлюз для 3-й подсети
ip route add default 3.3.3.1 table 104

еще пытался задать для каждоый подсети чтобы пакеты уходили именно на этот интерфейс. но пока толку никакого.
Так же пытался роутить через таблицу main, тоже ничё не вышло.
Спасибо сказали:
skor
Сообщения: 419
ОС: RTFM-OS v127.0.0.1

Re: несколько каналов

Сообщение skor »

Дайте еще раз полный список интерфейсов, таблиц и правил.
Спасибо сказали:
pahan40
Сообщения: 40

Re: несколько каналов

Сообщение pahan40 »

skor писал(а):
06.11.2008 12:26
Дайте еще раз полный список интерфейсов, таблиц и правил.


Итак есть интерфейсы :
2 внешних ip которые на которых натравлены 2 веб сервера.
1.1.1.1 gw 1.1.1.2
2.2.2.2 gw 2.2.2.1
и один интерфейс через которую хотелось бы чтобы работала локалка
3.3.3.3 gw 3.3.3.1 ( хотя гейтвей здесь по сути и не нужен так как необходимо чтобы только эта подсеть работала)

вот список правил

Код: Выделить всё

[root@any ~]# ip rule show
0:      from all lookup 255
100:    from 1.1.1.0/24 lookup 102
100:    from 2.2.2.0/24 lookup 103
32766:  from all lookup main
32767:  from all lookup default

вот список роутов

Код: Выделить всё

[root@any ~]# ip route show
2.2.2.0/24 dev eth2  proto kernel  scope link  src 2.2.2.2
3.3.3.0/24 dev eth1  proto kernel  scope link  src 3.3.3.3
1.1.1.0/24 dev eth0  proto kernel  scope link  src 1.1.1.1
default via 1.1.1.2 dev eth0


вот содержание таблиц

Код: Выделить всё

[root@any ~]# ip route show table 103
default via 2.2.2.1 dev eth2
[root@any ~]# ip route show table 102
default via 1.1.1.2 dev eth0
[root@any ~]# ip route show table 104
[root@any ~]#
[root@any ~]# ip route show table main
2.2.2.0/24 dev eth2  proto kernel  scope link  src 2.2.2.2
3.3.3.0/24 dev eth1  proto kernel  scope link  src 3.3.3.3
1.1.1.0/24 dev eth0  proto kernel  scope link  src 1.1.1.1
default via 1.1.1.2 dev eth0


Вот праавила которые добавляются при старте системы

Код: Выделить всё

/sbin/ip rule add from 1.1.1.0/24 to 0/0 table 102 pref 100
/sbin/ip route add table 102 via 1.1.1.1
/sbin/ip rule add from 2.2.2.0/24 to 0/0 table 103 pref 100
/sbin/ip route add table 103 via 2.2.2.1


Вроде всё.
Спасибо сказали:
skor
Сообщения: 419
ОС: RTFM-OS v127.0.0.1

Re: несколько каналов

Сообщение skor »

Ок. Пробуем такие правила.

Код: Выделить всё

/sbin/ip rule add from 1.1.1.0/24 to 3.3.3.0/24 table main pref 90
/sbin/ip rule add from 2.2.2.0/24 to 3.3.3.0/24 table main pref 90

Еще вопрос - SNAT, DNAT, MASQUARADE в iptables не прописано? И что вообще в iptables прописано?
Спасибо сказали:
pahan40
Сообщения: 40

Re: несколько каналов

Сообщение pahan40 »

skor писал(а):
06.11.2008 18:10
Ок. Пробуем такие правила.

Код: Выделить всё

/sbin/ip rule add from 1.1.1.0/24 to 3.3.3.0/24 table main pref 90
/sbin/ip rule add from 2.2.2.0/24 to 3.3.3.0/24 table main pref 90

Еще вопрос - SNAT, DNAT, MASQUARADE в iptables не прописано? И что вообще в iptables прописано?

Не сработало
Нат вообще не используется нигде.
Спасибо сказали: