Плетем сети

Материал из LLUG.

Перейти к: навигация, поиск

Неплохо было бы настроить сеть. Хоть она и настраивается при установке дистрибутива, но никогда не помешает знать, что и где надо покрутить крутить если вам, к примеру, сменили адрес.

Все описывается применительно к дистрибутиву ASP Linux 9.2 и справедливо для любого RedHat-подобного дисрибутива.

Самый простой путь - сделать все командой ifconfig. Например команда ifconfig eth0 10.10.20.1 подвесит на интерфейс eth0 IP-адрес 10.10.20.1. Если вам необходимо временно остановить работу интерфейса ifconfig eth0 down. Запуск - ifconfig eth0 up.

Linux позволяет присваивать одному интерфейсу несколько IP-адресов. Делается это следующей командой ifconfig eth0:1 10.10.20.2. Причем в результате получаем вполне полнофункциональный адрес...

Недостаток настройки сети через ifconfig - после перезагрузки все изменения будут потеряны. Т.е. вам необходимо помешать соответствующие команды в автозапуск (см. статью Взлет пингвина или как запускается Linux).

Поэтому мы рассмотрим правильную настройку сети. Находятся все настройки в файлах вида /etc/sysconfig/network-scripts/ifcfg-eth0 (на каждое сетевое устройство свой файл)

Формат записи:

DEVICE=eth0 - устройство
ONBOOT=yes - актировать ли при загрузке
BOOTPROTO=static - определяется статически (возможен вариант dhcp)
IPADDR=10.10.20.1 - адрес
NETMASK=255.255.255.0 - маска
GATEWAY=10.10.20.251 - шлюз

Файл может содержать и другие параметры. Приведенные здесь являются основными.

После того как вы отконфигурируете все файлы необходимо подать команду /etc/rc.d/init.d/network restart чтобы переинициализировать сеть.

В последнее время, появилась масса утилит для настройки сети в tui (например netconfig или linuxconf) или в gui (в каждом дистрибутиве свои). Но не всегда они есть.

Теперь, когда интерфейсы настроены и работают, давайте посмотрим где что еще можно покрутить.

Для начала необходимо настроить роутинг. Если у вас всего одна сетевая карта, для вас это не актуально. Но при появлении двух и более сетевых интерфейсов...

Вводим команду route и созерцаем результат.

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
134.184.156.20 * 255.255.255.252 U 0 0 0 eth1
10.10.20.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth2
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo

Видим что роутинг в подсеть 169.254.0.0 является лишним. Пишем

route del -net 169.254.0.0 netmask 255.255.0.0 dev eth2

Теперь нам потребовалось добавить роутинг до подсети 10.10.30.0 с маской 255.255.255.252.

route add -net 10.10.30.0 netmask 255.255.255.252 dev eth2

Ну и для полного счастья настроим таблицу маршрутизации таким образом, чтобы все остальные запросы переправлялись к нашему провайдеру.

route add default gw 134.184.156.20 eth1

Теперь проверим результат.

route

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.10.30.0 * 255.255.255.252 U 0 0 0 eth2
134.184.156.20 * 255.255.255.252 U 0 0 0 eth1
10.10.20.0 * 255.255.255.0 U 0 0 0 eth0
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default iskra.lugansk.u 0.0.0.0 UG 0 0 0 eth1

Пробуем пинговать внешние сети. Если не заработало ищем ошибки.

Теперь осталось сделать последний штрих.

Идем в /etc/resolv.conf и ищем строки

nameserver 10.10.20.1
nameserver 134.184.156.2

В них описано где искать днс-сервер. Прописываем себя и провайдера.

Ну теперь, кажется, все. В следующий раз расскажу как настроить фаервол.

Автор: Shturman

Настройка и установка программ