Мне нужно маршрутизировать многоадресные потоки в моей частной сети. Я использую pimd для многоадресной маршрутизации. Многоадресная маршрутизация не работала, пока я не поставил altnet <multicast_source_ip> masklen 24
в файл pimd.conf. Проблема в том, что я не всегда знаю, что <multicast_source_ip>
.
Я все еще не понимаю, что делает директива altnet? Согласно файлу pimd.conf:
# If you want to add "alternative (sub)net" to a physical interface,
# e.g., if you want to make incoming traffic with a non-local source address
# to appear as it is coming from a local subnet, then use the command:
# phyint <local-addr | ifname> altnet <net-addr> masklen <len>
# XXX: if you use this command, make sure you know what you are doing!!
И как я могу решить эту проблему без <multicast_source_ip>
с помощью?
Директива altnet для phyint указывает альтернативную подсеть для данного восходящего интерфейса.
Допустим, вы хотите выполнить маршрутизацию от iface eth0 к eth1, подсеть на eth0 - 192.168.1.0/24, а eth1 - 10.0.0.0/24. Однако даже если источник многоадресной рассылки находится в локальной сети, к которой подключен eth0, он работает в подсети 172.12.0.0/24. Добавление altnet 172.12.0.0/24 в конфигурацию eth0 phyint заставляет pimd принимать трафик как исходящий локально.
Я добавил следующий новый абзац на страницу руководства по проекту на GitHub:
altnet network / len: Альтернативный хост (ы) / сеть (ы) для принятия в качестве локально подключенных источников многоадресной рассылки на данном интерфейсе. Если phyint присоединен к нескольким IP-подсетям, опишите каждую дополнительную подсеть ключевым словом altnet.
Обычно вам не нужна эта опция, поэтому мне немного интересны ваши настройки. Вы включили переадресацию IP в sysctl.conf или подобном?