Забегая несколько вперед, замечу, что такой статический маршрут представляет собой обычное правило перенаправления трафика, поэтому его можно реализовать и средствами пакетного фильтра IPTables:
# iptables -P FORWARD DROP
# iptables -A FORWARD -S 192.168.1.0/24 -d 192.168.2.0/24 -j ACCEPT
# iptables -A FORWARD -S 192.168.2.0/24 -d 192.168.1.0/24 -j ACCEPT
А вот более сложный пример, приведенный в документации по IPTables. Пусть у нас имеется одно-единственное соединение с Интернетом и мы не хотим, чтобы кто-либо вошел в нашу сеть извне:
## Загрузим модули для отслеживания соединений
# (не нужно, если они встроены в ядро)
# insmod ip_conntrack
# insmod ip_conntrack_ftp
## Создадим цепь block, которая будет блокировать
# соединения извне.
# iptables -N block
# iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
# iptables -A block -m state --state NEW -i ! ppp0 -j ACCEPT
# iptables -A block -j DROP
## Весь входящий и маршрутизированный трафик будет
# проходить через block
# iptables -A INPUT -j block
# iptables -A FORWARD -j block
19.2.2. Демон gated — правильный выбор
В последнее время демон gated используется чаще, чем стандартный routed. Объясняется это тем, что gated более гибок в конфигурировании и обладает большими возможностями, в частности, им поддерживаются протоколы RIP-2 и OSFP.
Программа gated была разработана группой американских университетов для работы сети NFSNET. Она позволяет организовать многофункциональный шлюз, обслуживающий как внутреннюю, так и внешнюю маршрутизацию. На данный момент gated поддерживает следующие протоколы маршрутизации:
♦ RIP версий 1 и 2
♦ HELLO
♦ OSPF версии 2
♦ EGP версии 2
♦ BGP версии 2, 3 и 4.
Таблица 19.1 поможет вам сравнить возможности демонов routed и gated.
Протоколы, поддерживаемые gated и routed Таблица 19.1
Демон | Протоколы внутренних маршрутизаторов | Протоколы внешних маршрутизаторов | |||
---|---|---|---|---|---|
RIP | HELLO | OSPF | BGP | EGP | |
routed | V1 | – | – | – | – |
gated, версий 2 | V1 | + | – | V1 | + |
gated, версия 3 | V1, V2 | + | V2 | V2, V3 | + |
Рассмотрим классическое подключение локальной сети к Интернету. Пусть адрес нашей локальной сети 143.100.100.0, а на шлюзе установлены две сетевые платы с IP-адресами 143.100.100.1 и 143.100.200.1. Пусть в нашей сети есть машина с IP-адресом 143.100.100.5, на которой также установлен gated. Настроим gated сначала на этой рабочей станции, а потом — на сервере. Для настройки может использоваться утилита gdc, поставляемая вместе с самим gated.
Настройка gated осуществляется путем редактирования файла конфигурации /etc/gated.conf
. Содержимое этого файла для рабочей станции приведено в листинге 19.1, а для сервера — в листинге 19.2.
Листинг 19.1. Файл конфигурации /etc/gated.conf для рабочей станции
# Это IP-адрес рабочей станции
interface 143.100.100.5 passive;
# используем протокол RIP (Route Internet Protocol)
rip yes;
Листинг 19.2. Файл конфигурации /etc/gated.conf для сервера
# Описываем интерфейсы и протокол
interface 143.100.100.1 passive;
interface 143.100.200.1 passive;
rip yes;
export proto rip interface 143.100.100.1
{
proto direct {
announce 143.100.200.0 metric 0;
};
};
export proto rip interface 143.100.200.1
{
proto rip interface 143.100.100.1 {
announce all;
};
};
Первая директива export объявляет подсеть 143.100.100.0 (наша сеть) через интерфейс 143.100.100.1, который объявляется шлюзом в данную подсеть, то есть считается, что интерфейс 143.100.100.1 принадлежит узлу, входящему в эту сеть. Директива proto direct говорит о том, что пакеты для подсети нужно посылать непосредственно на интерфейс, а нулевая метрика означает, что интерфейс стоит на шлюзе в подсеть.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии