/usr/share/doc/HOWTO/pl-html/DNS-HOWTO.pl.html is in doc-linux-pl-html 2002.06.14-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<META HTTP-EQUIV="content-type" content="text/html; charset=iso-8859-2">
<TITLE>DNS HOWTO</TITLE>
</HEAD>
<BODY>
<H1>DNS HOWTO<BR></H1>
<H2>Autor: Nicolai Langfeldt
<A HREF="mailto:janl@math.uio.no">janl@math.uio.no</A><BR>
v2.0.6, 22 Lipca 1998<BR>
<B>Wersja polska: Leszek Urbañski
<A HREF="mailto:tygrys@fidonet.org.pl">tygrys@fidonet.org.pl</A><BR></B>
v2.1.1, 4 Sierpnia 1998</H2>
<P><HR>
<EM>Jak zostaæ ma³oetatowym administratorem DNS. Dokument ten zosta³ napisany
w standardzie ISO-8859-2. Orygina³ tego dokumentu znajduje siê pod adresem
ftp.icm.edu.pl/pub/Linux/sunsite/docs/HOWTO/.</EM>
<HR>
<H2><A NAME="s1">1. Preambu³a</A></H2>
<P>
<P>S³owa kluczowe: DNS, bind, bind-4, bind-8, named, dialup, ppp, slip,
isdn, Internet, domain, name, hosts, resolving
<P>
<P>
<P>
<H2>1.1 Legalno¶æ</H2>
<P>
<P>(C)opyright 1995 Nicolai Langfeldt. Nie zmieniaæ bez zachowania praw
autorskich. Dokument ten mo¿e byæ dowolnie rozpowszechniany dot±d,
dok±d zostanie zachowana wiadomo¶æ o prawach autorskich.
<P>
<P>
<P>
<H2>1.2 Osoby pracuj±ce nad tym dokumentem; pro¶ba o pomoc</H2>
<P>
<P>Chcia³bym podziêkowaæ Arntowi Gulbrandsenowi, który przeczyta³ szkice tej
pracy niezliczon± ilo¶æ razy i dostarczy³ wielu przydatnych sugestii.
Chcê te¿ podziêkowaæ ludziom, którzy wysy³ali mi e-mailem sugestie i uwagi.
<P>Ten dokument nigdy nie bêdzie ukoñczony - wysy³aj mi listy o twoich
problemach i sukcesach, mo¿e to sprawiæ, ¿e HOWTO bêdzie dok³adniejsze.
Pieni±dze, komentarze i/lub pytania mo¿esz wysy³aæ do janl@math.uio.no.
Je¿eli wy¶lesz mi e-mail i bêdziesz ¿±da³ odpowiedzi, <EM>upewnij siê</EM>,
¿e adres zwrotny jest poprawny i dzia³aj±cy. <B>Proszê</B>, przeczytaj
sekcjê
<A HREF="#qanda">FAQ</A> przed wys³aniem do mnie listu.
<P>Je¶i chcesz przet³umaczyæ to HOWTO, zawiadom mnie, abym móg³ ¶ledziæ,
w jakich jêzykach zosta³em opublikowany, mogê te¿ zawiadamiaæ ciê, kiedy
HOWTO bêdzie uaktualniane.
<P>
<P>
<P>
<H2>1.3 Dedykacja</H2>
<P>
<P>To HOWTO jest dedykujê dla Anne Line Norheim Langfeldt. Zreszt± pewnie nigdy
tego nie przeczyta, bo nie jest tego rodzaju dziewczyn±.
<P>
<P>
<P>
<H2><A NAME="intro"></A> <A NAME="s2">2. Wprowadzenie</A></H2>
<P>
<P><B>Czym ten dokument jest, a czym nie.</B>
<P>Dla pocz±tkuj±cych: DNS to System Nazw Domen (Domain Name System).
DNS przekszta³ca nazwy maszyn na numery IP, które s± ich adresami,
mapuje z nazwy na adres i odwrotnie. To HOWTO opisuje, jak zdefiniowaæ takie
mapowanie u¿ywaj±c systemu Linux. Mapowanie to po prostu zwi±zek jednej
rzeczy z drug±, w tym przypadku nazwy maszyny, jak ftp.linux.org i jej
adresu IP, 199.249.150.4.
<P>DNS jest dla pocz±tkuj±cych (ciebie ;-)) jednym z najtrudniejszych zagadnieñ
administracji sieci. To HOWTO
wyja¶nia parê rzeczy - opisuje jak postawiæ <EM>prosty</EM> serwer nazw DNS,
zaczynaj±c z serwerem cache i przechodz±c do ustawiania podstawowego (primary)
serwera DNS dla domeny. ¯eby uzyskaæ informacjê o bardziej z³o¿nonych
konfiguracjach, zobacz sekcjê
<A HREF="#qanda">FAQ</A> tego dokumentu.
Je¿eli i tam nie znajdziesz potrzebnego opisu, bedziesz musia³
<EM>przeczytaæ</EM> Prawdziw± Dokumentacjê. Powrócê do jej sk³adników w
<A HREF="#bigger">ostatnim rodziale</A>.
<P>Zanim zaczniesz, powiniene¶ tak skonfigurowaæ swoj± maszynê, ¿eby¶ móg³ telnetowaæ
siê na ni± i z niej, oraz z powodzeniem przeprowadziæ wszystkie rodzaje
po³±czeñ
z sieci±, a zw³aszcza móc wykonaæ <CODE>telnet 127.0.0.1</CODE>
i uzyskaæ po³±czenie z w³asnym komputerem (przetestuj to teraz!).
Potrzebne bêd± te¿ poprawne: <CODE>/etc/nsswitch.conf</CODE> (lub
<CODE>/etc/host.conf</CODE>), <CODE>/etc/resolv.conf</CODE> i <CODE>/etc/hosts</CODE>,
jako punkt startowy, poniewa¿ nie bêdê wyja¶nia³ tu ich funkcji.
Je¶li nie masz tego wszystkiego ustawionego i dzia³aj±cego, NET-3 HOWTO
i/lub PPP-HOWTO wyja¶niaj± jak to ustawiæ. Przeczytaj je.
<P>Kiedy mówiê ,,twoja maszyna'', mam na my¶li komputer, na którym chcesz
ustawiæ DNS, a nie ¿adn± inn± maszynê, jak± mo¿esz mieæ, która jest
zwi±zana z twoj± sieci±.
<P>Przyjmujê, ¿e nie jeste¶ za ¿adnym rodzajem ¶ciany ognia (firewall), która
blokuje zapytania (queries) o nazwy. Je¿eli jeste¶, bêdziesz potrzebowa³
specjalnej konfiguracji, przeczytaj sekcjê
<A HREF="#qanda">FAQ</A>.
<P>Serwerem nazw w Unixie jest program nazywany <CODE>named</CODE>.
Jest on czê¶ci± pakietu bind, który jest koordynowana przez Paula Vixie z
Internet Software Consortium. <CODE>Named</CODE> jest za³±czony w wiêkszo¶ci
dystrybucji Linuxa i zazwyczaj zainstalowany jako <CODE>/usr/sbin/named</CODE>.
Je¿eli masz ju¿ named, mo¿esz go prawdopodobnie u¿ywaæ; je¶li nie,
mo¿esz wzi±æ binaria z jakiego¶ Linuxowego serwera ftp, lub najnowsze
i najlepsze ¼ród³a z
<A HREF="ftp://ftp.isc.org/isc/bind/src/cur/bind-8/">ftp.isc.org/isc/bind/src/cur/bind-8/</A>.
To HOWTO opisuje wersjê 8 bind'a. Stara wersja tego HOWTO (o bind 4) jest
dostêpna na
<A HREF="http://www.math.uio.no/~janl/DNS/">http://www.math.uio.no/~janl/DNS/</A>.
Je¿eli strona man named'a mówi o <CODE>named.conf</CODE> masz bind'a 8, a je¿eli
o <CODE>named.boot</CODE>, bind 4. Je¶li masz 4 i obchodzi ciê bezpieczeñstwo,
naprawdê powiniene¶ dokonaæ rozszerzenia do nowego 8.
<P>DNS to baza danych szeroka jak sama sieæ. Uwa¿aj, co do niej wk³adasz. Je¿eli
w³o¿ysz do niej ¶mieci, ty i inni wyjm± tak¿e ¶mieci.
Je¿eli utrzymasz swój DNS w czysto¶ci i ci±g³o¶ci, bêdzie ci dobrze s³u¿y³.
Naucz siê go u¿ywaæ, administrowaæ i znajdowaæ b³êdy, a zostaniesz kolejnym
dobrym administratorem, utrzymuj±cym sieæ przed upadniêciem na kolana z powodu
prze³adowania niedobrym zarz±dzaniem.
<P>W tym dokumencie napisa³em parê wyja¶nieñ, które nie s± ca³kowicie prawdziwe
(jednak¿e s± przynajmniej w po³owie prawd±). Wszystko w interesie uproszczenia.
Wszystko bêdzie (prawdopodobnie ;-)) dzia³aæ, je¿eli uwierzysz w to, co mówiê.
<P><B>Podpowied¼:</B> Zrób kopie zapasowe wszystkich plików, które bêdziesz
zmieniaæ, ¿eby¶ móg³ wróciæ do starej, dzia³aj±cej konfiguracji, je¿eli nic siê
nie powiedzie.
<P>
<H2><A NAME="caching"></A> <A NAME="s3">3. Serwer nazw z pamiêci± podrêczn± (cache)</A></H2>
<P>
<P><B>Pierwszy krok w konfigurowaniu DNS'u, bardzo przydatny dla korzystaj±cych
z modemu.</B>
<P>Serwer z pamiêci± podrêczn± bêdzie szuka³ odpowiedzi na zapytania o nazwy
i pamiêta³
odpowied¼, ¿eby¶ móg³ jej u¿yæ nastêpnym razem, kiedy bêdziesz jej potrzebowa³.
To skróci czas oczekiwania za drugim razem kiedy bêdziesz potrzebowa³ nazwy,
zw³aszcza je¿eli korzystasz z wolnego po³±czenia.
<P>Po pierwsze, potrzebujesz pliku <CODE>/etc/named.conf</CODE>. Jest on
czytany, kiedy named zostaje uruchamiany. Narazie powinien po prostu zawieraæ:
<P>
<HR>
<PRE>
// Plik konfiguracyjny dla serwera nazw ,,caching''
options {
directory "/var/named";
// Odkomentowanie tego mo¿e pomóc, je¿eli musisz przej¶æ przez
// ¶cianê ognia (firewall), a co¶ nie dzia³a:
// query-source address * port 53;
};
zone "." {
type hint;
file "root.hints";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
</PRE>
<HR>
<P>Linia <CODE>directory</CODE> mówi named'owi, gdzie szukaæ plików. Wszystkie pliki
w podkatalogach bêd± odpowiada³y tej zmiennej. A wiêc <CODE>pz</CODE> jest
podkatalogiem
w <CODE>/var/named</CODE>, czyli <CODE>/var/named/pz</CODE>. <CODE>/var/named</CODE> to
odpowiedni katalog, zgodnie z <EM>Linux File system Standard</EM>.
<P>Plik o nazwie <CODE>/var/named/root.hints</CODE> jest zdefiniowany w named.conf.
Powinien on zawieraæ nastêpuj±ce rekordy:
<P>
<HR>
<PRE>
. 6D IN NS G.ROOT-SERVERS.NET.
. 6D IN NS J.ROOT-SERVERS.NET.
. 6D IN NS K.ROOT-SERVERS.NET.
. 6D IN NS L.ROOT-SERVERS.NET.
. 6D IN NS M.ROOT-SERVERS.NET.
. 6D IN NS A.ROOT-SERVERS.NET.
. 6D IN NS H.ROOT-SERVERS.NET.
. 6D IN NS B.ROOT-SERVERS.NET.
. 6D IN NS C.ROOT-SERVERS.NET.
. 6D IN NS D.ROOT-SERVERS.NET.
. 6D IN NS E.ROOT-SERVERS.NET.
. 6D IN NS I.ROOT-SERVERS.NET.
. 6D IN NS F.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 5w6d16h IN A 192.112.36.4
J.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.10
K.ROOT-SERVERS.NET. 5w6d16h IN A 193.0.14.129
L.ROOT-SERVERS.NET. 5w6d16h IN A 198.32.64.12
M.ROOT-SERVERS.NET. 5w6d16h IN A 202.12.27.33
A.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.4
H.ROOT-SERVERS.NET. 5w6d16h IN A 128.63.2.53
B.ROOT-SERVERS.NET. 5w6d16h IN A 128.9.0.107
C.ROOT-SERVERS.NET. 5w6d16h IN A 192.33.4.12
D.ROOT-SERVERS.NET. 5w6d16h IN A 128.8.10.90
E.ROOT-SERVERS.NET. 5w6d16h IN A 192.203.230.10
I.ROOT-SERVERS.NET. 5w6d16h IN A 192.36.148.17
F.ROOT-SERVERS.NET. 5w6d16h IN A 192.5.5.241
</PRE>
<HR>
<P><B>BARDZO WA¯NE:</B> W niektórych wersjach tego dokumentu zawarto¶æ
powy¿szego pliku bêdzie posiadaæ kilka spacji albo tab przed pierwszym
wype³nionym (non blank) znakiem. Nie powinny siê one znale¼æ w pliku.
<B>Skasuj ka¿d± poprzedzaj±c± spacjê</B> w plikach, które wycinasz i
wklejasz z tego HOWTO.
<P><B>Pamiêtaj, co powiedzia³em o poprzedzaj±cych spacjach!</B>
<P>Plik opisuje g³ówne serwery (root servers) na ¶wiecie. Dane zmieniaj± siê
z biegiem
czasu i <EM>musz±</EM> byæ nadzorowane. Przeczytaj
<A HREF="#maint">sekcjê o nadzorze</A>,
¿eby uzyskaæ informacje o uaktualnianiu serwera.
<P>Nastêpna linia w <CODE>named.conf</CODE> to linia <CODE>primary</CODE>. Wyja¶niê jej
funkcjê w nastêpnym rozdziale, a teraz tylko utwórz plik <CODE>127.0.0</CODE>
w podkatalogu <CODE>pz</CODE>:
<P>
<HR>
<PRE>
@ IN SOA linux.bogus. hostmaster.linux.bogus. (
1 ; Numer seryjny
8H ; Od¶wie¿enie
2H ; Powtórzenie
1W ; Przedawnienie
1D) ; Minimalny TTL
NS ns.linux.bogus.
1 PTR localhost.
</PRE>
<HR>
<P>Nastêpnie, potrzebujesz pliku <CODE>/etc/resolv.conf</CODE>, wygl±daj±cego
nastêpuj±co:
<P>
<HR>
<PRE>
search poddomena.twoja-domena.edu twoja-domena.edu
nameserver 127.0.0.1
</PRE>
<HR>
<P>
<P>Linia ,,<CODE>search</CODE>'' ustala, które domeny powinny byæ przeszukane dla
jakichkolwiek nazw wêz³ów, z jakimi chcesz siê po³±czyæ. Linia
<CODE>nameserver</CODE> definiuje adres twojego serwera nazw, w tym przypadku twoj±
w³asn± maszynê, poniewa¿ tu pracuje named (127.0.0.1 wystarczy, nie ma
znaczenia, czy twój komputer ma inny adres). Je¶li chcesz wyznaczyæ kilka
serwerów nazw, wstaw oddzieln± liniê ,,<CODE>nameserver</CODE>'' dla ka¿dego.
(Zauwa¿: Named nigdy nie czyta tego pliku, robi to resolver, który u¿ywa
named.)
<P>¯eby zilustrowaæ, co ten plik robi: Je¶li klient próbuje znale¼æ <CODE>foo</CODE>,
wtedy jako pierwsze próbowane jest <CODE>foo.poddomena.twoja-domena.edu</CODE>,
potem <CODE>foo.twoja-domena.edu</CODE>, a w koñcu <CODE>foo</CODE>. Je¿eli klient
próbuje szukaæ <CODE>sunsite.unc.edu</CODE>, najpierw próbowane jest
<CODE>sunsite.unc.edu.poddomena.twoja-domena.edu</CODE>
(tak, to jest g³upie, ale w ten sposób dzia³a), potem
<CODE>sunsite.unc.edu.twoja-domena.edu</CODE>, a w koñcu <CODE>sunsite.unc.edu</CODE>.
Nie wpisuj za wielu domen w linii search, poniewa¿ zabiera to trochê czasu,
¿eby je wszystkie przeszukaæ.
<P>Przyk³ad przyjmuje, ¿e nale¿ysz do domeny
<CODE>poddomena.twoja-domena.edu</CODE>, twój komputer jest wtedy prawdopodownie
nazwany <CODE>twój-komputer.poddomena.twoja-domena.edu</CODE>. Linia search nie
powinna zawieraæ twojej TLD (Top Level Domain, Domena Najwy¿szego Poziomu,
w tym przypadku <CODE>edu</CODE>). Je¿eli czêsto ³±czysz siê z wêz³ami w innej
domenie, mo¿esz dodaæ t± domenê do linii search w ten sposób:
<P>
<HR>
<PRE>
search poddomena.twoja-domena.edu twoja-domena.edu inna-domena.com
</PRE>
<HR>
<P>i tak dalej. Oczywi¶cie musisz wpisaæ prawdziwe nazwy domen zamiast podanych.
Zauwa¿ brak kropek na koñcach nazw domen.
<P>Nastêpnie, zale¿nie od twojej wersji libc, musisz poprawiaæ
albo <CODE>/etc/nsswitch.conf</CODE>, albo <CODE>/etc/host.conf</CODE>. Je¿eli ju¿ masz
<CODE>nsswitch.conf</CODE>, bêdziemy poprawiaæ w³a¶nie ten plik, a je¶li nie,
<CODE>host.conf</CODE>. (NAPRAWDÊ zalecam poprawianie <B>host.conf</B> we
wszystkich systemach, w których istnieje, np. u mnie jest i jeden
i drugi - przyp. t³um.)
<P><B>/etc/nsswitch.conf</B>
<P>Jest to d³ugi plik, który ustala, sk±d wzi±æ ró¿ne rodzaje typów danych,
z jakiego pliku lub bazy. Zazwyczaj zawiera on na górze pomocne
komentarze, które powiniene¶ teraz przeczytaæ. Potem znajd¼ liniê zaczynaj±c±
siê na ,,<CODE>hosts:</CODE>'' - powinna zawieraæ:
<P>
<HR>
<PRE>
hosts: files dns
</PRE>
<HR>
<P>Je¿eli nie ma linii zaczynaj±cej siê na ,,<CODE>hosts:</CODE>'', wpisz powy¿sz±.
Mówi, ¿e programy powinny najpierw spojrzeæ do pliku <CODE>/etc/hosts</CODE>, potem
sprawdziæ DNS zgodnie z <CODE>resolv.conf</CODE>.
<P><B>/etc/host.conf</B>
<P>Prawdopodobnie zawiera kilka linii, jedna powinna zaczynaæ siê na
<CODE>order</CODE> i wygl±daæ nastêpuj±co:
<P>
<HR>
<PRE>
order hosts,bind
</PRE>
<HR>
<P>Je¿eli nie ma linii ,,<CODE>order</CODE>'' powiniene¶ j± dopisaæ. Mówi ona
procedurom szukaj±cym nazw, ¿eby najpierw zajrzeæ do <CODE>/etc/hosts</CODE>,
a potem spytaæ serwer nazw (który ustali³e¶ w pliku <CODE>resolv.conf</CODE>
jako 127.0.0.1).
<P>Te dwa pliki s± omówione w podrêczniku man resolv(8)
(wykonaj polecenie ,,<CODE>man 8 resolv</CODE>'') w wiêkszo¶ci dystrybucji Linuxa.
Ta strona man jest wed³ug mnie ca³kiem mo¿liwa do zrozumienia, a ka¿dy,
zw³aszcza administratorzy DNS, powinni j± przeczytaæ. Zrób to teraz -
je¿eli powiesz sobie ,,pó¼niej'', nigdy nie bêdziesz mia³ okazji ich przeczytaæ.
<P>
<P>
<P>
<H2>3.1 Uruchamianie named</H2>
<P>
<P>Po tym wszystkim nadszed³ czas, aby uruchomiæ named. Je¿eli u¿ywasz po³±czenia
modemowego, po³±cz siê najpierw. Wpisz ,,<CODE>ndc start</CODE>'', bez opcji,
i naci¶nij
enter. Je¿eli to nie dzia³a, spróbuj
,,<CODE>/usr/sbin/ndc start</CODE>''.
Je¶li to te¿ nie dzia³a, zobacz sekcjê
<A HREF="#qanda">FAQ</A>.
Teraz mo¿esz przetestowaæ swoj± konfiguracjê. Je¿eli obejrzysz plik z
komunikatami sysloga (zazwyczaj <CODE>/var/adm/messages</CODE>, inny katalog
w którym mo¿na ich szukaæ to <CODE>/var/log</CODE>, inn± nazw± pliku jest
<CODE>syslog</CODE>) kiedy uruchamiasz named (wykonaj <CODE>tail -f /var/log/messages</CODE>),
powiniene¶ ujrzeæ co¶ takiego:
<P>(linie koñcz±ce siê na \ s± kontynuowane w nastêpnej linii)
<P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
Feb 15 01:26:17 roke named[6091]: starting. named 8.1.1 Sat Feb 14 \
00:18:20 MET 1998 ^Ijanl@roke.uio.no:/var/tmp/bind-8.1.1/src/bin/named
Feb 15 01:26:17 roke named[6091]: cache zone "" (IN) loaded (serial 0)
Feb 15 01:26:17 roke named[6091]: master zone "0.0.127.in-addr.arpa" \
(IN) loaded (serial 1)
Feb 15 01:26:17 roke named[6091]: listening [127.0.0.1].53 (lo)
Feb 15 01:26:17 roke named[6091]: listening [129.240.230.92].53 (ippp0)
Feb 15 01:26:17 roke named[6091]: Forwarding source address is [0.0.0.0].1040
Feb 15 01:26:17 roke named[6092]: Ready to answer queries.
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¿eli pojawi± siê jakie¶ komunikaty o b³êdach, pope³ni³e¶ jaki¶. Named
powie, w którym
pliku jest b³±d (mam nadziejê, ¿e jest to named.conf albo root.hints :-)).
Zabij named i sprawd¼ plik. (jest te¿ bardziej ,,humanitarny'' :-) od zabijania
sposób - napisz ,,ndc stop'', odczekaj d³u¿sz± chwilê i nameserver zostanie
wy³±czony - przyp. t³um.)
<P>Teraz uruchom nslookup, ¿eby sprawdziæ twoje robótki rêczne.
<P>
<BLOCKQUOTE><CODE>
<PRE>
$ nslookup
Default Server: localhost
Address: 127.0.0.1
>
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¿eli otrzyma³e¶ takie co¶, to znaczy, ¿e dzia³a. Miejmy nadziejê.
Je¶li co innego, sprawd¼ wszystko od pocz±tku. Za ka¿dym razem, kiedy zmienisz
plik <CODE>named.conf</CODE> musisz ponownie uruchomiæ named komend±
<CODE>ndc restart</CODE>.
<P>Teraz mo¿esz wprowadziæ zapytanie. Spróbuj poszukaæ jakiego¶ komputera blisko
ciebie. <CODE>pat.uio.no</CODE> jest blisko mnie, na Uniwersytecie w Oslo:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> pat.uio.no
Server: localhost
Address: 127.0.0.1
Name: pat.uio.no
Address: 129.240.130.16
</PRE>
</CODE></BLOCKQUOTE>
<P>Nslookup poprosi³ twojego named'a o poszukanie maszyny <CODE>pat.uio.no</CODE>.
Po³±czy³ siê wtedy z jednym z serwerów nazw w twoim pliku <CODE>root.hints</CODE>
i zapyta³ stamt±d o drogê.
Mo¿e to zaj±æ troszeczkê czasu, zanim otrzymasz wynik, poniewa¿ szuka we
wszystkich domenach, które wymieni³e¶ w <CODE>/etc/resolv.conf</CODE>.
<P>Je¿eli zapytasz znowu o to samo, otrzymasz co¶ takiego:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> pat.uio.no
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
Name: pat.uio.no
Address: 129.240.2.50
</PRE>
</CODE></BLOCKQUOTE>
<P>Zwróæ uwagê na liniê ,,<CODE>Non-authoritative answer:</CODE>'', która pojawi³a siê
tym razem. Znaczy to, ¿e named nie szuka³ nazwy w sieci, tylko popatrzy³
w swojej pamiêci podrêcznej i tam j± znalaz³. Ale informacja z pamiêci
podrêcznej <EM>mo¿e</EM> byæ przedawniona. Zostajesz wiêc poinformowany
o tym (bardzo niewielkim) niebezpieczeñstwie, poprzez komunikat
,,<CODE>Non-authorative answer:</CODE>''. Kiedy <CODE>nslookup</CODE> mówi to za drugim
razem, kiedy pytasz o komputer, jest to pewny znak, ¿e named zapamiêtuje
informacje i dzia³a. Mo¿esz wyj¶æ z <CODE>nslookup</CODE> wydaj±c komendê
<CODE>exit</CODE>.
<P>Teraz ju¿ wiesz, jak postawiæ przyspieszaj±cy (caching) named. Wypij piwo,
mleko, lub cokolwiek innego, ¿eby to uczciæ.
<P>
<H2><A NAME="simple"></A> <A NAME="s4">4. Prosta domena</A></H2>
<P>
<P><B>Jak skonfigurowaæ w³asn± domenê.</B>
<P>
<P>
<P>
<H2>4.1 Ale najpierw trochê czystej teorii</H2>
<P>
<P>Zanim <EM>naprawdê</EM> zaczniemy ten rozdzia³, zamierzam podaæ ci trochê
teorii o dzia³aniu DNSu. A ty to przeczytasz, poniewa¿ jest to przydatne.
Je¶li nie chcesz, powiniene¶ przynajmniej przej¶æ przez to bardzo
szybko. Przestañ przegl±daæ, kiedy dojdziesz do opisu, mówi±cego co powiniene¶
wstawiæ do pliku <CODE>named.conf</CODE>.
<P>DNS to system hierarchiczny. Najwy¿sza pozycja to ,,<CODE>.</CODE>'', nazywa siê
,,root''. Pod . istnieje kilka Domen Najwy¿szego Poziomu (Top Level Doamins, TLD),
najpopularniejsze to ORG, COM, EDU i NET, ale jest jeszcze wiele innych.
(np. MIL, GOV, ART, NOM, PRIV - przyp. t³um.)
<P>Kiedy poszukiwany jest komputer, zapytanie jest przeprowadzane rekursywnie,
zgodnie z hierarchi±, pocz±wszy od góry. Je¿eli chcesz znale¼æ adres
komputera <CODE>prep.ai.mit.edu</CODE>, twój serwer nazw musi znale¼æ serwer
obs³uguj±cy domenê edu. Pyta serwer <CODE>.</CODE> (zna ju¿ serwery <CODE>.</CODE> -
po to jest plik <CODE>root.hints</CODE>), serwer <CODE>.</CODE> zwraca listê serwerów
edu:
<P>
<BLOCKQUOTE><CODE>
<PRE>
$ nslookup
Default Server: localhost
Address: 127.0.0.1
</PRE>
</CODE></BLOCKQUOTE>
<P>Zacznij pytaæ server root:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> server c.root-servers.net.
Default Server: c.root-servers.net
Address: 192.33.4.12
</PRE>
</CODE></BLOCKQUOTE>
<P>Ustaw typ zapytania na NS (rekordy serwerów nazw):
<P>
<BLOCKQUOTE><CODE>
<PRE>
%gt; set q=ns
</PRE>
</CODE></BLOCKQUOTE>
<P>Spytaj o edu:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> edu.
</PRE>
</CODE></BLOCKQUOTE>
<P>Koñcowa kropka jest wymagana, mówi serwerowi, ¿e edu jest pod . (to zawê¿a
obszar poszukiwañ).
<P>
<BLOCKQUOTE><CODE>
<PRE>
edu nameserver = A.ROOT-SERVERS.NET
edu nameserver = H.ROOT-SERVERS.NET
edu nameserver = B.ROOT-SERVERS.NET
edu nameserver = C.ROOT-SERVERS.NET
edu nameserver = D.ROOT-SERVERS.NET
edu nameserver = E.ROOT-SERVERS.NET
edu nameserver = I.ROOT-SERVERS.NET
edu nameserver = F.ROOT-SERVERS.NET
edu nameserver = G.ROOT-SERVERS.NET
A.ROOT-SERVERS.NET internet address = 198.41.0.4
H.ROOT-SERVERS.NET internet address = 128.63.2.53
B.ROOT-SERVERS.NET internet address = 128.9.0.107
C.ROOT-SERVERS.NET internet address = 192.33.4.12
D.ROOT-SERVERS.NET internet address = 128.8.10.90
E.ROOT-SERVERS.NET internet address = 192.203.230.10
I.ROOT-SERVERS.NET internet address = 192.36.148.17
F.ROOT-SERVERS.NET internet address = 192.5.5.241
G.ROOT-SERVERS.NET internet address = 192.112.36.4
</PRE>
</CODE></BLOCKQUOTE>
<P>Wynik mówi nam, ¿e <CODE>*.root-servers.net</CODE> podaje <CODE>edu.</CODE>,
mo¿emy wiêc
dalej pytaæ <CODE>c</CODE>. Teraz chcemy wiedzieæ, kto obs³uguje nastêpny poziom
nazwy domeny: <CODE>mit.edu.</CODE>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> mit.edu.
Server: c.root-servers.net
Address: 192.33.4.12
Non-authoritative answer:
mit.edu nameserver = W20NS.mit.edu
mit.edu nameserver = BITSY.mit.edu
mit.edu nameserver = STRAWB.mit.edu
Authoritative answers can be found from:
W20NS.mit.edu internet address = 18.70.0.160
BITSY.mit.edu internet address = 18.72.0.3
STRAWB.mit.edu internet address = 18.71.0.151
</PRE>
</CODE></BLOCKQUOTE>
<P><CODE>STRAWB</CODE>, <CODE>W20NS</CODE> i <CODE>BITSY</CODE> obs³uguj± <CODE>mit</CODE>,
wybierz jeden i pytaj o <CODE>ai.mit.edu</CODE>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> server W20NS.mit.edu.
</PRE>
</CODE></BLOCKQUOTE>
<P>Serwery nazw nie rozró¿niaj± wielko¶ci liter, ale u¿ywam myszki do wycinania
i wklejania, wiêc kopiuje wynik prosto z ekranu.
<P>
<BLOCKQUOTE><CODE>
<PRE>
Server: W20NS.mit.edu
Address: 18.70.0.160
> ai.mit.edu.
Server: W20NS.mit.edu
Address: 18.70.0.160
Non-authoritative answer:
ai.mit.edu nameserver = ALPHA-BITS.AI.MIT.EDU
ai.mit.edu nameserver = GRAPE-NUTS.AI.MIT.EDU
ai.mit.edu nameserver = TRIX.AI.MIT.EDU
ai.mit.edu nameserver = MUESLI.AI.MIT.EDU
ai.mit.edu nameserver = LIFE.AI.MIT.EDU
ai.mit.edu nameserver = BEET-CHEX.AI.MIT.EDU
ai.mit.edu nameserver = MINI-WHEATS.AI.MIT.EDU
ai.mit.edu nameserver = COUNT-CHOCULA.AI.MIT.EDU
ai.mit.edu nameserver = MINTAKA.LCS.MIT.EDU
Authoritative answers can be found from:
AI.MIT.EDU nameserver = ALPHA-BITS.AI.MIT.EDU
AI.MIT.EDU nameserver = GRAPE-NUTS.AI.MIT.EDU
AI.MIT.EDU nameserver = TRIX.AI.MIT.EDU
AI.MIT.EDU nameserver = MUESLI.AI.MIT.EDU
AI.MIT.EDU nameserver = LIFE.AI.MIT.EDU
AI.MIT.EDU nameserver = BEET-CHEX.AI.MIT.EDU
AI.MIT.EDU nameserver = MINI-WHEATS.AI.MIT.EDU
AI.MIT.EDU nameserver = COUNT-CHOCULA.AI.MIT.EDU
AI.MIT.EDU nameserver = MINTAKA.LCS.MIT.EDU
ALPHA-BITS.AI.MIT.EDU internet address = 128.52.32.5
GRAPE-NUTS.AI.MIT.EDU internet address = 128.52.36.4
TRIX.AI.MIT.EDU internet address = 128.52.37.6
MUESLI.AI.MIT.EDU internet address = 128.52.39.7
LIFE.AI.MIT.EDU internet address = 128.52.32.80
BEET-CHEX.AI.MIT.EDU internet address = 128.52.32.22
MINI-WHEATS.AI.MIT.EDU internet address = 128.52.54.11
COUNT-CHOCULA.AI.MIT.EDU internet address = 128.52.38.22
MINTAKA.LCS.MIT.EDU internet address = 18.26.0.36
</PRE>
</CODE></BLOCKQUOTE>
<P>A wiêc <CODE>muesli.ai mit.edu</CODE> jest serwerem nazw dla <CODE>ai.mit.edu</CODE>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> server MUESLI.AI.MIT.EDU
Default Server: MUESLI.AI.MIT.EDU
Address: 128.52.39.7
</PRE>
</CODE></BLOCKQUOTE>
<P>Teraz zmieniamy typ zapytania - znale¼li¶my serwer nazw, wiêc teraz zapytajmy go
o wszystko, co wie o <CODE>prep.ai.mit.edu</CODE>.
<P>
<BLOCKQUOTE><CODE>
<PRE>
> set q=any
> prep.ai.mit.edu.
Server: MUESLI.AI.MIT.EDU
Address: 128.52.39.7
prep.ai.mit.edu CPU = dec/decstation-5000.25 OS = unix
prep.ai.mit.edu
inet address = 18.159.0.42, protocol = tcp
ftp telnet smtp finger
prep.ai.mit.edu preference = 1, mail exchanger = gnu-life.ai.mit.edu
prep.ai.mit.edu internet address = 18.159.0.42
ai.mit.edu nameserver = beet-chex.ai.mit.edu
ai.mit.edu nameserver = alpha-bits.ai.mit.edu
ai.mit.edu nameserver = mini-wheats.ai.mit.edu
ai.mit.edu nameserver = trix.ai.mit.edu
ai.mit.edu nameserver = muesli.ai.mit.edu
ai.mit.edu nameserver = count-chocula.ai.mit.edu
ai.mit.edu nameserver = mintaka.lcs.mit.edu
ai.mit.edu nameserver = life.ai.mit.edu
gnu-life.ai.mit.edu internet address = 128.52.32.60
beet-chex.ai.mit.edu internet address = 128.52.32.22
alpha-bits.ai.mit.edu internet address = 128.52.32.5
mini-wheats.ai.mit.edu internet address = 128.52.54.11
trix.ai.mit.edu internet address = 128.52.37.6
muesli.ai.mit.edu internet address = 128.52.39.7
count-chocula.ai.mit.edu internet address = 128.52.38.22
mintaka.lcs.mit.edu internet address = 18.26.0.36
life.ai.mit.edu internet address = 128.52.32.80
</PRE>
</CODE></BLOCKQUOTE>
<P>Zaczynaj±c od <CODE>.</CODE>, znale¼li¶my sukcesywne serwery nazw dla
nastêpnych poziomów w nazwie domeny. Je¿eli u¿ywa³by¶ w³asnego serwera DNS
zamiast wszystkich innych, twój named zapisa³by wszystkie informacje w czasie
poszukiwañ, nie musia³by¶ wiêc znowu ich pytaæ przez jaki¶ czas.
<P>O wiele mniej mówi siê o, tak samo wa¿nej domenie <CODE>in-addr.arpa</CODE>.
Jest ona te¿ podzielona jak normalne domeny.
<CODE>in-addr.arpa</CODE> pozwala otrzymywaæ nazwy maszyn kiedy posiadamy ich
adresy.
Wa¿ne: numery IP w domenie in-addr.arpa s± pisane w odwrotnej
kolejno¶ci. Je¿eli adres maszyny to 192.128.52.43, named poszukuje tak, jak
dla przyk³adu z <CODE>prep.ai.mit.edu</CODE>: znale¼æ serwery <CODE>arpa.</CODE>.
Znale¼æ seerwery <CODE>in-addr.arpa.</CODE>, znale¼æ serwery
<CODE>192.in-addr.arpa.</CODE>, znale¼æ serwery <CODE>128.192.in-addr.arpa.</CODE>,
znale¼æ serwery <CODE>52.128.192.in-addr.arpa.</CODE>.
Znale¼æ potrzebne rekordy dla <CODE>43.52.128.192.in-addr.arpa.</CODE>.
Sprytne, no nie? (Powiedz ,,tak''.) Odwracanie numerów IP mo¿e sprawiaæ k³opoty
przez pierwsze dwa lata.
<P>W³a¶nie sk³ama³em. DNS nie dzia³a dok³adnie tak jak przedstawi³em.
Ale by³em wystarczaj±co blisko.
<P>
<P>
<P>
<H2>4.2 W³asna domena</H2>
<P>
<P>Teraz zdefiniujemy nasz± w³asn± domenê. Nazwijmy j± <EM>linux.bogus</EM>
(,,bogus'', to po angielsku co¶ fa³szywego, bzdurnego - przyp. t³um.)
i zdefiniujemy w niej maszyny. U¿ywam ca³kowicie bzdurnej (bogus) nazwy domeny,
¿eby upeniæ siê, ¿e nie przeszkadzamy nikomu Gdzie¶ Tam.
<P>Jeszcze jedna rzecz zanim zaczniemy: Nie wszystkie znaki mog± wchodziæ w sk³ad
nazw komputerów. Jeste¶my ograniczeni do znaków angielskiego alfabetu, tzn.
a-z,
numerów 0-9 i znaku ,,-'' (³±cznika). Trzymajmy siê tych znaków. Wielkie i ma³e
litery nie s± rozró¿niane przez DNS, a wiêc <CODE>pat.uio.no</CODE> jest identyczne
z <CODE>Pat.UiO.No</CODE>.
<P>Ju¿ zaczeli¶my czê¶æ z lini± 0.0.127 w pliku <CODE>named.conf</CODE>:
<P>
<HR>
<PRE>
zone "0.0.127.in-addr.arpa" {
type master;
file "pz/127.0.0";
};
</PRE>
<HR>
<P>Zauwa¿ brak kropki na koñcu nazw domen w tym pliku -
definiujemy strefê <CODE>0.0.127.in-addr.arpa</CODE>, ¿e jeste¶my g³ównym jej
serwerem i jest zapisana w pliku <CODE>pz/127.0.0</CODE>. Mamy ju¿ ten plik,
zawiera on:
<P>
<HR>
<PRE>
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
1 ; Serial
8H ; Refresh
2H ; Retry
1W ; Expire
1D) ; Minimum TTL
NS ns.linux.bogus.
1 PTR localhost.
</PRE>
<HR>
<P>Zauwa¿ znak ,,<CODE>.</CODE>'' na koñcu wszystkich pe³nych nazw domen w tym pliku,
kontrastuje to z plikiem <CODE>named.conf</CODE> powy¿ej. Niektórzy ludzie lubi±
rozpocz±æ ka¿d± strefê z dyrektyw± <CODE>$ORIGIN</CODE>, ale to ju¿
ekstrawagancja. Origin (pochodzenie - gdzie znajduje siê w hierarchii DNS),
pliku strefy jest zdefiniowany w linii strefy w pliku <CODE>named.conf</CODE>,
w tym przypadku <CODE>0.0.127.in-addr.arpa</CODE>.
<P>Ten ,,plik strefy'' zawiera 3 ,,rekordy zasobów'' (resource records, RR):
RR SOA, RR NS i RR PTR. SOA to skrót od Start of Authority. Znak ,,@''
jest specjaln± notacj± znacz±c± pochodzenie (origin), a je¿eli kolumna
domeny dla tego pliku to ,,0.0.127.in-addr.arpa'', pierwsza linia tak
naprawdê znaczy
<P>
<BLOCKQUOTE><CODE>
<PRE>
0.0.127.in-addr.arpa. IN SOA ...
</PRE>
</CODE></BLOCKQUOTE>
<P>NS to RR Name Server - rekord serwera nazw. <EM>Nie jest</EM> potrzebne ,,@''
na koñcu tej linii, poniewa¿ ostatnia linia zaczê³a sie na ,,@''.
Oszczêdza to trochê pisania. A wiêc linia NS tak naprawdê znaczy
<P>
<BLOCKQUOTE><CODE>
<PRE>
0.0.127.in-addr.arpa. IN NS ns.linux.bogus
</PRE>
</CODE></BLOCKQUOTE>
<P>Mówi DNS'owi, która maszyna jest serwerem nazw domeny
<CODE>0.0.127.in-addr.arpa</CODE> - jest to <CODE>ns.linux.bogus</CODE>. ,,ns'' to
zazwyczaj stosowana nazwa serwera nazw, ale skoro serwery www s± nazywane
<CODE>www.</CODE><EM>co¶tam</EM>, nazw± mo¿e byæ cokolwiek.
<P>I w koñcu rekord PTR. Mówi, ¿e komputer o adresie 1 w podsieci
<CODE>0.0.127.in-addr.arpa</CODE>, np. 127.0.0.1, nazywa siê <CODE>localhost</CODE>.
<P>Rekord SOA jest pocz±tkiem <EM>wszystkich</EM> plików stref. W ka¿dym pliku
musi byæ dok³adnie jeden, jako pierwszy rekord. Opisuje strefê, z której
pochodzi (z maszyny nazwanej <CODE>ns.linux.bogus</CODE>), osobê, która jest
za ni± odpowiedzialna (<CODE>hostmaster@linux.bogus</CODE>), wersjê pliku strefy
(numer seryjny: 1) i inne rzeczy maj±ce zwi±zek z zapamiêtywaniem (caching)
i drugorzêdnymi (secondary) serwerami DNS. Dla reszty pól: od¶wie¿enia,
powtórzenia, przedawnienia i minimalnego TTL u¿ycie warto¶ci podanych w tym
HOWTO powinno byæ bezpieczne.
Teraz uruchom ponownie named'a (komend± <CODE>ndc restart</CODE>)
i u¿yj nslookup, ¿eby sprawdziæ, co zrobi³e¶:
<P>
<BLOCKQUOTE><CODE>
<PRE>
$ nslookup
Default Server: localhost
Address: 127.0.0.1
> 127.0.0.1
Server: localhost
Address: 127.0.0.1
Name: localhost
Address: 127.0.0.1
</PRE>
</CODE></BLOCKQUOTE>
<P>a wiêc udaje mu siê otrzymaæ <CODE>localhost</CODE> ze 127.0.0.1, to dobrze.
Teraz nasze g³ówne zadanie, domena <CODE>linux.bogus</CODE>. Wstaw now± sekcjê
,,zone'' w pliku <CODE>named.conf</CODE>:
<P>
<HR>
<PRE>
zone "linux.bogus" {
notify no;
type master;
file "pz/linux.bogus";
};
</PRE>
<HR>
<P>Zauwa¿ dalszy brak koñcz±cej kropki w nazwie domeny w pliku
<CODE>named.conf</CODE>.
<P>W pliku strefy linux.bogus umie¶cimy pewne ca³kowicie bzdurne (bogus) dane:
<P>
<HR>
<PRE>
;
; Plik strefy dla linux.bogus
;
; Pe³ny plik strefy
;
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; numer seryjny, dzisiejsza data i numer zmiany
8H ; od¶wie¿anie, w sekundach
2H ; powtórzenie, w sekundach
1W ; przedawnienie, w sekundach
1D ) ; minimum, w sekundach
;
NS ns ; Adres Internetowy serwera nazw
MX 10 mail.linux.bogus ; Podstawowy serwer poczty
MX 20 mail.friend.bogus. ; Drugorzêdny serwer poczty
;
localhost A 127.0.0.1
ns A 192.168.196.2
mail A 192.168.196.4
</PRE>
<HR>
<P>Nale¿y zwróciæ uwagê na dwie rzeczy w rekordzie SOA. ns.linux.bogus
<EM>musi</EM> byæ prawdziw± maszyna z rekordem A. Nie jest dozwolone
wpisaanie rekordu CNAME dla maszyny w rekordzie SOA. Jej nazw± nie musi byæ
,,ns'', mo¿e byæ jak±kolwiek dozwolon± nazw± komputera. Po drugie,
hostmaster.linux.bogus powinien byæ odczytany jako hostmaster@linux.bogus,
a powinien byæ to alias pocztowy lub oddzielna skrzynka, gdzie osoba(y)
nadzoruj±ce DNS powinny czêsto czytaæ pocztê. Jakikolwiek list w sprawie
domeny bêdzie wys³any na adres podany w tej linii. Nazw± nie musi byæ
,,hostmaster'',
mo¿e to byæ jakikolwiek dozwolony adres e-mail, ale adres ,,hostmaster''
<EM>bêdzie</EM> równie¿ dzia³a³.
<P>Jest jeden nowy typ RR w tym pliku, MX czyli Mail eXchanger.
Mówi systemom pocztowym gdzie wysy³aæ pocztê zaadresowan± do
<CODE>kto¶tam@linux.bogus</CODE>, odpowiednio do <CODE>mail.linux.bogus</CODE> lub
<CODE>mail.friend.bogus</CODE>. Liczba przed ka¿d± nazw± maszyny oznacza
priorytet MX'ów. RR z najmniejsz± liczb± (10) jest tym, do którego poczta
powinna byæ wysy³ana najpierw. Je¿eli to siê nie uda, mo¿e byæ wys³ana do
serwera z wy¿sz± liczb±, drugorzêdnego serwera poczty, np.
<CODE>mail.friend.bogus</CODE>, który ma tu priorytet 20.
<P>Uruchom ponownie named, u¿ywaj±c komendy <CODE>ndc restart</CODE>. Sprawd¼ wynik
z nslookup:
<P>
<BLOCKQUOTE><CODE>
<PRE>
$ nslookup
> set q=any
> linux.bogus
Server: localhost
Address: 127.0.0.1
linux.bogus
origin = ns.linux.bogus
mail addr = hostmaster.linux.bogus
serial = 199802151
refresh = 28800 (8 hours)
retry = 7200 (2 hours)
expire = 604800 (7 days)
minimum ttl = 86400 (1 day)
linux.bogus nameserver = ns.linux.bogus
linux.bogus preference = 10, mail exchanger = mail.linux.bogus.linux.bogus
linux.bogus preference = 20, mail exchanger = mail.friend.bogus
linux.bogus nameserver = ns.linux.bogus
ns.linux.bogus internet address = 192.168.196.2
mail.linux.bogus internet address = 192.168.196.4
</PRE>
</CODE></BLOCKQUOTE>
<P>Przy dok³adnym sprawdzaniu, odkryjesz b³±d. Linia
<P>
<BLOCKQUOTE><CODE>
<PRE>
linux.bogus preference = 10, mail exchanger = mail.linux.bogus.linux.bogus
</PRE>
</CODE></BLOCKQUOTE>
<P>jest niepoprawna. Powinno byæ
<P>
<BLOCKQUOTE><CODE>
<PRE>
linux.bogus preference = 10, mail exchanger = mail.linux.bogus
</PRE>
</CODE></BLOCKQUOTE>
<P>Specjalnie pope³ni³em b³±d, ¿eby¶ móg³ siê z niego uczyæ :-) Patrz±c na plik
strefy zobaczymy, ¿e w linii
<P>
<BLOCKQUOTE><CODE>
<PRE>
MX 10 mail.linux.bogus ; Podstawowy serwer poczty
</PRE>
</CODE></BLOCKQUOTE>
<P>brakuje kropki. Mo¿na te¿ powiedzieæ, ¿e ma o jeden cz³on ,,linux.bogus'' za
du¿o. Je¿eli nazwa komputera nie koñczy siê kropk± w pliku strefy, pochodzenie
(origin) zostaje dodane do niej, powoduj±c podwójny
<CODE>linux.bogus.linux.bogus</CODE>. Wiêc piszemy albo
<P>
<HR>
<PRE>
MX 10 mail.linux.bogus. ; Podstawowy serwer poczty
</PRE>
<HR>
<P>albo
<P>
<HR>
<PRE>
MX 10 mail ; Podstawowy serwer poczty
</PRE>
<HR>
<P>Oba s± poprawne. Wolê ostatni± formê, mniej pisania. S± znani u¿ytkownicy
bind'a którzy nie zgadzaj± siê z tym, s± te¿ tacy, którzy zgadzaj± siê z t±
regu³±. W pliku strefy domena powinna b±d¼ to byæ ca³kowita i zakoñczona
kropk±, b±d¼ to nie powinna byæ wogóle za³±czona, w tym przypadku zawiera
domy¶lne pochodzenie (origin).
<P>Muszê zaznaczyæ, ¿e w pliku named.conf <EM>nie</EM> powinno byæ kropek po
nazwach domen. Nie masz pojêcia, jak czêsto ludzie g³upieli i klêli na czym
¶wiat stoi z powodu znaku ,,<CODE>.</CODE>''.
<P>A wiêc po wyja¶nieniu mojej uwagi, mamy nowy plik strefy, zawieraj±cy
trochê dodatkowych informacji:
<P>
<HR>
<PRE>
;
; Plik strefy dla linux.bogus
;
; Pe³ny plik strefy
;
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; numer seryjny, dzisiejsza data + numer zmiany
8H ; od¶wie¿anie, w sekundach
2H ; powtórzenie, w sekundach
1W ; przedawnienie, w sekundach
1D ) ; minimum, w sekundach
;
TXT "Linux.Bogus, twoi konsultanci DNS"
NS ns ; Adresy Internetowe serwerów nazw
NS ns.friend.bogus.
MX 10 mail ; Podstawowy MX
MX 20 mail.friend.bogus. ; Drugorzêdny MX
localhost A 127.0.0.1
gw A 192.168.196.1
HINFO "Cisco" "IOS"
TXT "Router"
ns A 192.168.196.2
MX 10 mail
MX 20 mail.friend.bogus.
HINFO "Pentium" "Linux 2.0"
www CNAME ns
donald A 192.168.196.3
MX 10 mail
MX 20 mail.friend.bogus.
HINFO "i486" "Linux 2.0"
TXT "DEK"
mail A 192.168.196.4
MX 10 mail
MX 20 mail.friend.bogus.
HINFO "386sx" "Linux 1.2"
ftp A 192.168.196.5
MX 10 mail
MX 20 mail.friend.bogus.
HINFO "P6" "Linux 2.1.86"
</PRE>
<HR>
<P>Jest tu kilka nowych RR'ów: HINFO (Host INFOrmation) ma dwie czê¶ci,
dobrym zwyczajem jest branie ka¿dej w cudzys³owy. Pierwsza czê¶æ okre¶la
nazwê sprzêtow± lub procesor komputera, a druga oprogramowanie lub
system operacyjny. Maszyna nazwana ,,ns'' ma procesor Pentium i Linuxa 2.0.
CNAME (Canonical NAME) jest sposobem nadawania ka¿dej maszynie kilku nazw.
Www jest wiêc aliasem ns.
<P>U¿ywanie rekordów CNAME jest trochê kontrowesyjne. Ale bezpiecznie jest
przestrzegaæ zasady, ¿e rekordy MX, CNAME lub SOA <EM>nigdy</EM> nie powinny
odnosiæ siê do rekordu CNAME, powinny odnosiæ siê do czego¶ z rekordem A,
wiêc ¼le jest
<P>
<HR>
<PRE>
foobar CNAME www ; NIE!
</PRE>
<HR>
<P>ale poprawnie
<P>
<HR>
<PRE>
foobar CNAME ns ; Tak!
</PRE>
<HR>
<P>Jest te¿ bezpiecznie przyj±æ, ¿e CNAME nie jest dozwolon± nazw± komputera
dla adresu e-mail: <CODE>webmaster@www.linux.bogus</CODE> jest niedozwolonym
adresem, je¿eli przyj±æ powy¿sze ustawienia. Mo¿esz siê spodziewaæ, ¿e
wielu adminów Gdzie¶ Tam bêdzie wymaga³o tej zasady, nawet je¶li to dzia³a
u ciebie. Sposobem unikniêcia tego jest u¿ywanie rekordów A (i mo¿e innych,
takich jak MX) zamiast CNAME:
<P>
<HR>
<PRE>
www A 192.168.196.2
</PRE>
<HR>
<P>Kilku ,,czarodziejów'' bind'a radzi, aby <EM>nie</EM> u¿ywaæ CNAME.
Zastanów siê wiêc nad tym <EM>bardzo</EM> powa¿nie.
<P>Ale jak widzisz, to HOWTO i wiele serwerów nie przestrzega tej zasady.
<P>Za³aduj now± bazê danych komend± <CODE>ndc reload</CODE>, sprawi to, ¿e named
przeczyta ponownie swoje pliki.
<P>
<BLOCKQUOTE><CODE>
<PRE>
$ nslookup
Default Server: localhost
Address: 127.0.0.1
> ls -d linux.bogus
</PRE>
</CODE></BLOCKQUOTE>
<P>Znaczy to, ¿e wszystkie rekordy powinny byæ wymienione. Wy¶wietli:
<P>
<BLOCKQUOTE><CODE>
<PRE>
[localhost]
$ORIGIN linux.bogus.
@ 1D IN SOA ns hostmaster (
199802151 ; numer seryjny
8H ; od¶wie¿anie
2H ; powtórzenie
1W ; przedawnienie
1D ) ; minimum
1D IN NS ns
1D IN NS ns.friend.bogus.
1D IN TXT "Linux.Bogus, twoi konsultanci DNS"
1D IN MX 10 mail
1D IN MX 20 mail.friend.bogus.
gw 1D IN A 192.168.196.1
1D IN HINFO "Cisco" "IOS"
1D IN TXT "Router"
mail 1D IN A 192.168.196.4
1D IN MX 10 mail
1D IN MX 20 mail.friend.bogus.
1D IN HINFO "386sx" "Linux 1.0.9"
localhost 1D IN A 127.0.0.1
www 1D IN CNAME ns
donald 1D IN A 192.168.196.3
1D IN MX 10 mail
1D IN MX 20 mail.friend.bogus.
1D IN HINFO "i486" "Linux 1.2"
1D IN TXT "DEK"
ftp 1D IN A 192.168.196.5
1D IN MX 10 mail
1D IN MX 20 mail.friend.bogus.
1D IN HINFO "P6" "Linux 1.3.59"
ns 1D IN A 192.168.196.2
1D IN MX 10 mail
1D IN MX 20 mail.friend.bogus.
1D IN HINFO "Pentium" "Linux 1.2"
@ 1D IN SOA ns hostmaster (
199802151 ; numer seryjny
8H ; od¶wie¿anie
2H ; powtórzenie
1W ; przedawnienie
1D ) ; minimum
</PRE>
</CODE></BLOCKQUOTE>
<P>To jest w porz±dku. Jak widzisz, wygl±da prawie jak plik strefy.
Sprawd¼my co powie o samym www:
<P>
<BLOCKQUOTE><CODE>
<PRE>
> set q=any
> www.linux.bogus.
Server: localhost
Address: 127.0.0.1
www.linux.bogus canonical name = ns.linux.bogus
linux.bogus nameserver = ns.linux.bogus
linux.bogus nameserver = ns.friend.bogus
ns.linux.bogus internet address = 192.168.196.2
</PRE>
</CODE></BLOCKQUOTE>
<P>Inaczej mówi±c, prawdziwa nazwa <CODE>www.linux.bogus</CODE> to
<CODE>ns.linux.bogus</CODE>. Daje ci to te¿ trochê informacji, które ma o ns,
wystarczj±co du¿o, ¿eby siê z nim po³±czyæ, je¿eli by³by¶ programem.
<P>Jeste¶my w po³owie drogi.
<P>
<P>
<P>
<H2>4.3 Strefa odwrotna</H2>
<P>
<P>Teraz programy mog± konwertowaæ nazwy w linux.bogus na adresy, z którymi mog±
siê po³±czyæ. Ale potrzebna jest te¿ strefa odwrotna, która pozwala DNS'owi
przekszta³caæ adresy na nazwy (FTP, IRC, WWW i inne), ¿eby zdecydowaæ, czy
chc± z tob± rozmawiaæ, czy nie, a je¿eli tak, mo¿e nawet zdecyduj± jaki
priorytet powinien byæ ci nadany. Strefa odwrotna jest wymagana dla pe³nego
dostêpu do wszystkich us³ug Internetu.
<P>Wstaw nastêpuj±ce linie w <CODE>named.conf</CODE>:
<P>
<HR>
<PRE>
zone "196.168.192.in-addr.arpa" {
notify no;
type master;
file "pz/192.168.196";
};
</PRE>
<HR>
<P>Tak samo jak z <CODE>0.0.127.in-addr.arpa</CODE>, zawarto¶æ tak¿e jest podobna:
<P>
<HR>
<PRE>
@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; Numer seryjny, data + numer
8H ; od¶wie¿anie
2H ; powtarzanie
1W ; przedawnienie
1D) ; minimalny TTL
NS ns.linux.bogus.
1 PTR gw.linux.bogus.
2 PTR ns.linux.bogus.
3 PTR donald.linux.bogus.
4 PTR mail.linux.bogus.
5 PTR donald.linux.bogus.
</PRE>
<HR>
<P>Teraz uruchom ponownie named (<CODE>ndc restart</CODE>) i sprawd¼ swoj± pracê
znowu korzystaj±c z nslookup:
<P>
<HR>
<PRE>
> 192.168.196.4
Server: localhost
Address: 127.0.0.1
Name: mail.linux.bogus
Address: 192.168.196.4
</PRE>
<HR>
<P>Wygl±da w porz±dku, spróbuj wy¶wietliæ wszystko, ¿eby to sprawdziæ:
<P>
<HR>
<PRE>
> ls -d 196.168.192.in-addr.arpa
[localhost]
$ORIGIN 196.168.192.in-addr.arpa.
@ 1D IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; serial
8H ; refresh
2H ; retry
1W ; expiry
1D ) ; minimum
1D IN NS ns.linux.bogus.
1 1D IN PTR gw.linux.bogus.
2 1D IN PTR ns.linux.bogus.
3 1D IN PTR donald.linux.bogus.
4 1D IN PTR mail.linux.bogus.
5 1D IN PTR donald.linux.bogus.
@ 1D IN SOA ns.linux.bogus. hostmaster.linux.bogus. (
199802151 ; numer seryjny
8H ; od¶wie¿anie
2H ; powtarzanie
1W ; przedawnienie
1D ) ; minimum
</PRE>
<HR>
<P>Wygl±da dobrze!
<P>Jest kilka rzeczy, które powinienem tu dodaæ. Numery IP u¿ywane w przyk³adach
pochodz± z jednego z bloków ,,sieci prywatnych'', tzn. nie wolno u¿ywaæ ich
publicznie w internecie. S± bezpieczne do pokazania jako przyk³ad w HOWTO.
Druga rzecz, to linia <CODE>notify no;</CODE>. Mówi named, ¿eby nie zawiadamiaæ
serwera drugorzêdnego (secondary, slave), kiedy jeden z plików stref zostanie
uaktualniony. W bind'dzie-8 named mo¿e zawiadamiaæ inne serwery wymienione
w rekordach NS w pliku strefy, kiedy strefa zostanie uaktualniona. Jest to
przydatne do u¿ytku zwyk³ego, ale dla prywatnych eksperymentów ze strefami
ta opcja powinna byæ wy³±czona, nie chcemy przecie¿ chyba, ¿eby nasz
eksperyment za¶mieca³ Internet, czy¿ nie tak?
<P>No i oczywi¶cie ta domena jest nieprawdziwa (bogus) i takie te¿ s±
wszystkie adresy w niej. Zobacz nastêpny rozdzia³ dla przyk³adu z prawdziw±
domen±.
<P>
<H2><A NAME="real-example"></A> <A NAME="s5">5. Prawdziwa domena</A></H2>
<P>
<P><B>Tutaj opisujemy trochê <EM>prawdziwych</EM> plików stref.</B>
<P>U¿ytkownicy zasugerowali, ¿ebym za³±czy³ prawdziwy przyk³ad dzia³aj±cej domeny
razem z teoretycznym przyk³adem.
<P>U¿ywam tego przyk³adu z zezwoleniem Davida Bullock'a z LAND-5.
Te pliki by³y aktualne 24 Wrze¶nia 1996 i zosta³y zmienione przeze mnie,
¿eby pasowa³y do formatu bind-8, u¿ywaj± te¿ moich rozszerzeñ.
A wiêc, to co tu widzisz ró¿ni siê trochê od tego, co otrzymasz po wys³aniu
zapytania do serwerów nazw LAND-5 obecnie.
<P>
<P>
<P>
<H2>5.1 /etc/named.conf (lub /var/named/named.conf)</H2>
<P>
<P>Tutaj znajdziemy linie g³ówne dla dwóch potrzebnych stref odwrotnych:
sieci 127.0.0, jak i sieci 206.6.177 nale¿±cej do LAND-5, oraz
liniê primary dla przedniej strefy land-5.com. Zauwa¿ tak¿e, ¿e zamiast
umieszczaæ pliki w katalogu o nazwie <CODE>pz</CODE>, jak robiê to w tym HOWTO,
znajduj± siê one w katalogu <CODE>zone</CODE> (strefa).
<P>
<HR>
<PRE>
// Plik ³aduj±cy dla serwera nazw LAND-5
options {
directory "/var/named";
};
zone "." {
type hint;
file "root.hints";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "zone/127.0.0";
};
zone "land-5.com" {
type master;
file "zone/land-5.com";
};
zone "177.6.206.in-addr.arpa" {
type master;
file "zone/206.6.177";
};
</PRE>
<HR>
<P>Je¿eli wstawisz to do swojego named.conf, ¿eby siê pobawiæ, <EM>PROSZÊ</EM>,
wstaw <CODE>notify no;</CODE> w sekcji stref dla dwóch stref land-5, ¿eby unikn±æ
wypadków.
<P>
<P>
<P>
<H2>5.2 /var/named/root.hints</H2>
<P>
<P>Pamiêtaj, ¿e ten plik zmienia siê, a ten jest stary. Powiniene¶ u¿ywaæ
nowszego pliku wyprodukowanego u¿ywaj±c dig, bêdzie to wyt³umaczone pó¼niej.
(UWAGA: autor napisa³, ¿e by³o to wyt³umaczone wcze¶niej, ale jest to
wyt³umaczone PÓ¬NIEJ - przyp. t³um.)
<P>
<HR>
<PRE>
; <<>> DiG 8.1 <<>> @A.ROOT-SERVERS.NET.
; (1 server found)
;; res options: init recurs defnam dnsrch
;; got answer:
;; ->>HEADER<<- opCODE: QUERY, status: NOERROR, id: 10
;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13
;; QUERY SECTION:
;; ., type = NS, class = IN
;; ANSWER SECTION:
. 6D IN NS G.ROOT-SERVERS.NET.
. 6D IN NS J.ROOT-SERVERS.NET.
. 6D IN NS K.ROOT-SERVERS.NET.
. 6D IN NS L.ROOT-SERVERS.NET.
. 6D IN NS M.ROOT-SERVERS.NET.
. 6D IN NS A.ROOT-SERVERS.NET.
. 6D IN NS H.ROOT-SERVERS.NET.
. 6D IN NS B.ROOT-SERVERS.NET.
. 6D IN NS C.ROOT-SERVERS.NET.
. 6D IN NS D.ROOT-SERVERS.NET.
. 6D IN NS E.ROOT-SERVERS.NET.
. 6D IN NS I.ROOT-SERVERS.NET.
. 6D IN NS F.ROOT-SERVERS.NET.
;; ADDITIONAL SECTION:
G.ROOT-SERVERS.NET. 5w6d16h IN A 192.112.36.4
J.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.10
K.ROOT-SERVERS.NET. 5w6d16h IN A 193.0.14.129
L.ROOT-SERVERS.NET. 5w6d16h IN A 198.32.64.12
M.ROOT-SERVERS.NET. 5w6d16h IN A 202.12.27.33
A.ROOT-SERVERS.NET. 5w6d16h IN A 198.41.0.4
H.ROOT-SERVERS.NET. 5w6d16h IN A 128.63.2.53
B.ROOT-SERVERS.NET. 5w6d16h IN A 128.9.0.107
C.ROOT-SERVERS.NET. 5w6d16h IN A 192.33.4.12
D.ROOT-SERVERS.NET. 5w6d16h IN A 128.8.10.90
E.ROOT-SERVERS.NET. 5w6d16h IN A 192.203.230.10
I.ROOT-SERVERS.NET. 5w6d16h IN A 192.36.148.17
F.ROOT-SERVERS.NET. 5w6d16h IN A 192.5.5.241
;; Total query time: 215 msec
;; FROM: roke.uio.no to SERVER: A.ROOT-SERVERS.NET. 198.41.0.4
;; WHEN: Sun Feb 15 01:22:51 1998
;; MSG SIZE sent: 17 rcvd: 436
</PRE>
<HR>
<P>
<P>
<P>
<H2>5.3 /var/named/zone/127.0.0</H2>
<P>
<P>Tylko podstawy, obowi±zuj±cy rekord SOA i rekord, który mapuje 127.0.0.1 na
<CODE>localhost</CODE>. Oba s± wymagane. Nic wiêcej nie powinno znajdowaæ siê w tym
pliku. Prawdopodobnie nigdy nie bêdzie musia³ byæ uaktualniany, chyba ¿e
twój serwer nazw lub hostmaster zmieni± adres.
<P>
<HR>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609203 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS land-5.com.
1 PTR localhost.
</PRE>
<HR>
<P>
<P>
<P>
<H2>5.4 /var/named/zone/land-5.com</H2>
<P>
<P>Widzimy tu obowi±zuj±cy rekord SOA i potrzebne rekordy NS. Mo¿emy zobaczyæ,
¿e drugorzêdny serwer nazw ma adres ns2.psi.net. Jest tak, jak powinno byæ,
<EM>zawsze</EM> musi byæ drugorzêdny serwer w innym miejscu Internetu.
Jest tu komputer g³ówny o nazwie land-5, który zajmuje siê wieloma ró¿nymi
us³ugami Internetowymi, jest to za³atwione za pomoc± rekordów CNAME
(alternatywnie mo¿na u¿ywaæ rekordów A).
<P>Jak widzidsz z rekordu SOA, plik strefy pochodzi z land-5.com, osob± kontaktow±
jest root@land-5.com. <CODE>hostmaster</CODE> jest innym czêsto u¿ywanym adresem.
Numer seryjny sk³ada siê z daty w formacie yyyymmdd i dziennego numeru
seryjnego; jest to prawdopodobnie szósta wersja pliku strefy z 20 Wrze¶nia
1996. Pamiêtaj, ¿e numer seryjny <EM>musi</EM> zwiêkszaæ siê monotonicznie,
tutaj jest tylko <EM>jedna</EM> cyfra numeru seryjnego, wiêc po 9 zmianach
trzeba czekaæ do nastêpnego dnia z nastêpnymi edycjami. Rozwa¿ u¿ycie dwóch
cyfr.
<P>
<HR>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609206 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
1W ; expire, seconds
1D ) ; minimum, seconds
NS land-5.com.
NS ns2.psi.net.
MX 10 land-5.com. ; Primary Mail Exchanger
localhost A 127.0.0.1
router A 206.6.177.1
land-5.com. A 206.6.177.2
ns A 206.6.177.3
www A 207.159.141.192
ftp CNAME land-5.com.
mail CNAME land-5.com.
news CNAME land-5.com.
funn A 206.6.177.2
@ TXT "LAND-5 Corporation"
;
; Workstations
;
ws-177200 A 206.6.177.200
MX 10 land-5.com. ; Primary Mail Host
ws-177201 A 206.6.177.201
MX 10 land-5.com. ; Primary Mail Host
ws-177202 A 206.6.177.202
MX 10 land-5.com. ; Primary Mail Host
ws-177203 A 206.6.177.203
MX 10 land-5.com. ; Primary Mail Host
ws-177204 A 206.6.177.204
MX 10 land-5.com. ; Primary Mail Host
ws-177205 A 206.6.177.205
MX 10 land-5.com. ; Primary Mail Host
; {Many repetitive definitions deleted - SNIP}
ws-177250 A 206.6.177.250
MX 10 land-5.com. ; Primary Mail Host
ws-177251 A 206.6.177.251
MX 10 land-5.com. ; Primary Mail Host
ws-177252 A 206.6.177.252
MX 10 land-5.com. ; Primary Mail Host
ws-177253 A 206.6.177.253
MX 10 land-5.com. ; Primary Mail Host
ws-177254 A 206.6.177.254
MX 10 land-5.com. ; Primary Mail Host
</PRE>
<HR>
<P>Je¿eli sprawdzisz serwer nazw land-5, zobaczysz, ¿e nazwy komputerów
sk³adaj± siê z <CODE>ws_</CODE><EM>numer</EM>. Pó¼ne wersje named'a w bind'dzie 4
zaczê³y wymagaæ ograniczeñ znaków sk³adaj±cych siê na nazwy komputerów.
A wiêc wogóle nie dzia³a³oby to z bind-8, zamieni³em ,,_'' na ,,-''.
<P>Inna rzecz warta zauwa¿enia to fakt, ¿e stacje robocze nie maj± w³asnych nazw,
a raczej prefiks i dwie ostatnie czê¶ci numeru IP. U¿ywanie takiej konwencji
mo¿e znacznie upro¶ciæ nadzór, ale jest trochê bezosobowe i mo¿e byæ ¼ród³em
niezadowolenia w¶ród twoich u¿ytkowników.
<P>Mo¿emy tak¿e zobaczyæ, ¿e funn.land-5.com jest aliasem land-5.com, ale
u¿ywaj±cym rekordu A, a nie CNAME.
<P>
<P>
<P>
<H2>5.5 /var/named/zone/206.6.177</H2>
<P>
<P>Skomentujê ten plik na jego koñcu.
<P>
<HR>
<PRE>
@ IN SOA land-5.com. root.land-5.com. (
199609206 ; Serial
28800 ; Refresh
7200 ; Retry
604800 ; Expire
86400) ; Minimum TTL
NS land-5.com.
NS ns2.psi.net.
;
; Servers
;
1 PTR router.land-5.com.
2 PTR land-5.com.
2 PTR funn.land-5.com.
;
; Workstations
;
200 PTR ws-177200.land-5.com.
201 PTR ws-177201.land-5.com.
202 PTR ws-177202.land-5.com.
203 PTR ws-177203.land-5.com.
204 PTR ws-177204.land-5.com.
205 PTR ws-177205.land-5.com.
; {Du¿o powtarzaj±cych siê rekordów - usuniêto}
250 PTR ws-177250.land-5.com.
251 PTR ws-177251.land-5.com.
252 PTR ws-177252.land-5.com.
253 PTR ws-177253.land-5.com.
254 PTR ws-177254.land-5.com.
</PRE>
<HR>
<P>Strefa odwrotna jest kawa³kiem ustawieñ wydaj±cym siê sprawiaæ najwiêcej
k³opotów. Jest u¿ywany do znalezienia nazwy komputera, je¿eli masz jego numer
IP. Przyk³ad: jeste¶ serwerem IRC i akceptujesz po³±czenia od klientów IRC.
Jednak¿e jeste¶ serwerem norweskim, a wiêc chcesz akceptowaæ po³±czenia
tylko z Norwegii i innych krajów skandynawskich. Kiedy otrzymasz po³±czenie
od klienta, biblioteka C jest w stanie przekazaæ ci numer IP ³±cz±cej siê
maszyny, poniewa¿ numer IP klienta jest zawarty we wszystkich pakietach
przekazywanych przez sieæ. Teraz mo¿esz przywo³aæ funkcjê o nazwie
gethostbyaddr, która szuka nazwy komputera z podanym numerem IP. Gethostbyaddr
spyta serwer DNS, który wtedy przetrawersuje DNS, poszukuj±c maszyny.
Przyjmijmy, ¿e po³±czenie nadesz³o z ws-177200.land-5.com. Numer IP podany
przez bibliotekê C serwerowi IRC to 206.6.177.200. ¯eby poznaæ nazwê tej
maszyny, musimy znale¼æ 200.177.6.206.in-addr.arpa. Serwer DNS najpierw
odwróci ¶cie¿kê przez 206, potem przez 6, a¿ w koñcu znajdzie serwer dla
strefy 177.6.206.in-addr.arpa na land-5, z którego na koñcu dostanie odpowied¼,
¿e dla 200.177.6.206.in-addr.arpa mamy rekord ,,PTR ws-177200.land-5.com'',
który znaczy, ¿e nazwa 206.6.177.20 to ws-177200.land-5.com.
Tak jak z wyja¶nieniem, jak zostaje znaleziony prep.ai.mit.edu,
jest to trochê fikcyjne.
<P>Wracaj±c do przyk³adu serwera IRC. Serwer IRC akceptuje po³±czenia tylko
z krajów skandynawskich, tj. *.no, *.se, *.dk. Od razu widaæ, ¿e nazwa
ws-177200.land-5.com nie pasuje do ¿adnego z nich, a wiêc serwer odmówi
po³±czenia. Je¿eli <EM>nie</EM> by³o mapowania odwrotnego dla 206.6.177.200
przez strefê in-addr.arpa, serwer nie móg³by znale¼æ nazwy i porówna³by
206.6.177.200 z *.no, *.se i *.dk, oczywi¶cie ¿adna z nich nie bêdzie
pasowa³a.
<P>Niektórzy ludzie bêd± mówili ci, ¿e odwrotne mapowanie jest wa¿ne tylko dla
serwerów, albo <EM>wogóle</EM> nie wa¿ne. Nie zawsze: wiele serwerów ftp,
news, IRC i nawet niektóre http (WWW) <EM>nie bêd±</EM> akceptowa³y po³±czeñ
z maszyn, których nazw nie bêd± w stanie znale¼æ. A wiêc mapowanie odwrotne
jest <EM>obowi±zkowe</EM>.
<P>
<H2><A NAME="maint"></A> <A NAME="s6">6. Nadzór</A></H2>
<P>
<P><B>Utrzymywanie w ci±g³ym dzia³aniu</B>
<P>Jest jedno zadanie nadzorcze, które musisz wykonywaæ z named'ami, inne ni¿
utrzymywanie ich w dzia³aniu, tzn. uaktualnianie pliku <CODE>root.hints</CODE>.
Naj³atwiej jest to zrobiæ u¿ywaj±c dig'a. Najpierw uruchom dig bez ¿adnych
argumentów, otrzymasz zawarto¶æ pliku <CODE>root.hints</CODE> zgodnie ze swoim
w³asnym serwerem. Wtedy spytaj jeden z wymienionych serwerów g³ównych komend±
<CODE>dig @rootserver</CODE>. Zauwa¿ysz, ¿e to co otrzymasz bêdzie bardzo podobne
do pliku root.hints. Zapisz to do pliku
(<CODE>dig @e.root-servers.net . ns >root.hints.new</CODE>) i zamieñ na niego
stary plik <CODE>root.hints</CODE>.
<P>Pamiêtaj, ¿eby uruchomiæ ponownie named po zamianie pliku cache.
<P>Al Longyear wys³a³ mi ten skrypt. Mo¿e on byæ uruchamiany automatycznie
w celu uaktualniania <CODE>root.hints</CODE>. Dodaj wpis do tablicy cron'a,
¿eby by³ uruchamiany raz na miesi±c. Ten skrypt przyjmuje, ¿e masz dzia³aj±cy
system
pocztowy i zdefniowany alias pocztowy ,,hostmaster''. Musisz zag³êbiæ siê
w ten plik, ¿eby dostosowaæ go do twoich ustawieñ.
<P>
<HR>
<PRE>
#!/bin/sh
#
# Uaktualnianie pliku cache raz na miesi±c.
# Ten skrypt jest uruchamiany automatycznie przez cron'a.
#
(
echo "To: hostmaster <hostmaster>"
echo "From: system <root>"
echo "Subject: Automatyczne uaktualnienie pliku named.conf"
echo
export PATH=/sbin:/usr/sbin:/bin:/usr/bin:
cd /var/named
dig @rs.internic.net . ns >root.hints.new
echo "Plik named.conf zosta³ uaktualniony i zawiera nastêpuj±ce informacje:"
echo
cat root.hints.new
chown root.root root.hints.new
chmod 444 root.hints.new
rm -f root.hints.old
mv root.hints root.hints.old
mv root.hints.new root.hints
ndc restart
echo
echo "Serwer nazw zosta³ uruchomiony ponownie, aby wprowadziæ zmiany"
echo "Poprzedni plik nazywa siê teraz /var/named/root.hints.old."
) 2>&1 | /usr/lib/sendmail -t
exit 0
</PRE>
<HR>
<P>Niektórzy z was mogli zauwa¿yæ, ¿e plik root.hints jest te¿ dostêpny przez ftp
z Internic'u. Proszê, <EM>nie</EM> u¿ywaj ftp do uaktualniania root.hints,
powy¿sza metoda jest o wiele bardziej przyjazna dla sieci.
<P>
<H2><A NAME="bind8"></A> <A NAME="s7">7. Przej¶cie z wersji 4 na wersjê 8</A></H2>
<P>
<P>Poprzednio by³a to sekcja o u¿ywaniu bind'a 8 napisana przez David'a E. Smith'a
(dave@bureau42.ml.org). Trochê j± zmieni³em, ¿eby pasowa³a do nowej nazwy
sekcji.
<P>Nie ma tego wiele. Poza u¿ywaniem named.conf zamiast named.boot, wszystko jest
identyczne. Bind-8 jest dostarczany ze skryptem konwertuj±cym pliki w ,,starym
stylu'' na nowe. Przyk³adowy named.conf (stary) dla serwera cache:
<P>
<HR>
<PRE>
directory /var/named
cache . root.hints
primary 0.0.127.IN-ADDR.ARPA 127.0.0.zone
primary localhost localhost.zone
</PRE>
<HR>
<P>W linii komend, w katalogu bind8/src/bin/named (<EM>Przyjmujê, ¿e masz
dystrybucjê ¼ród³ow±. Je¿eli masz paczkê z binariami skrypt te¿ gdzie¶ musi
byæ, jednak¿e nie jestem pewien gdzie. -ed.</EM>), napisz:
<P>
<HR>
<PRE>
./named-bootconf.pl < named.conf > named.conf
</PRE>
<HR>
<P>Co stworzy named.conf:
<P>
<HR>
<PRE>
// generated by named-bootconf.pl
options {
directory "/var/named";
};
zone "." {
type hint;
file "root.hints";
};
zone "0.0.127.IN-ADDR.ARPA" {
type master;
file "127.0.0.zone";
};
zone "localhost" {
type master;
file "localhost.zone";
};
</PRE>
<HR>
<P>Metoda ta konwertuje wszystko, co mo¿na wpisaæ do named.conf, jednak¿e nie dodaje
¿adnych nowych rozszerzeñ i opcji konfiguracji, które mo¿na uzyskaæ
w bind-8. Oto bardziej kompletny named.conf, który robi te same rzeczy,
ale trochê bardziej sprawnie.
<P>
<HR>
<PRE>
// To jest plik konfiguracyjny named (bind-8 lub pó¼niejszy)
// Powinien byæ zainstalowany jako /etc/named.conf.
// Jedyna zmiana pliku ,,fabrycznego'' (poza tym komentarzem :))
// to odkomentowanie linii directory, poniewa¿ mam ju¿ pliki stref
// w /var/named.
options {
directory "/var/named";
check-names master warn; /* domy¶lne. */
datasize 20M;
};
zone "localhost" IN {
type master;
file "localhost.zone";
check-names fail;
allow-update { none; };
allow-transfer { any; };
};
zone "0.0.127.in-addr.arpa" IN {
type master;
file "127.0.0.zone";
check-names fail;
allow-update { none; };
allow-transfer { any; };
};
zone "." IN {
type hint;
file "root.hints";
};
</PRE>
<HR>
<P>bind8/src/bin/named/test ma ten plik oraz kopie plików stref, które wiele ludzi
mo¿e skopiowaæ i od razu u¿ywaæ.
<P>Formaty plików stref i root.hints s± identyczne, tak jak komendy ich
uaktualniania.
<P>
<H2><A NAME="qanda"></A> <A NAME="s8">8. FAQ</A></H2>
<P>
<P>W tej sekcji wymieniê kilka spo¶ród najczê¶ciej zadawanych pytañ zwi±zanych
z DNS'em i tym HOWTO, oraz odpowiedzi na nie. :-) Przeczytaj t± sekcjê przed
wys³aniem do mnie listu.
<P>
<OL>
<LI>Mój named ¿±da pliku named.boot.
<P>Czytasz z³e HOWTO. Przeczytaj star± wersjê tego dokumentu, która opisuje bind 4,
na
<A HREF="http://www.math.uio.no/~janl/DNS/">http://www.math.uio.no/~janl/DNS/</A>.
<P>
<P>
<P>
</LI>
<LI>Jak u¿ywaæ DNS zza ¶ciany ognia (firewall)?
<P>Kilka podpowiedzi: ,,forwarders'', ,,slave'' oraz spojrzenie na listê
literatury na koñcu tego HOWTO.
<P>
<P>
<P>
</LI>
<LI>Jak sprawiæ, ¿eby DNS prze³±cza³ siê miêdzy adresami us³ugi,
np. www.zajêty.serwer, ¿eby uzyskaæ efekt wyrównania obci±¿enia,
lub podobny?
<P>Utwórz kilka rekordów <B>A</B> dla www.zajêty.serwer i u¿yj bind'a 4.9.3
lub pó¼niejszego. Wtedy bind bêdzie pokolei prze³±cza³ adresy.
<EM>Nie bêdzie</EM> to dzia³aæ z wcze¶niejszymi wersjami bind'a.
<P>
<P>
<P>
</LI>
<LI>Chcê ustawiæ DNS w (zamkniêtym) intranecie. Co mam zrobiæ?
<P>Nie zak³adaj pliku root.hints, tylko pliki stref. To znaczy tak¿e,
¿e nie bêdziesz musia³ uaktualniaæ tego pliku.
<P>
<P>
<P>
</LI>
<LI>Jak ustawiæ drugorzêdny (secondary, slave...) serwer DNS?
<P>Je¿eli podstawowy (primary) serwer ma adres 127.0.0.1 wstaw nastêpuj±c± liniê
w named.conf drugorzêdnego serwera:
<P>
<HR>
<PRE>
zone "linux.bogus" {
type slave;
file "sz/linux.bogus";
masters { 127.0.0.1; };
};
</PRE>
<HR>
<P>Mo¿esz wymieniæ kilka alternatywnych serwerów g³ównych, z których
strefa mo¿e byæ kopiowana w li¶cie <CODE>masters</CODE>, oddzielone przez ,,;''.
<P>
<P>
<P>
</LI>
<LI>Chcê, ¿eby bind dzia³a³ nawet wtedy, kiedy jestem od³±czony od sieci.
<P>Otrzyma³em taki list od Ian'a Clark'a <ic@deakin.edu.au>, gdzie
wyja¶nia on jego sposób dokonania tego:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Uruchamiam named na mojej ,,maskuj±cej siê'' maszynie. Mam dwa pliki
root.hints, jeden nazywa siê root.hints.real i zawiera prawdziwe nazwy serwerów
nazw g³ównych, oraz drugi, root.hints.fake, który zawiera...
----
; root.hints.fake
; ten plik nie zawiera ¿adnych informacji
----
Kiedy roz³±czam siê, kopiujê root.hints.fake do root.hints i uruchamiam
named ponownie.
Kiedy ³±czê siê, kopiujê root.hints.real do root.hints i restartujê named.
To jest wykonywane odpowiednio przez ip-down i ip-up.
Pierwszy raz, kiedy przeprowadzam zapytanie off-line o nazwê domeny, named
nie ma szczegó³ów, a wiêc wstawia taki komunikat w pliku messgaes:
Jan 28 20:10:11 hazchem named[10147]: No root nameserver for class IN
z czym mo¿na ¿yæ.
U mnie to dzia³a. Mogê u¿ywaæ serwera nazw dla maszyn lokalnych bez opó¼nienia,
jak w przypadku zewnêtrznych nazw domen, a kiedy jestem w sieci, zapytania
o zewnêtrzne domeny funkcjonuj± normalnie.
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>
<P>
</LI>
<LI>Gdzie serwer przyspieszaj±cy zapisuje swoj± pamiêæ podrêczn±?
W jaki sposób mo¿na j± kontrolowaæ?
<P>Pamiêæ podrêczna jest zapamiêtywana ca³kowicie w pamiêci, <EM>nie jest</EM>
zapisywana na dysk. Za ka¿dym razem kiedy zabijesz named cache bêdzie
stracony. Cache <EM>nie daje</EM> siê w ¿aden sposób kontrolowaæ. Named
zarz±dza nim zgodnie z pewnymi prostymi zasadami i nie da siê tego omin±æ.
Nie mo¿esz kontrolowaæ cache'u ani jego rozmiaru w ¿aden sposób i z ¿adnego
powodu. Je¿eli chcesz, mo¿esz ,,naprawiæ'' to zmieniaj±c kod named.
Jednak¿e nie jest to zalecane.
<P>
<P>
<P>
</LI>
<LI>Czy named zapisuje cache po zakoñczeniu dzia³ania? Czy mogê go jako¶ do
tego zmusiæ?
<P>Nie, named <EM>nie zapisuje</EM> pamiêci podrêcznej kiedy umiera. Znaczy to,
¿e cache musi byæ zbudowany od nowa za ka¿dym razem, kiedy zabijasz
i uruchamiasz named ponownie. <EM>Nie ma</EM> sposobu, ¿eby zmusiæ go do
zapisywania cache'u w pliku. Je¿eli chcesz, mo¿esz to ,,naprawiæ'' zmieniaj±c
kod named. Nie jest to jednak zalecane.
<P>
</LI>
</OL>
<P>
<H2><A NAME="bigger"></A> <A NAME="s9">9. Jak zostaæ pe³noetatowym administratorem DNS</A></H2>
<P>
<P><B>Dokumentacja i narzêdzia</B>
<P>Prawdziwa Dokumentacja istnieje. Online i drukowana. Przeczytanie kilku z tych
publikacji jest wymagane, ¿eby zrobiæ krok od ma³oetatowego do pe³noetatowego
administratora DNS. W druku, standardow± ksi±¿k± jest <EM>DNS i BIND</EM>,
autorstwa C. Liu i P. Albitz'a, wydawnictwa O'Reilly & Associates,
Sebastopol, CA, ISBN 0-937175-82-X. Czyta³em j±, jest ¶wietna. Jest te¿ sekcja
o DNS w ksi±¿ce <EM>TCP/IP - Administracja sieci</EM>, autorstwa Craig'a
Hunt'a z wydawnictwa O'Reilly..., ISBN 0-937175-82-X. Inna ksi±¿ka koniecznie
do przeczytania przez dobrego admina DNS (lub kogokowiek dobrego z tej bran¿y)
jest <EM>Zen i Sztuka Naprawy Motocykli</EM> Roberta M. Prisiga, :-) dostêpne
pod ISBN 0688052304 i inne.
<P>Online znajdziesz ró¿ne rzeczy na
<A HREF="http://www.dns.net/dnsrd/">http://www.dns.net/dnsrd/</A>,
<A HREF="http://www.isc.org/bind.html">http://www.isc.org/bind.html</A>;
FAQ, podrêcznik (BOG - Bind Operators Guide), specyfikacje i definicje
protoko³ów, oraz sztuczki DNS (te, i wiele, je¿eli nie wszystkie RFC wspomniane
poni¿ej, tak¿e znajduj± siê w dystrybucji bind'a). Nie czyta³em wiêkszo¶ci
z nich, ale przez to nie jestem pe³noetatowym administratorem DNS.
Natomiast Arnt Gulbrandsen przeczyta³ BOG i bardzo mu siê on spodoba³ :-).
Jest te¿ grupa news
<A HREF="news://comp.protocols.tcp-ip.domains">news://comp.protocols.tcp-ip.domains</A> o DNS. Dodatkowo, jest te¿
trochê RFC o DNS'ie, najwa¿niejsze s± prawdopodobnie te:
<P>
<DL>
<P>
<DT><B>RFC 2052</B><DD><P>A. Gulbrandsen, P. Vixie, <EM>A DNS RR for specifying
the location of services (DNS SRV)</EM>, October 1996
<P>
<DT><B>RFC 1918</B><DD><P>Y. Rekhter, R. Moskowitz, D. Karrenberg, G. de Groot,
E. Lear, <EM>Address Allocation for Private Internets</EM>, 02/29/1996.
<P>
<DT><B>RFC 1912</B><DD><P>D. Barr, <EM>Common DNS Operational and Configuration
Errors</EM>, 02/28/1996.
<P>
<DT><B>RFC 1912 Errors</B><DD><P>B. Barr <EM>Errors in RFC 1912</EM>, jest on dostêpny na
<A HREF="http://www.cis.ohio-state.edu/~barr/rfc1912-errors.html">http://www.cis.ohio-state.edu/~barr/rfc1912-errors.html</A><P>
<DT><B>RFC 1713</B><DD><P>A. Romao, <EM>Tools for DNS debugging</EM>, 11/03/1994.
<P>
<DT><B>RFC 1712</B><DD><P>C. Farrell, M. Schulze, S. Pleitner, D. Baldoni,
<EM>DNS Encoding of Geographical Location</EM>, 11/01/1994.
<P>
<DT><B>RFC 1183</B><DD><P>R. Ullmann, P. Mockapetris, L. Mamakos, C. Everhart,
<EM>New DNS RR Definitions</EM>, 10/08/1990.
<P>
<DT><B>RFC 1035</B><DD><P>P. Mockapetris, <EM>Domain names - implementation and
specification</EM>, 11/01/1987.
<P>
<DT><B>RFC 1034</B><DD><P>P. Mockapetris, <EM>Domain names - concepts and
facilities</EM>, 11/01/1987.
<P>
<DT><B>RFC 1033</B><DD><P>M. Lottor, <EM>Domain administrators operations
guide</EM>, 11/01/1987.
<P>
<DT><B>RFC 1032</B><DD><P>M. Stahl, <EM>Domain administrators guide</EM>,
11/01/1987.
<P>
<DT><B>RFC 974</B><DD><P>C. Partridge, <EM>Mail routing and the domain system</EM>,
01/01/1986.
<P>
</DL>
<P>
<H2><A NAME="s10">10. Od t³umacza</A></H2>
<P>
<P>To jest druga wersja DNS-HOWTO. Pierwsza wersja, dotycz±ca bind'a 4 zosta³a
przet³umaczona przez Piotra Pogorzelskiego
<<CODE>piotr.pogorzelski@ippt.gov.pl</CODE>>. Prawa autorskie t³umaczenia
pierwszej
wersji nale¿± w³a¶nie do niego, a poniewa¿ ja przet³umaczy³em drug± wersjê
od pocz±tku, prawa autorskie t³umaczenia drugiej wersji nale¿± do mnie.
Wersja 2.1 jest <EM>znacznie</EM> poprawiona w stosunku do 2.0.
Jak zwykle, je¿eli znajdziesz jakie¶ b³edy, daj mi znaæ.
</BODY>
</HTML>
|