next up previous contents
Next: Зворотня розв'язка Up: Файли локальної зони Previous: Файли локальної зони   Contents

Файл прямої розв'язки:

Перший для прямої розв'язки (gethostbyname(3)):


; our local zone
$TTL 3D
@       IN      SOA         ns.sakae. hostmaster.sakae. (
                200109231
                8H      ; refresh
                2H      ; retry
                4W      ; expire
                1D )    ; minimum
;
        NS      ns      ; nameserver
        MX      10      mail.sakae.

localhost       A       127.0.0.1

ns              A       192.168.2.1
mail            A       192.168.2.1

yarylo          A       192.168.2.1
                HINFO   "ibm 570" "Mandrake linux"
;
berkut          A       192.168.2.10
                HINFO   "Compaq ProLinea 4/50" "SuSE linux"
;
veles           A       192.168.2.15
                HINFO   "Sparc Station 5" "RH Linux 5.2 sparc"
;
perun           A       192.168.2.16
                HINFO   "IBM Think Pad 570e" "Mandrake 7.2"
;
mavka           A       192.168.2.20
                HINFO   "PowerPC Macintosh" "Mac OS/Linux"
;
prosha          A       192.168.2.30
                HINFO   "Performa 5220 Macintosh" "Mac OS"
;
natalya         A       192.168.2.70
                HINFO   "Pentium" "Mandrake 8.0"
nfs             CNAME   natalya
fetchmail       CNAME   natalya
/var/named/sakae/sakae

Невеличкий коментар до наведеного файлу. Домашня мережа виявилась на диво динамічною. Я перебудовую свої системи досить часто в залежності від потреб і від величезного набору факторів: переповнюється диск з домашніми директоріями, і наступає час перебудови сервера NFS; один модем змінює інший (зовнішній 28k під'єднаний до sparc'у змінюється на 56k winmodem у PC) і змінюється сервер, що забезпечує зв'язок з зовнішнім світом, і таке інше. Вся мережа традиційно керується цілою системою розрізнених командних і Перл скриптів часто не зв'язаних між собою. Спочатку я користувався назвами хостів в таких скриптах і, отже, при кожній зміні в мережі, з появою чи відставкою того чи іншого сервера мені було потрібно відшукувати скрипти, які перестали від такої зміни працювати і лагодити їх. Поступово я перейшов до, так би мовити, "функціональних" назв. Тобто, в DNS я став додавати псевда до назв хостів, які виражали б сервіс, що працює на даному хості. Мовою DNS це виражається в CNAME рядках.

Як, наприклад, хост natalya є одночасно сервером домашніх директорій, і тому він також зветься `nfs'. На цьому ж сервері в мене працює fetchmail [6], тому у мене він також зветься і fetchmail. Ось записи, що стосуються сервера natalya:

        natalya         A       192.168.2.70
                        HINFO   "Pentium" "Mandrake 8.0"
        nfs             CNAME   natalya
        fetchmail       CNAME   natalya

Всі скрипти я поступово виправляю і записую в них "функціональні псевда" замість справжніх назв. Таким чином, при черговій зміні в домашній мережі мені не потрібно більше виправляти скрипти, а просто досить змінити CNAME в DNS.



Dmytro Kovalov
2002-07-12