Введение в ос linux

Вид материалаДокументы

Содержание


Настройка сети
Настройка вручную
Подобный материал:
1   ...   44   45   46   47   48   49   50   51   ...   62

Настройка сети


Итак, с работой сети в Linux Мефодий немного познакомился, однако то, как эту сеть использовать для личных нужд, понятнее не стало. Прежде всего: как приучить имеющийся компьютер пользоваться имеющейся локальной сетью?

Настройка вручную


Первая мысль -- настроить сетевые интерфейсы вручную. Это довольно просто, если знать полагающиеся при настройке данные: IP-адрес самого компьютера, IP-адрес маршрутизатора по умолчанию и адрес сервера доменных имён.

Задать IP-адреса интерфейсам eth0 и lo можно уже известной командой ip:

[root@sakura ~]# ip address show

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 08:00:27:44:a3:3a brd ff:ff:ff:ff:ff:ff

[root@sakura ~]# ip address add 127.0.0.1/8 dev lo

[root@sakura ~]# ip address show dev lo

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

[root@sakura ~]# ip link set lo up

[root@sakura ~]# ip address show

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 08:00:27:44:a3:3a brd ff:ff:ff:ff:ff:ff

Настройка интерфейса-заглушки

Сетевой интерфейс необходимо "поднять" (активизировать) командой ip link set интерфейс up и присвоить ему хотя бы один IP-адрес командой ip address add адрес/маска dev интерфейс.

[root@sakura ~]# ip address a 192.168.102.125/24 broadcast 192.168.102.255 dev eth0

[root@sakura ~]# ip link set eth0 up

[root@sakura ~]# ip address show

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 08:00:27:44:a3:3a brd ff:ff:ff:ff:ff:ff

inet 192.168.102.125/24 brd 192.168.102.255 scope global eth0

[user@sakura ~]$ ping -c1 192.168.102.1

PING 192.168.102.1 (192.168.102.1) 56(84) bytes of data.

64 bytes from 192.168.102.1: icmp_seq=1 ttl=64 time=3.82 ms


--- 192.168.102.1 ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 3.821/3.821/3.821/0.000 ms

Настройка сетевого интерфейса

Здесь по совету Гуревича Мефодий указал вдобавок широковещательный адрес сети.

Теперь пакеты доходят до любого абонента локальной сети, но не дальше, поскольку не задан ни один маршрутизатор. Добавить маршрутизатор можно командой ip route add:

[root@sakura ~]# ip route show

192.168.102.0/24 dev eth0 proto kernel scope link src 192.168.102.125

[root@sakura ~]# ping -c1 80.68.240.144

connect: Network is unreachable

[root@sakura ~]# ip route add default via 192.168.102.1

[root@sakura ~]# ping -c1 80.68.240.144

PING 80.68.240.144 (80.68.240.144) 56(84) bytes of data.

64 bytes from 80.68.240.144: icmp_seq=1 ttl=53 time=7.36 ms


--- 80.68.240.144 ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 7.369/7.369/7.369/0.000 ms

[root@sakura ~]# ip r

192.168.102.0/24 dev eth0 proto kernel scope link src 192.168.102.125

default via 192.168.102.1 dev eth0

Добавление маршрутизатора по умолчанию

Мефодий заметил, что запись в таблице маршрутизации относительно локальной сети 192.168.102.0/24 уже была до выполнения команды ip route add -- она появилась там в результате настройки сетевого интерфейса eth0. Не хватало только явного указания маршрутизатора. Параметры команды ip route add соответствуют формату таблицы маршрутизации, описанному в предыдущей лекции. Под конец Мефодий даже вспомнил о краткой форме команды: "route" сокращается до "r", а "show" можно вообще не писать.

Тем не менее служба доменных имён пока не работает: необходимо заполнить файл /etc/resolv.conf:

[root@sakura ~]# ping www.ru

ping: unknown host www.ru

[root@sakura ~]# cat /etc/resolv.conf

[root@sakura ~]# cat > /etc/resolv.conf

domain nipponman.ru

nameserver 192.168.102.1

[root@sakura ~]# ping www.ru

PING www.ru (194.87.0.50) 56(84) bytes of data.

64 bytes from www.ru (194.87.0.50): icmp_seq=1 ttl=55 time=84.3 ms

. . .

[root@sakura ~]# update_chrooted conf

Определение домена и DNS-сервера

Последнюю команду присоветовал Гуревич. Дело в том, что подсистему, работающую с DNS, нередко "сажают в песочницу", то есть переносят в отдельный каталог, в котором выполняется chroot. Как сказано в лекции ссылка скрыта, в такой "песочнице" должны быть все нужные для работы файлы -- и уж конечно процедурам DNS нужен свой файл-копия /etc/resolv.conf. Информация о том, кому что нужно копировать при изменении профиля системы, обычно хранится централизованно и управляется несложными сценариями. В данном дистрибутиве команда update_chrooted conf как раз и копирует все изменившиеся конфигурационные файлы по песочницам.