Перейти к содержанию

забавные задачки


Mr.Pig

Рекомендуемые сообщения

Друзья, давайте как в шахматах баловаться задачками типа "Мат в 1-2-3 хода".

 

Задачка №1

 

Есть линукс-хост, на нём сетевой интерфейс eth0 настроен

 

адрес 192.168.0.77

маска 255.255.255.0

шлюз 192.168.0.1

 

Очевидно, что в свою подсеть 192.168.0.х он посылает пакеты прямо,

а во все остальные через шлюз 192.168.0.1

 

Задача - как настроить, чтобы он и на соседние адреса своей же подсети слал пакеты через шлюз.

Придумайте несколько разных решений.

 

Решения должны быть короткие, простые, элегантные.

 

Не надо писать типа "а я пропишу маршруты до всех остальных адресов руками

ip ro add 192.168.0.2 via 192.168.0.1

ip ro add 192.168.0.3 via 192.168.0.1

...

ip ro add 192.168.0.76 via 192.168.0.1

ip ro add 192.168.0.78 via 192.168.0.1

ip ro add 192.168.0.79 via 192.168.0.1

...

ip ro add 192.168.0.254 via 192.168.0.1"

 

 

 

Ссылка на комментарий
Поделиться на другие сайты

Ты молодец! Хорошая задачка. А я хотел сначала сюда тройной интеграл написать - чтобы ты простое решение нашел - да потом не стал. Пожалел

Ссылка на комментарий
Поделиться на другие сайты

Задачка №1 решение №1

 

создаём дополнительную таблицу маршрутизации,

делаем однократно:

 

echo 300 routing2 >> /etc/iproute2/rt_tables

 

теперь в автозагрузку (типа в /etc/rc.local) засовываем

 

ip rule add from 192.168.0.77 table routing2
ip route add default via 192.168.0.1 table routing2

 

Как это работает - в Линуксе дополнительные таблицы изначально пусты,

в них не попадают даже directly connected интерфейсы,

а значит всё что исходит с 192.168.0.77 будет уходить на шлюз 192.168.0.1

 

 

Задачка №1 решение №2

 

Решение идиотическое, но...хехе.  Узнаём какой mac-адрес у роутера 192.168.0.1

и пишем правило arptables, которое у всех исходящих пакетов меняет mac-адрес

назначения на этот mac.

Ссылка на комментарий
Поделиться на другие сайты

Свин, Первое решение, это тоже самое что 

 

Не надо писать типа "а я пропишу маршруты до всех остальных адресов руками

ip ro add 192.168.0.2 via 192.168.0.1

Ссылка на комментарий
Поделиться на другие сайты

Ну как же то же самое ?

Одно дело так:

 

ip rule add from 192.168.0.77 table routing2
ip route add default via 192.168.0.1 table routing2

 

Другое дело - 252 маршрута руками ?

Ссылка на комментарий
Поделиться на другие сайты

Задачка №2

 

Есть очень древний свич 3COM. На нём WEB-морда.

Там есть настройка IP для этой морды - адрес, маска, шлюз.

Шлюз не прописан. Отсюда очевидно морда должна отвечать

только в свою подсеть. Однакоже она прекрасно отвечает и в другие подсети,

если к ней обращаются из других.

Как это может быть - шлюза не знает, а всё прекрасно шлюзует !

Ваши предположения - почему это так ?

Ссылка на комментарий
Поделиться на другие сайты

Задачка №1 решение №1

 

создаём дополнительную таблицу маршрутизации,

делаем однократно:

 

echo 300 routing2 >> /etc/iproute2/rt_tables

 

теперь в автозагрузку (типа в /etc/rc.local) засовываем

 

ip rule add from 192.168.0.77 table routing2

ip route add default via 192.168.0.1 table routing2

 

Как это работает - в Линуксе дополнительные таблицы изначально пусты,

в них не попадают даже directly connected интерфейсы,

а значит всё что исходит с 192.168.0.77 будет уходить на шлюз 192.168.0.1

 

можно и не создавать доп таблиц

 

route del -net 192.168.0.0/24 dev eth0

route add -host 192.168.0.1 dev eth0

route add -net 192.168.0.0/24 gw 192.168.0.1

 

а если 192.168.0.1 является шлюзом по умолчанию то достаточно

 

route del -net 192.168.0.0/24 dev eth0

Задачка №2

 

Есть очень древний свич 3COM. На нём WEB-морда.

Там есть настройка IP для этой морды - адрес, маска, шлюз.

Шлюз не прописан. Отсюда очевидно морда должна отвечать

только в свою подсеть. Однакоже она прекрасно отвечает и в другие подсети,

если к ней обращаются из других.

Как это может быть - шлюза не знает, а всё прекрасно шлюзует !

Ваши предположения - почему это так ?

на шлюзе в ее подсети включен proxy arp

Ссылка на комментарий
Поделиться на другие сайты

Заархивировано

Эта тема находится в архиве и закрыта для дальнейших ответов.

×
×
  • Создать...