URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 89966
[ Назад ]

Исходное сообщение
"Помогите с простой маршрутизацией"

Отправлено bacek , 05-Окт-10 13:42 
Здравствуйте, помогите кто чем может, пожалуйста.
Вопрос думаю не сложный.

Имеется небольшая сеть (1) 192.168.1.0 с выходом в интернет через линуксовский шлюз.
Шлюз (1) в сети eth0 192.168.1.4 Fedora13.
Внешний ip      eth1 100.100.100.100
Gateway 100.100.100.101
Все работает, интернет у пользователей есть.

Необходимо организовать компьютерный класс с сетью (2), например, 192.168.2.0 с выходом в интернет через сеть (1).

                 ------------------------------
                 - Fedora13 (1)               -
                 - eth1 100.100.100.100 (ext) -
                 - eth0 192.168.1.4 (int)     -
                 ------------------------------
                        -
                        -
                 -----------------------
                 - Сеть 192.168.1.0    -
                 -----------------------
                        -
                 ----------------------------
                 - Fedora13 (2)             -
                 - eth1 192.168.1.180 (ext) -
                 - eth0 192.168.2.4 (int)   -
                 ----------------------------
                        -                    
                        -
                 -----------------------
                 - Сеть 192.168.2.0    -
                 -----------------------


Заводим еще один сервер (2) Fedora13.
IP шлюза eth0 (внешний, из первой сети) (2) 192.168.1.180
Ip сетевой карты eth1 внутренней сети (класса) 192.168.2.4
В качестве Gateway указываем уже первый шлюз (?) 192.168.1.4
Включаем пересылку пакетов, nat, маскарадинг.

На машине внутри этой новой сети (например, 192.168.2.10) делаем пинг:

ping 192.168.2.4 ---- OK (сетевая карта Fedora13(2) "внутрь" сети 192.168.2.0)
ping 192.168.1.180 ---- OK (сетевая карта Fedora13(2) "наружу" в сеть 192.168.1.0)
ping 192.168.1.4 ---- превышен интервал ожидания.

То есть сеть 192.168.2.0 не видит 192.168.1.0

На шлюзе (2)
> route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     1      0        0 eth0
192.168.2.0     *               255.255.255.0   U     1      0        0 eth1
default         192.168.1.4     0.0.0.0         UG    0      0        0 eth0

Подозреваю что дело в маршрутизации.
Что можно сделать, чтобы сеть 192.168.2.0 видела сеть 192.168.1.0?


Содержание

Сообщения в этом обсуждении
"Помогите с простой маршрутизацией"
Отправлено shadow_alone , 05-Окт-10 14:36 
на первом шлюзе (192.168.1.4)
ip ro add 192.168.2.0/24 via 192.168.1.180
и на шлюзах включите форвард для обоих сетей и отключите нат для этих сетей друг в друга.

"Помогите с простой маршрутизацией"
Отправлено bacek , 06-Окт-10 07:46 
> на первом шлюзе (192.168.1.4)
> ip ro add 192.168.2.0/24 via 192.168.1.180
> и на шлюзах включите форвард для обоих сетей и отключите нат для
> этих сетей друг в друга.

О спасибо!!!
Вот это то что надо было. Я почему-то думал что маршутизацию на первом шлюзе не надо было править.


"Помогите с простой маршрутизацией"
Отправлено Square , 06-Окт-10 19:34 
>> на первом шлюзе (192.168.1.4)
>> ip ro add 192.168.2.0/24 via 192.168.1.180
>> и на шлюзах включите форвард для обоих сетей и отключите нат для
>> этих сетей друг в друга.
> О спасибо!!!
> Вот это то что надо было. Я почему-то думал что маршутизацию на
> первом шлюзе не надо было править.

Если на втором шлюзе использовался НАТ- то маршрутизацию трогать на первом шлюзе не надо.
Поскольку первый шлюз ничего не знает, и никогда не узнает о существовании сети 192.168.2.0/24.


"Помогите с простой маршрутизацией"
Отправлено Кирилл_Н , 05-Окт-10 14:37 
> Заводим еще один сервер (2) Fedora13.
> IP шлюза eth0 (внешний, из первой сети) (2) 192.168.1.180
> Ip сетевой карты eth1 внутренней сети (класса) 192.168.2.4
> В качестве Gateway указываем уже первый шлюз (?) 192.168.1.4
> Включаем пересылку пакетов, nat, маскарадинг.

Зачем? Достаточно было б добавить сетевую в первый шлюз и немного дописать правила фаервола

> На машине внутри этой новой сети (например, 192.168.2.10) делаем пинг:
> ping 192.168.2.4 ---- OK (сетевая карта Fedora13(2) "внутрь" сети 192.168.2.0)
> ping 192.168.1.180 ---- OK (сетевая карта Fedora13(2) "наружу" в сеть 192.168.1.0)
> ping 192.168.1.4 ---- превышен интервал ожидания.
> Подозреваю что дело в маршрутизации.
> Что можно сделать, чтобы сеть 192.168.2.0 видела сеть 192.168.1.0?

А как у вас настроен нат на втором шлюзе? пришлите правила фаервола со второго шлюза


"Помогите с простой маршрутизацией"
Отправлено bacek , 06-Окт-10 07:34 
> Зачем? Достаточно было б добавить сетевую в первый шлюз и немного дописать
> правила фаервола

Потому что первый шлюз не надо трогать. Пользователи должны "ставить эксперименты" на втором шлюзе.

> А как у вас настроен нат на втором шлюзе? пришлите правила фаервола
> со второго шлюза

Правила iptables второго шлюза.

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT
*filter
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -p tcp -m state -m tcp --dport 10000 --state NEW -j ACCEPT
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -i eth1 -j ACCEPT
-A FORWARD -o eth1 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A OUTPUT -p icmp -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A OUTPUT -o eth1 -j ACCEPT
COMMIT
# Generated by webmin
*mangle
:FORWARD ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed


Содержимое sysctl.conf

kernel.sysrq=0
net.ipv4.ip_forward=1
net.ipv4.conf.default.accept_source_route=0
net.ipv4.conf.default.rp_filter=1
kernel.core_uses_pid=1


"Помогите с простой маршрутизацией"
Отправлено Square , 05-Окт-10 16:19 

> Заводим еще один сервер (2) Fedora13.
> IP шлюза eth0 (внешний, из первой сети) (2) 192.168.1.180
> Ip сетевой карты eth1 внутренней сети (класса) 192.168.2.4
> В качестве Gateway указываем уже первый шлюз (?) 192.168.1.4
> Включаем пересылку пакетов, nat, маскарадинг.
> На машине внутри этой новой сети (например, 192.168.2.10) делаем пинг:
> ping 192.168.2.4 ---- OK (сетевая карта Fedora13(2) "внутрь" сети 192.168.2.0)
> ping 192.168.1.180 ---- OK (сетевая карта Fedora13(2) "наружу" в сеть 192.168.1.0)
> ping 192.168.1.4 ---- превышен интервал ожидания.

пересылка пакетов не работает. Вы ее все таки не включили.
И маршрутизация тут не-при-чем :)