Страница 1 из 1

Простейшая маршрутизация.

Добавлено: 02 авг 2018, 17:22
Alex_Zlobin
Господа, нужна помощь, в простейшем вопросе :)
Имеем:
Два 2 компьютера (PC1 и PC2), между ними 2 роутера CCR1016-12G (R1 и R2).
Подключение:
Изображение

Задача: пакеты с РС1 должны добегать до РС2.

Конфиг R1:
 
[admin@MikroTik] > export
# jan/02/1970 00:07:42 by RouterOS 6.42.6
# software id = X0GG-ULLF
#
# model = CCR1016-12G
# serial number = xxxxxxxxxxxxxx
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip address
add address=192.168.21.4/24 interface=ether1 network=192.168.21.0
add address=192.168.20.4/24 interface=ether4 network=192.168.20.0
/ip firewall filter
add action=accept chain=forward
add action=accept chain=input
add action=accept chain=output
/ip route
add distance=1 dst-address=192.168.30.0/24 gateway=ether1
add distance=1 dst-address=192.168.31.0/24 gateway=ether1
/system routerboard settings
set silent-boot=no
[admin@MikroTik] >
Конфиг R2:
 
[admin@MikroTik] > export
# jan/02/1970 00:31:12 by RouterOS 6.42.6
# software id = VDZF-PWQS
#
# model = CCR1016-12G
# serial number = xxxxxxxxxx
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip address
add address=192.168.31.4/24 interface=ether1 network=192.168.31.0
add address=192.168.30.4/24 interface=ether4 network=192.168.30.0
/ip firewall filter
add action=accept chain=forward
add action=accept chain=input
add action=accept chain=output
/ip route
add distance=1 dst-address=192.168.20.0/24 gateway=ether1
add distance=1 dst-address=192.168.21.0/24 gateway=ether1
/system routerboard settings
set silent-boot=no
[admin@MikroTik] >
И вот что в итоге имеем:
Делаем пинг с R2 на R1:
 
[admin@MikroTik] > ping address=192.168.21.4 src-address=192.168.31.4 count=3
SEQ HOST SIZE TTL TIME STATUS
0 192.168.21.4 56 64 0ms
1 192.168.21.4 56 64 0ms
2 192.168.21.4 56 64 0ms
sent=3 received=3 packet-loss=0% min-rtt=0ms avg-rtt=0ms max-rtt=0ms

[admin@MikroTik] > ping address=192.168.20.4 src-address=192.168.31.4 count=3
SEQ HOST SIZE TTL TIME STATUS
0 192.168.20.4 timeout
1 192.168.20.4 timeout
2 192.168.20.4 timeout
sent=3 received=0 packet-loss=100%
Ну и, ессна, пинги между РС не ходят.
Маскарадинг не нужен, нужно именно "провести" пакет от РС до РС.
Подскажите, где я олень, как правильно настроить маршрутизацию между сетями.

Re: Простейшая маршрутизация.

Добавлено: 02 авг 2018, 18:33
KARaS'b
На ether01 обоим устройств повесьте адреса которые будут доступны им обоим, а не как у вас сейчас. Т.е. или у них обоих там 21 подсеть, или 31, но у обоих.

Re: Простейшая маршрутизация.

Добавлено: 02 авг 2018, 20:45
Alex_Zlobin
Прошу простить мое сетевое невежество, но с адресами из разных подсетей на ether1 портах оно не будет работать в принципе или просто "проще" использовать доступные для обоих устройств и не заморачиваться? Сейчас же пакет от 31.4 до 21.4 доходит нормально, он дальше не идет.

Re: Простейшая маршрутизация.

Добавлено: 02 авг 2018, 22:46
KARaS'b
Я не знаю, что у вас дальше и куда ведут ether01 в обоих устройствах, но есть подозрения, что пакет идет, но не к той железке о которой думаете вы. Сделайте трасировку и наверняка увидите то, о чем я говорю, ваш пинг улетает к провайдеру, а уже там где-то находит нужный адрес который вам и отвечает но это вовсе не ваше второе устройство.
А по поводу вопроса - это не мне (вам) так удобней, это азы. Как по вашему устройства узнают друг о друге, если они находятся в разных подсетях? Правильно, никак, а точнее все, что они не могут распознать при помощи маршрутов имеющихся на них самих, они будут запрашивать у шлюза и им будет совершенно наплевать что вы их соединили каким-то там проводом, потому что провод это физика, а вы от них требуете логику.
Поэтому вам нужно сделать так, что бы эти устройства могли общаться а поскольку вы используете так же и 20 и 30 подсеть, то выкрутиться 20 маской у вас не получится и вариантов всего один - Берет одну подсеть с маской 24 (или даже меньше) и выдаете по адресу каждому из устройств, как я уже предлагал и все у вас заработает. Только маршруты подправьте, вместо интерфейса указывайте конкретный адрес противоположно устройства, т.к. интерфейс можно указывать только при использовании тоннеля, а в вашем случае не тоннель, а обычный l2 уровень.

Re: Простейшая маршрутизация.

Добавлено: 02 авг 2018, 23:39
Alex_Zlobin
KARaS'b писал(а): 02 авг 2018, 22:46 Я не знаю, что у вас дальше и куда ведут ether01 в обоих устройствах, но есть подозрения, что пакет идет, но не к той железке о которой думаете вы. Сделайте трасировку и наверняка увидите то, о чем я говорю, ваш пинг улетает к провайдеру, а уже там где-то находит нужный адрес который вам и отвечает но это вовсе не ваше второе устройство.
Это 2 роутера и 2 ноута, стоящие на столе. ether1 соединены между собой, два ether4 каждый к своему ноуту (как на схеме). т.е. отвечает на пинг точно ether1 "соседа".
KARaS'b писал(а): 02 авг 2018, 22:46Как по вашему устройства узнают друг о друге, если они находятся в разных подсетях?
Так а маршруты, разве, не для этого и нужны? Чтобы сказать "где искать" нужную подсеть.

Re: Простейшая маршрутизация.

Добавлено: 03 авг 2018, 00:04
KARaS'b
В таком случае на ноутах тоже должны быть или маршруты до противопложной сети, или маршрут 0.0.0.0/0 ведущий на рядом стоящий микротик, или попросту микротик должен быть шлюзом для всего для ноута и так в обоих случаях (что у вас и сделано, если верить картинке).
Но в любом случае, то, как вы сделали сейчас работать не должно. Почему в ваших условиях получается хоть что-то мне странно, но я тоже далеко не гуру сетей и скорее всего этому есть какое-то объяснение, о котором мы с вами просто не знаем.

Re: Простейшая маршрутизация.

Добавлено: 03 авг 2018, 00:11
KARaS'b
З.Ы. Насколько я могу понять, вы уверенны, что при указании в маршруте, на стороне микротика в качестве "ответчика" интерфейс, куда воткнут второй микротик, маршрутизация должна отработать, но это не так, не знаю как в остальных железках, но в микротике такое прокатывает, только если этот интерфейс, это тоннель, в вашем же случае это не тоннель, поэтому нужно указывать конкретный адрес, но даже сделав это у вас ничего не получится, потому что на интерфейсах ether01 маски у вас 24, а это значит, что ваши устройства не могут друг до друга достучаться, им не позволяет это сделать маска. Поэтому сделайте уже так, как я написал в самом первом ответе и у вас все получится. Либо есть вариант еще костыльней, но для вашего случая он не подойдет - расширить маску до 20й, но тогда у вас "отвалятся" ноуты, т.к. при вашей адресации эта маска перекрывает и эту адресацию.

Re: Простейшая маршрутизация.

Добавлено: 03 авг 2018, 12:51
Alex_Zlobin
Ясно.