- unixforum.org
- [Решено] Маршруты после перезагрузки в ALT-Linux
- [Решено] Маршруты после перезагрузки в ALT-Linux
- Re: [Решено] Маршруты после перезагрузки в ALT-Linux
- Re: [Решено] Маршруты после перезагрузки в ALT-Linux
- Re: [Решено] Маршруты после перезагрузки в ALT-Linux
- Static Multicast Routing
- Ссылки
- Общие понятия
- Подготовка шлюза
- Конфигурация
- Настройка маршрутизации
- Проверка работы
- Настройка статической маршрутизации
- Static Multicast Routing
- Ссылки
- Общие понятия
- Подготовка шлюза
- Конфигурация
- Настройка маршрутизации
- Проверка работы
- Настройка статической маршрутизации
unixforum.org
[Решено] Маршруты после перезагрузки в ALT-Linux
[Решено] Маршруты после перезагрузки в ALT-Linux
Сообщение Equilibrium » 30.10.2008 12:56
Просьба не пинать, но при кажущейся простоте темы решения в сети не нашёл
А задача самая тривиальная: как сделать, чтобы маршрут, добавленный по route add не терялся при перезагрузке. Система ALT Linux Desktop 4.0
Прописывание в файле /etc/sysconfig/static-routes строчки any net x.x.x.x/24 gw y.y.y.y не помогло
Re: [Решено] Маршруты после перезагрузки в ALT-Linux
Сообщение Osorkon » 30.10.2008 13:37
в сусе есть набор скриптов которые запускаются при поднятии/падении интерфейса, (/etc/sysconfig/network/if-up.d и /etc/sysconfig/network/if-down.d). как в альте — хз. может так же
Re: [Решено] Маршруты после перезагрузки в ALT-Linux
Сообщение Ariasp » 30.10.2008 23:07
А задача самая тривиальная: как сделать, чтобы маршрут, добавленный по route add не терялся при перезагрузке.
самый простой вариант — прописать нужные route add в rc.local (подозреваю, что в альте существует /etc/rc.d/rc.local или что-то подобное)
Re: [Решено] Маршруты после перезагрузки в ALT-Linux
Сообщение Equilibrium » 31.10.2008 05:33
А задача самая тривиальная: как сделать, чтобы маршрут, добавленный по route add не терялся при перезагрузке.
самый простой вариант — прописать нужные route add в rc.local (подозреваю, что в альте существует /etc/rc.d/rc.local или что-то подобное)
Всё оказалось гораздо проще:
В файле /etc/net/ifaces/eth0/ipv4route (если этого файла нет — создать) прописывается на каждый маршрут строчка вида
x.x.x.x/24 via y.y.y.y
где x.x.x.x — сеть, куда нужен маршрут, y.y.y.y — адрес шлюза.
И всё.
Static Multicast Routing
Настройка статической multicast-маршрутизации на дистрибутивах ALT Linux.
Ссылки
Общие понятия
Рассмотрим типичную схему multicast-маршрутизации с выделенным сервером, имеющим два сетевых интерфейса:
- eth0 — публичный интерфейс, на который придет поток от провайдера;
- eth1 — интерфейс в локальную сеть, в которой находятся клиенты.
Multicast-маршрутизация осуществляется по протоколу IGMP. IGMP (англ. Internet Group Management Protocol — протокол управления группами Интернета) — протокол управления групповой (multicast) передачей данных в сетях, основанных на протоколе IP. В данном руководстве используется IGMP версии 1.
На шлюзе должна быть разрешена пересылка сетевых пакетов (forwarding) и запущен демон multicast-маршрутизации. Мы рекомендуем использовать в качестве такого демона igmpproxy. При этом клиенты должны явно присоединиться к MC-группе. Вы можете явно назначить multicast-маршруты без этого требования к клиентам, если используете пакет smcroute.
Примечание: интерфейсы в дистрибутивах на базе Пятой платформы будут соответственно breth0 и breth1, однако мы не рекомендуем делать на них маршрутизацию.
Подготовка шлюза
Для начала необходимо установить дистрибутив ALT Linux и пакет демон multicast-маршрутизации igmpproxy и программу настройки статических маршрутов smcroute из соответствующего репозитория:
apt-get update apt-get install igmpproxy smcroute
Также необходимы пакеты iptables net-tools iproute2, в дистрибутивах ALT Linux они присутствуют по умолчанию.
Для мониторинга можно установить пакеты tcpdump, wireshark и iperf
Все манипуляции осуществляются под правами пользователя root.
Конфигурация
Файл /etc/igmpproxy.conf:
quickleave phyint eth0 upstream ratelimit 0 threshold 1 phyint eth1 downstream ratelimit 0 threshold 1 phyint lo disabled
Для дистрибутивов на базе Пятой платформы файл /etc/igmpproxy.conf вместо eth0 и eth1 исполь-зуйте breth0 и breth1 соответственно.
Настройка маршрутизации
1. Шлюз должен быть настроен для маршрутизации сетевых пакетов:
- Находится в режиме «Шлюз» в модуле «Брандмауэр» в дистрибутивах на базе Пятой платформы;
- или настраиваем вручную: в файле /etc/net/sysctl.conf параметр net.ipv4.ip_forward должен быть установлен в «1»:
Также в файл /etc/net/sysctl.conf добавляем параметры: отключаем reverse path filtering для eth0 и для ядер 2.6.x указываем версию IGMP (igmpproxy поддерживает только IGMPv1 и IGMPv2 на внутреннем интерфейсе):
net.ipv4.conf.eth0.rp_filter=0 net.ipv4.conf.eth0.force_igmp_version=1 net.ipv4.conf.eth1.force_igmp_version=1
Примечание: после внесения изменений в этот файл необходимо перезагрузить компьютер.
2. Проверяем готовность к маршрутизации:
[root@ham1 ~]# less /proc/config.gz | grep '\(MROUTE\|MULTICAST\)' CONFIG_IP_MULTICAST=y CONFIG_IP_MROUTE=y [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/default/forwarding 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth0/rp_filter 0 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth0/force_igmp_version 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth1/force_igmp_version 1
3. Настраиваем цепочки iptables для работы со специальными multicast-подсетями:
iptables -I INPUT -d 224.0.0.0/4 -j ACCEPT iptables -I FORWARD -d 224.0.0.0/4 -j ACCEPT
route add -net 224.0.0.0/4 dev eth1
igmpproxy /etc/igmpproxy.conf
Журнал работы igmpproxy ведётся в /var/log/messages. Для отладки можно запустить командой igmpproxy -d /etc/igmpproxy.conf
Проверка работы
После запуска igmpproxy должны появится соответствующие флаги:
[root@ham1 ~]# cat /proc/sys/net/ipv4/conf/breth0/mc_forwarding 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/breth1/mc_forwarding 1
В файлах состояния ядра появятся записи:
cat /proc/net/igmp cat /proc/net/dev_mcast
Маршруты можно найти в файлах:
Виртуальные интерфейсы для маршрутизации:
Настройка статической маршрутизации
Для статической маршрутизации демон igmpproxy запускать не нужно.
smcroute -a eth0 10.1.0.18 224.2.2.2 eth1
- eth0 — входящий интерфейс для трафика
- 10.1.0.18 — адрес интерфейса-источника трафика (можно получить по команде tcpdump -i eth0 dst host 224.2.2.2)
- 224.2.2.2 — MC-группа в сети 224.0.0.0/4
- eth1 — один или несколько внешних интерфейсов
3. Присоединяем машину в MC-группу:
[root@ham1 ~]# ip mroute show (10.1.0.18, 224.2.2.2) Iif: eth0 Oifs: eth1 [root@ham1 ~]# cat /proc/net/ip_mr_cache Group Origin Iif Pkts Bytes Wrong Oifs 020202E0 1200010A 0 0 0 0 1:1
Static Multicast Routing
Настройка статической multicast-маршрутизации на дистрибутивах ALT Linux.
Ссылки
Общие понятия
Рассмотрим типичную схему multicast-маршрутизации с выделенным сервером, имеющим два сетевых интерфейса:
- eth0 — публичный интерфейс, на который придет поток от провайдера;
- eth1 — интерфейс в локальную сеть, в которой находятся клиенты.
Multicast-маршрутизация осуществляется по протоколу IGMP. IGMP (англ. Internet Group Management Protocol — протокол управления группами Интернета) — протокол управления групповой (multicast) передачей данных в сетях, основанных на протоколе IP. В данном руководстве используется IGMP версии 1.
На шлюзе должна быть разрешена пересылка сетевых пакетов (forwarding) и запущен демон multicast-маршрутизации. Мы рекомендуем использовать в качестве такого демона igmpproxy. При этом клиенты должны явно присоединиться к MC-группе. Вы можете явно назначить multicast-маршруты без этого требования к клиентам, если используете пакет smcroute.
Примечание: интерфейсы в дистрибутивах на базе Пятой платформы будут соответственно breth0 и breth1, однако мы не рекомендуем делать на них маршрутизацию.
Подготовка шлюза
Для начала необходимо установить дистрибутив ALT Linux и пакет демон multicast-маршрутизации igmpproxy и программу настройки статических маршрутов smcroute из соответствующего репозитория:
apt-get update apt-get install igmpproxy smcroute
Также необходимы пакеты iptables net-tools iproute2, в дистрибутивах ALT Linux они присутствуют по умолчанию.
Для мониторинга можно установить пакеты tcpdump, wireshark и iperf
Все манипуляции осуществляются под правами пользователя root.
Конфигурация
Файл /etc/igmpproxy.conf:
quickleave phyint eth0 upstream ratelimit 0 threshold 1 phyint eth1 downstream ratelimit 0 threshold 1 phyint lo disabled
Для дистрибутивов на базе Пятой платформы файл /etc/igmpproxy.conf вместо eth0 и eth1 исполь-зуйте breth0 и breth1 соответственно.
Настройка маршрутизации
1. Шлюз должен быть настроен для маршрутизации сетевых пакетов:
- Находится в режиме «Шлюз» в модуле «Брандмауэр» в дистрибутивах на базе Пятой платформы;
- или настраиваем вручную: в файле /etc/net/sysctl.conf параметр net.ipv4.ip_forward должен быть установлен в «1»:
Также в файл /etc/net/sysctl.conf добавляем параметры: отключаем reverse path filtering для eth0 и для ядер 2.6.x указываем версию IGMP (igmpproxy поддерживает только IGMPv1 и IGMPv2 на внутреннем интерфейсе):
net.ipv4.conf.eth0.rp_filter=0 net.ipv4.conf.eth0.force_igmp_version=1 net.ipv4.conf.eth1.force_igmp_version=1
Примечание: после внесения изменений в этот файл необходимо перезагрузить компьютер.
2. Проверяем готовность к маршрутизации:
[root@ham1 ~]# less /proc/config.gz | grep '\(MROUTE\|MULTICAST\)' CONFIG_IP_MULTICAST=y CONFIG_IP_MROUTE=y [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/default/forwarding 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth0/rp_filter 0 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth0/force_igmp_version 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/eth1/force_igmp_version 1
3. Настраиваем цепочки iptables для работы со специальными multicast-подсетями:
iptables -I INPUT -d 224.0.0.0/4 -j ACCEPT iptables -I FORWARD -d 224.0.0.0/4 -j ACCEPT
route add -net 224.0.0.0/4 dev eth1
igmpproxy /etc/igmpproxy.conf
Журнал работы igmpproxy ведётся в /var/log/messages. Для отладки можно запустить командой igmpproxy -d /etc/igmpproxy.conf
Проверка работы
После запуска igmpproxy должны появится соответствующие флаги:
[root@ham1 ~]# cat /proc/sys/net/ipv4/conf/breth0/mc_forwarding 1 [root@ham1 ~]# cat /proc/sys/net/ipv4/conf/breth1/mc_forwarding 1
В файлах состояния ядра появятся записи:
cat /proc/net/igmp cat /proc/net/dev_mcast
Маршруты можно найти в файлах:
Виртуальные интерфейсы для маршрутизации:
Настройка статической маршрутизации
Для статической маршрутизации демон igmpproxy запускать не нужно.
smcroute -a eth0 10.1.0.18 224.2.2.2 eth1
- eth0 — входящий интерфейс для трафика
- 10.1.0.18 — адрес интерфейса-источника трафика (можно получить по команде tcpdump -i eth0 dst host 224.2.2.2)
- 224.2.2.2 — MC-группа в сети 224.0.0.0/4
- eth1 — один или несколько внешних интерфейсов
3. Присоединяем машину в MC-группу:
[root@ham1 ~]# ip mroute show (10.1.0.18, 224.2.2.2) Iif: eth0 Oifs: eth1 [root@ham1 ~]# cat /proc/net/ip_mr_cache Group Origin Iif Pkts Bytes Wrong Oifs 020202E0 1200010A 0 0 0 0 1:1