Настройка и работа в Linux

   отзывы йогуртница мороженица, приятный подарок. |       

Network


Документация по конфигурации сети (NET-4)

  • NET-3-HOWTO (может есть NET-4?), август 1998
  • Network Adiministrators Guide - NAG (1996)
Управление параметрами стека через /proc/sys/net/ipv4 (посмотреть - cat имя, изменить echo параметр... > имя). Смысл имен описан в ip-sysctl.txt. В частности необходимо (для установки во время загрузки надо поменять /etc/rc.d/init.d/network)

  • изменить 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 указывается во время конфигурации
В RH 6.2 для управления параметрами стека (и любыми другими переменными из /proc/sys) используется
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
    но он устанавливается сам собой



Содержание раздела