Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
эта страница доступна на следующих языках: English  Castellano  Deutsch  Francais  Italiano  Nederlands  Russian  Turkce  

[Фото автора]
автор Eric SEIGNE

Об авторе:

Его работа - создание приложений доступа к базам данных через веб интерфейс. В работе он использует такие приложения как PostGreSQL ,MySQL и PHP3.



Содержание:

Автоматическая настройка DHCP

[Иллюстрация]

Резюме:

Заметка рассказывает о конфигурировании DHCP.




 

Введение

Цели заметки :

Сервер, использовавшийся для заметки - Paul Vixie/ISC DHCPd.  

Начало

Во-первых создаем файл, разрешающий использование сети всем.
Ниже приводится конфигурация, использованная мною для настройки Linux сервера на Slash Party #2.

<file dhcpd.conf>
default-lease-time 86400;
max-lease-time 604800;
get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option domain-name "slach2-100.party";
option domain-name-servers 192.168.12.1;
option interface-mtu 1500;

subnet 192.168.12.0 netmask 255.255.255.0 
        # default gateway
        option routers 192.168.12.1;
        option broadcast-address 192.168.12.255;
        range 192.168.12.50 192.168.12.200;

</file>

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

<bloc attributed to a dhcp client>
lease 192.168.12.58 
        starts 2 1999/08/24 06:28:48;
        ends 3 1999/08/25 06:28:48;
        hardware ethernet 00:10:5a:2e:56:a7;
        uid 01:00:10:5a:2e:56:a7;
        client-hostname "KLUSTER";

</bloc>

После получения клиентскими станциями адресов - файл dhcpd.leases будет выглядеть следующим образом :

<file dhcpd.leases>
lease 192.168.12.58 
        starts 2 1999/08/24 06:28:48;
        ends 3 1999/08/25 06:28:48;
        hardware ethernet 00:10:5a:2e:56:a7;
        uid 01:00:10:5a:2e:56:a7;
        client-hostname "KLUSTER";

lease 192.168.12.53 
        starts 2 1999/08/24 05:42:22;
        ends 3 1999/08/25 05:42:22;
        hardware ethernet 00:80:ad:97:e1:76;
        uid 01:00:80:ad:97:e1:76;
        client-hostname "ceddz";

lease 192.168.12.54 
        starts 2 1999/08/24 03:07:26;
        ends 3 1999/08/25 03:07:26;
        hardware ethernet 00:80:ad:97:e1:7d;
        uid 01:00:80:ad:97:e1:7d;
        client-hostname "SDS";

lease 192.168.12.67 
        starts 2 1999/08/24 02:52:19;
        ends 3 1999/08/25 02:52:19;
        hardware ethernet 00:50:04:45:e1:65;
        uid 01:00:50:04:45:e1:65;
        client-hostname "HOMER";

lease 192.168.12.64 
        starts 2 1999/08/24 01:26:05;
        ends 3 1999/08/25 01:26:05;
        hardware ethernet 00:80:ad:97:e2:1c;
        uid 01:00:80:ad:97:e2:1c;
        client-hostname "chAwArmA";

lease 192.168.12.59 
        starts 2 1999/08/24 01:14:06;
        ends 3 1999/08/25 01:14:06;
        hardware ethernet 00:00:21:2c:30:e7;
        uid 01:00:00:21:2c:30:e7;
        client-hostname "WOOKIE";

</file>
 

Безопасность

Теперь необходимо из "открытого" DHCP сделать статический и более безопасный. Взяв за основу созданный файл dhcp.lease, сделаем так называемый "статический" DHCP.

В чем разница между статическим и открытым DHCP? Открытый DHCP позволяет любому компьютеру, подключенному к сети, получить IP-адрес и необходимые параметры сети. Но это неправильно с точки зрения безопасности - любой может подключиться к вашей сети и получить ее параметры :( Для противодействия этому я использую "статический" DHCP. IP-адрес выдается только зарегистрированным сетевым адаптерам.

<file dhcpd.conf>
default-lease-time 86400;
max-lease-time 604800;
get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option domain-name "slach2-100.party";
option domain-name-servers 192.168.12.1;
option lpr-servers 192.168.12.1;
option interface-mtu 1500;

subnet 192.168.12.0 netmask 255.255.255.0 
        # default gateway
        option routers 192.168.12.1;
        option broadcast-address 192.168.12.255;
    # Those not in the dhcp
    # will get ip between .10 et .50
        range 192.168.12.10 192.168.12.50;


host 
        hardware ethernet 00:10:5a:2e:56:a7;
        fixed-address "kluster.slach2-100.party";

host 
        hardware ethernet 00:80:ad:97:e1:76;
        fixed-address "ceddz.slach2-100.party";
host 
        hardware ethernet 00:80:ad:97:e1:7d;
        fixed-address "sds.slach2-100.party";

host 
        hardware ethernet 00:40:95:49:0b:a5;
        fixed-address "saigneur.slach2-100.party";

host 
        hardware ethernet 00:50:04:45:e1:65;
        fixed-address "homer.slach2-100.party";

</file>

ПРЕДУПРЕЖДЕНИЕ: Если вы не применяете DNS сервер (Domain Name System), в файле dhcp.conf необходимо использовать IP-адреса вместо имен компьютеров.

<extracted from dhcpd.conf whithout dns>
host 
        hardware ethernet 00:40:95:49:0b:a5;
        fixed-address "192.168.12.57";

host 
        hardware ethernet 00:50:04:45:e1:65;
        fixed-address "192.168.12.67";

</extract>

Я написал небольшой Perl скрипт специально для преобразования файла dhcpd.leases в файл "статического" DHCP.  

Автоматическая настройка DNS

Почему бы нам не настроить одновременно и DNS сервер?

Используя Perl скрипт, упоминавшийся выше, с опцией -dns создаются файлы named.$domaine.ajouter и named.$domaine.rev.ajouter. Проверьте их перед применением.

Кроме того, необходимо заполнить файл named.conf параметрами из вашего собственного домена. Например :

<add to file named.conf>
zone "slach2-100.party" 
        type master;
        file "named.slach2-100";
;

zone "12.168.192.in-addr.arpa" 
        type master;
        file "named.slach2-100.rev";
;
</add>

Теперь можете поздравить себя - настройка dhcp и dns завершена.  

Сетевое окружение

Доступная по той же цене (даже лучше, чем бесплатно :), настройка "сетевого окружения" на компьютерах с ОС Windows. Ниже рассмотрим эту настройку с небольшими рисунками и объяснениями.

На Slach 2 я установил две сети (одна 10 Мбит, другая 100 Мбит для привелигированных пользователей). Проблема состояла в том, что сети были не видны друг другу из "сетевого окружения" ОС Windows.

Решением стал WINS. WINS позволяет объявить в сети сервер, использующий список связей между IP-адресами и именами доменов. Это для сетей R1 и R2.

Поэтому необходимо настроить WINS сервер и клиентов для построения IP- шлюза между двумя сетями.

Wins хорошо поддерживается Samba :)

Схематично:

-------------------
I                 I
I   Network R1    I
I                 I
I  192.168.0.0    I
I  255.255.255.0  I
-------+-----------
       |
  -----|-----
 eth0: 192.168.0.1

     Linux
     Server

 eth1: 192.168.100.1
  -----|-----
       |
-------+-----------
I                 I
I   Network R2    I
I                 I
I  192.168.100.0  I
I  255.255.255.0  I
-------------------

Необходимо изменить dhcpd.conf для автоматической конфигурации клиентов, использующих наш wins сервер :) Без использования dhcp пришлось бы конфигурировать каждого клиента индивидуально для доступа к wins серверу!

ПРЕДУПРЕЖДЕНИЕ : НЕ ЗАБУДЬТЕ ДОБАВИТЬ СЛЕДУЮЩИЕ СТРОКИ В ФАЙЛ DHCPD.CONF ДЛЯ ИСПОЛЬЗОВАНИЯ WINS СЕРВЕРА КЛИЕНТАМИ.

<file dhcpd.conf>
[...]
option routers 192.168.0.1;
option netbios-name-servers 192.168.0.1;
option netbios-dd-server 192.168.0.1;
option netbios-node-type 8;
[...]
</file>

Для использования wins сервера, настройте Samba следующим образом :

<file smb.conf>
; validated with samba 2.0.5
[global]
   workgroup = rycks.com
   server string = Linux Box
   comment = Linux Box
   netbios name = pantoufle
   volume = pantoufle
   guest only = yes

   guest account = nobody
   log file = /var/log/samba-log.%m
   max log size = 50

   share modes = yes
   security = share
   socket options = TCP_NODELAY 
   os level = 33

   ; Configured as network master
   domain master = yes
   local master = yes
   preferred master = yes

   ; Activate wins support
   wins support = yes
   wins proxy = yes

 ; FTP sharing
 [ftp]
   path = /home/ftp/pub
   public = yes
   printable = no
   guest ok = yes

</file>

Если были сделаны изменения - необходимо перезапустить dhcp, samba и dns. Перезапустите также dhcp клиентов для использования новых настроек. В "сетевом окружении" посмотрите компьютеры из другой сети.
Советую для поиска использовать имена компьютеров : сначала найдите компьютеры в своей сети, а потом в "другой".

Если компьютеры "видны", но вы не можете получить доступ к ним, необходимо настроить шлюз.
Для подробной информации обратите внимание на ipchains.

Обычно необходимо использовать что-то подобное :

#Reset chains
ipchains -F
#Activate masquerading
#to check according to default etc.
ipchains -A forward -i eth0 -j MASQ
 

Ошибки и ограничения

Будьте внимательны при использовании dhcp сервера одновременно в двух областях - должен быть всего один dns файл. Потом необходимо будет сортировать файл вручную.

Надеюсь документ окажется полезным. Пожалуйста обращайтесь ко мне с комментариями и вопрсами.  

Ссылки

Более подробная информация по затронутым темам :

 

Где найти последнюю версию этого документа?

Документ обновляется часто, поэтому используйте адрес http://www.rycks.com/erics/linux/ для версии документа на французском языке.  

Отзывы о заметке

Для каждой заметки есть страница отзывов. На этой странице вы можете оставить комментарий или просмотреть комментарии других читателей :
 talkback page 

Webpages maintained by the LinuxFocus Editor team
© Eric SEIGNE
LinuxFocus.org 2000

Click here to report a fault or send a comment to Linuxfocus
Translation information:
fr -> -- Eric SEIGNE
fr -> en John Perr
en -> ru Kirill Poukhliakov

2000-07-10, generated by lfparser version 1.5