Network
Документация по конфигурации сети (NET-4)
- NET-3-HOWTO (может есть NET-4?), август 1998
- Network Adiministrators Guide - NAG (1996)
- изменить ip_local_port_range с "1024 4999" на "32768 61000" (echo "32768 61000" > /proc/sys/net/ipv4/ip_local_port_range). Из этого интервала берутся номера локальных портов для соединения с удаленными серверами. Так как мой firewall глушит все соединения идущие снаружи на внутреннюю сеть и направленные на порты до 32768, считая их привилегированными, то надо вывести их выше.
- включить ip forwarding (необходим для transparent proxy, сбрасывает остальные параметры стека в соответствии с RFC 1122 для хостов и RFC 1812 для маршрутизаторов): echo 1 > /proc/sys/net/ipv4/ip_forward (во время загрузки устанавливается в зависимости от значения переменной FORWARD_IPV4 в /etc/sysconfig/network).
- включить незбежную дефрагментацию:
echo 1 > /proc/sys/net/ipv4/ip_always_defrag # в ядре 2.2.12 указывается во время конфигурации
sysctl -p /etc/sysctl.conf
в котором записаны операторы присваивания соответствующим переменным (имена переменных совпадают с именами файлов из /proc/sys с заменой слешей на точки):
- net.ipv4.ip_local_port_range = "32768 61000"
- net.ipv4.ip_forward = 1
- net.ipv4.ip_always_defrag = 1
- net.ipv4.conf.all.rp_filter = 1
- net.ipv4.conf.all.log_martians = 1 (сбрасывать пакеты с невозможными адресами в журнал)
- net.ipv4.conf.all.accept_source_route = 0 (запретить source route)
Однако похоже, что sysctl не работает с двумя параметрами (ip_local_port_range), так что этот параметр приходится устанавливать руками
Несколько IP-адресов на одном интерфейсе (aliasing):
- ядро должно быть собрано с поддержкой alias (CONFIG_IP_ALIAS=y)
- после конфигурации основного адреса на интерфейсе в /etc/rc.d/init.d/network (пусть eth0):
ifconfig eth0:0 дополнительный-адрес netmask маска-дополнительной-сетки up - в документации предлагается определить маршрут для этой сетки
route add -net дополнительная-сетка netmask маска-дополнительной-сетки eth0:0
но он устанавливается сам собой