/usr/share/doc/HOWTO/pl-html/NET-3-HOWTO.pl.html is in doc-linux-pl-html 2002.06.14-2.
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 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 | <!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>Linux NET-3-HOWTO, Linux w sieci </TITLE>
</HEAD>
<BODY>
<H1>Linux NET-3-HOWTO, Linux w sieci </H1>
<H2>Terry Dawson, VK2KTJ, terry@perf.no.itg.telstra.com.au
v1.0, 22 luty 1997
wersja polska piotr.pogorzelski@ippt.gov.pl
w1.0, kwiecieñ 1997
wersja polska - korekta Basia G³owacka jastra@gdansk.sprint.pl
w1.1, grudzieñ 2001</H2>
<P><HR>
<EM>Obs³uga sieci w j±drze systemu Linux zosta³a napisana niemal od
zera. Osi±gi sieci tcp/ip w najnowszych wersjach j±dra sprawiaj±, ¿e
Linux staje siê godn± uwagi alternatyw± dla innych, dominuj±cych w tej
dziedzinie systemów. Naszym celem jest opisanie w jaki sposób
zainstalowaæ i skonfigurowaæ oprogramowanie sieciowe, oraz ró¿ne inne
narzêdzia pomagaj±ce w obs³udze sieci.</EM>
<HR>
<H2><A NAME="s1">1. Zmiany w stosunku do poprzedniej wersji</A></H2>
<P>
<PRE>
Dodatki:
mnóstwo.
Poprawki/uaktualnienia:
wszystko.
</PRE>
<P>
<H2><A NAME="s2">2. Wprowadzenie.</A></H2>
<P>Oryginalny dokument NET-FAQ, napisy przez Matta Welsha w celu zebrania
odpowiedzi na najczê¶ciej zadawane pytania na temat pracy Linuksa w
sieci, powsta³ zanim ktokolwiek my¶la³ o Projekcie Dokumentacji Linuksa
(LDP). Dokument dotyczy³ bardzo wczesnych wersji rozwojowych modu³ów sieciowych
j±dra. Zosta³ zast±piony przez NET-2-HOWTO, jeden z oryginalnych
doumentów projektu LDP. Opisywa³ oprogramowanie sieciowe znane pod
nazw± "wersja 2." i "wersja 3.". W tym dokumencie opisujemy jedynie
modu³y sieciowe j±dra w "wersji 3".
<P>
<P>Poprzednie wersje tego dokumentu osi±gnê³y ogromne rozmiary, ze
wzglêdu na wielk± ilosæ materia³u, którego dotyczy³y. By³a to jedna z
przyczyn powstania kilku innych dokumentów HOWTO opisuj±cych
specyficzne problemy zwi±zane z sieci±. Wszêdzie gdzie bêdzie to
mo¿liwe, bêdziemy odwo³ywaæ siê do tych dokumentów i opisywaæ
problemy, które jeszcze nie posiadaj± w³asnych dokumentów.
<P>
<H2>2.1 Uwagi na temat tego dokumentu</H2>
<P>Zawsze doceniam wszelkie uwagi, szczególnie warto¶ciowe
wnioski. Proszê kierujcie je bezpo¶rednio do mnie
<A HREF="mailto:terry@perf.no.itg.telstra.com.au">email</A>.
<P>
<H2><A NAME="s3">3. Jak korzystaæ z tego dokumentu (NET-3-HOWTO-HOWTO ?).</A></H2>
<P>Format tego dokumentu ró¿ni siê od poprzednich wersji. Przegrupowa³em
podrozdzia³y, tak aby materia³ opisowy zgromadzony na pocz±tku
dokumentu mog³ zostaæ przez czytalnika pominiêty. Po nim wystêpuje
ogólny opis zagadnieñ sieciowych, informacje, które trzeba zrozumieæ
zanim przejdzie siê do ostatniej czê¶ci dokumentu - technicznej
dokuemntacji stosowanej technologii.
<P>
<DL>
<DT><B>Przeczytaj rozdzia³y ogólne</B><DD><P>Informacje tutaj podane odnosz±
niê niemal do wszystkich po¼niejszych czê¶ci dokumentu i s± niezbêdne
do ich zrozumienia.
<P>
<DT><B>Zastanów siê nad swoj± sieci±</B><DD><P>Powiniene¶ wiedzieæ jak jest
(lub bêdzie) zbudowana twoja sieæ, dok³adnie jaki sprzêt i technologie
s± (bêd±) wykorzystywane.
<P>
<DT><B>Przeczytaj rodzia³y opisuj±ce wykorzystywane przez ciebie
technologie</B><DD><P>Gdy ju¿ wiesz co ciê konkretnie interesuje, zapoznaj siê z
wybranymi rozdzia³ami. Znajdziesz tam szczegó³y dotycz±ce opisywanej
technologii.
<P>
<DT><B>Wykonaj konfiguracje sieci</B><DD><P>Powiniene¶ spróbowaæ
skonfigurowaæ sieæ uwa¿nie notuj±c wszystkie napotkane problemy.
<P>
<DT><B>Je¶li potrzebujesz poszukaj dalszej pomocy</B><DD><P>Je¶li napotkasz
problemy, w rozwi±zaniu których niniejszy dokument nie bêdzie pomocny,
wtedy zapoznaj siê z rozdzia³em po¶wiêconym znajdowaniu dalszej pomocy
i zg³aszaniu znalezionych b³êdów.
<P>
<DT><B>Baw siê dobrze!</B><DD><P>Sieæ to dobra zabawa, ciesz siê ni±.
</DL>
<P>
<H2><A NAME="s4">4. Informacje ogólne na temat pracy Linuksa w sieci.</A></H2>
<P>
<H2>4.1 Krótka historia rozwoju modu³ów sieciowych j±dra Linuksa.</H2>
<P>Opracowanie zupe³nie nowej implementacji protoko³u tcp/ip, pracuj±ego
równie dobrze jak inne istniej±ce implementacje nie by³o ³atwym
zadaniem. Decyzja aby napisaæ wszystko od zera zosta³a podjêta w
czasie gdy istnia³a niepewno¶æ, ¿e istniej±ce implementacje mog±
zostaæ zaprzepaszczone przez restrykcyjne licencje, z powodu
tocz±cej siê sprawy s±dowej rozpoczêtej przez U.S.L. i w momencie gdy
sieæ by³a przepe³niona ¶wie¿ym entuzjazmem aby zrobiæ to inaczej, a
byæ mo¿e nawet lepiej ni¿ zosta³o do tej pory zrobione.
<P>Pierwszym ochotnikiem przewodzenia w pracach nad rozwojem modu³ów
j±dra do obs³ugi sieci by³ Ross Biro
<CODE><biro@yggdrasil.com></CODE>. Wykona³ prost± i niepe³n±, lecz w
wiêkszo¶ci przypadków dzia³aj±c± implementacje podstawowych procedur,
uzupe³nionych przez procedury sterownika karty sieciowej ethernet
WD-8003. To wystarczy³o, aby przyci±gn±æ rzeszê ludzi, umo¿liwiæ im
testowanie i eksperymentowanie. Niektórm uda³o siê nawet doprowadziæ
do w³±czenia swoich komputerów do Internetu.
<P>Nacisk spo³eczno¶ci Linuksowej na rozwój obs³ugi sieci przez
j±dro wci±¿ wzrasta³. Gdy korzy¶ci i stysfakcja z wykonywanej pracy
przesta³y rekompensowaæ w wystarczaj±cym stopni po¶wiecenia i odpieranie
rosn±cych nacisków, Ross zrezygnowa³ z roli prowadz±cego budowê
oprogramowania sieciowego. Jego wysi³ki po¶wiêcone na stworzenie w tak
burzliwych czasach czego¶ u¿ytecznego sta³y siê katalizatorem
przysz³ych prac i nale¿y je zaliczyæ do najwa¿niejszych czynników,
które przyczyni³y siê do osi±gniêcia sukcesu.
<P>
<P>Orest Zborowski <CODE><obz@Kodak.COM></CODE> do³±czy³ do j±dra oryginalny interfejs
programistyczny gniazd BSD. By³ to ogromny krok naprzód, poniewa¿
umo¿liwia³ proste przenoszenie na Linuksa wielu istniej±cych
programów sieciowych, bez konieczno¶ci ich nadmiernej modyfikacji.
<P>Mniej wiêcej w tym samym czasie Laurence Culhane
<CODE><loz@holmes.demon.co.uk></CODE> opracowa³ pierwszy sterownik protoko³u
SLIP. Wiele osób, które nie posiada³y dostêpu do sieci Ethernetowych
otrzyma³o mo¿liwo¶æ eksperymentowania z nowym oprogramowaniem
sieciowym. Ponownie czê¶æ osób wykorzysta³a te oprogramowanie do
przy³±czania siê do Internetu. W ten sposób uzmys³owili reszcie
jakie mo¿liwo¶ci otworzy³yby siê przed Linuksem, gdyby tylko posiada³
pe³n± obs³ugê sieci. Zwiêkszy³o równie¿ liczbê osób aktywnie
wykorzystuj±cych i eksperymentuj±cych z istnej±cym oprogramowaniem.
<P>Jednym z ludzi, który równie aktywnie pracowa³ nad zbudowaniem modu³ów
obs³ugi sieci w j±drze Linuksa by³ Fred van Kempen
<CODE><waltje@uwalt.nl.mugnet.org></CODE>. Po krótkim okresie niepewno¶ci
wywo³anym rezygnacj± Rossa Biro z prowadzenia projektu, Fred
zaoferowa³ swój czas i umiejêtno¶ci, i przyj±³ tê rolê w zasadzie bez
¿adnych sprzeciwów. Fred mia³ ambitne plany na temat kierunków rozwoju
oprogramowania obs³ugi sieci w j±drze Linuksa i aktywnie je
realizowa³. Stworzy³ oprogramowanie znane pod nazw± NET-2
(oprogramowanie Rossa nosi³o nazwê NET), z którego wielu ludzi
korzysta³o przez d³ugi czas. Fred wprowadzi³ wiele inowacji do
programu rozwoju oprogramowania, dynamiczny interfejs urz±dzeñ, obs³ugê
protoko³u AX.25 (Amateur Radio) i bardziej modu³owe implementacje
obs³ugi funkcji sieciowych. Oprogramowanie NET-2 by³o wykorzystywane
przez stale rosn±c± grupê ludzi, w miarê jak ¶wiat dowiadywa³ siê, ¿e
co¶ takiego istnieje. Oprogramowanie sieciowe nadal by³o
rozpowszechniane w postaci ³atek do standardowej dystrybucji j±dra i
przez d³ugi czas nie by³o rozpowszechniane razem z j±drem Linuksa.
NET-FAQ i pó¼niejszy NET-2-HOWTO opisywa³y ca³kiem skomplikowana
procedurê uruchomienia sieci pod Linuksem. Fred skoncentrowa³ siê na
wprowadzaniu nowo¶ci do standardowej implementacji sieci, a to
zabiera³o czas. Spo³eczno¶æ u¿ytkowników zaczyna³a siê niecierpliwiæ
oczekuj±c na co¶ co dzia³a³oby bezb³êdnie i zadawala³oby 80% z nich.
I podobnie jak w przypadku Rossa, naciski na Freda, jako
koordynatora projektu ca³y czas wzrasta³y.
<P>
<P>Alan Cox <CODE><iialan@www.linux.uk.org></CODE> zaproponowa³ rozwi±zanie
zaistnia³ej sytuacji. Zaproponowa³, ¿e we¼mie kod napisany przez Freda
i przetestuje go. W ten sposób zapewni jego stabilno¶æ
satysfakcjonuj±c grono niecerpliwych u¿ytkowników, uwalniaj±c tym
samym Freda od licznych nacisków i umo¿liwiaj±c mu dalsz± pracê nad
rozwojem oprogramowania. Tak te¿ zrobi³, co zakoñczy³o siê pe³nym
sukcesem. Pierwsza wersja oprogramowania stworzona przez Alana nosi³a
nazwê NET-2D (Debugged - odpluskwiony). Oprogramowanie pracowa³o
stabilnie w wiêkszo¶ci standardowych konfiguracji i wiêkszo¶æ
u¿ytkowników by³a wreszcie szczê¶liwa. Alan bez w±tpienia posiada³
umiejêtno¶ci i pomys³y, które chcia³ zrealizowaæ ku po¿ytkowi ca³ej
spo³eczno¶ci Linuksa. Nastêpstwem by³o wiele dyskusji na temat
kierunków rozwoju oprogramowania sieciowego NET-2 Linuksa. Rozwinê³y
siê dwie ró¿ne szko³y, jedna, której ide± by³o "wpierw niech to
dzia³a, pó¼niej niech bêdzie to lepsze" i druga z ide± "niech wpierw
to bêdzie lepsze". Ostatecznie wmiesza³ siê w to Linus, oferuj±c swoje
wsparcie Alanowi w jego wysi³kach w³±czaj±c jego kod do standardowej
dystrybucji jadra Linuksa. To postawi³o Freda w bardzo trudnej
pozycji. Zosta³ pozbawiony ogromnej rzeszy u¿ytkowników aktywnie
testuj±cych i eksperymentuj±cych z jego oprogramowaniem sieciowym, co
oznacza³o, ¿e jego dalszy rozwój by³by trudny i powolny. Fred
kontynuowa³ przez krótki czas swoje prace, ostatecznie rezygnuj±c i
pozstawiaj±c Alana jako nowego lidera w wysi³kach nad udoskonaleniem
oprogramowania sieciowego Linuksa.
<P>Wktrótce swoje talenty w tematyce ujawni³ Donald Becker
<CODE><becker@cesdis.gsfc.nasa.gov></CODE> i stworzy³ ogron± liczbê
sterowików kart sieciowych ethernet, niemal wszystkich dostêpnych w
obecnych wersjach j±dra. Byli równie¿ inni, których wk³ad w tej
dziedzinie by³ znacz±cy, lecz praca Donalda by³a tak p³odna, ¿e wymaga
osobnej uwagi.
<P>Alan kontynuowa³ pracê nad szlifowaniem oprogramowania NET-2-D,
równocze¶nie staraj±c siê zaj±æ problemami okre¶lonymi jako 'do
zrobienia' (TODO). Gdy j±dro Linuksa rozwinê³o siê na tyle by osi±gn±æ
wersjê <CODE>1.3.*</CODE>, jego czê¶æ dotycz±ca obs³ugi sieci sk³ada³a siê
niemal z wersji NET-3, na której bazyj± aktualne wersje. Alan pracowa³
nad wieloma aspektami i funkcjami sieciowymi otrzymuj±c wsparcie od
wielu utalentowanych ludzi nale¿±cych do internetowej spo³eczno¶ci
Linuksa. Dziêki temu oprogramowanie rozrasta³o siê jednocze¶nie w wielu
kierunkach. Alan opracowa³ dynamiczne sterowniki urz±dzeñ i pierwsze
implementacje standardów AX.25 i IPX. Kontynuowa³ pracê, powoli
restrukturyzuj±c i wprowadzaj±c ulepszenia, a¿ uzyska³ obecn± postaæ.
<P>Obs³uga PPP zosta³a zaimplementowana przez Michaela Callahana
<CODE><callahan@maths.ox.ac.uk></CODE> i Ala Longyeara
<CODE><longyear@netcom.com></CODE>. Mia³o to ogromne znaczenie i ogromnie
zwiêkszy³o libczê osób aktywnie wykorzystuj±cych Linuksa w
zastosowaniach sieciowych.
<P>
<P>Jonathon Naylor <CODE><jsn@cs.nott.ac.uk></CODE> znacznie usprawni³
pocz±tkowy kod Alana obs³ugi protoko³u AX.25. Wprowdzi³ obs³ugê
protoko³u NetRom. Obs³uga AX.25/NetRom jest ogromnie wa¿na, poniewa¿
¿aden inny system operacyjny nie posiada w standardowej dystrybucji
obs³ugi tych protoko³ów.
<P>By³y równie¿ ogromne rzesze innych ludzi, którzy w zanacz±cy sposób
przyczynili siê do rozwoju oprogramowania sieciowego Linuksa. Wiele z
tych nazwisk znajdziesz pó¼niej w czê¶ciach omawiaj±cych poszczególne
technologie. Inni przyczynili siê do rozwoju b±d¼ opracowuj±c ró¿ne
modu³y oprogramowania, b±d¼ przysy³aj±æ poprawki usuwaj±ce ró¿ne
b³êdy, b±d¼ oferuj±c sugestie, raporty z testów lub choæby wsparcie
moralne dla aktywnych twórców. Ka¿dy z nich mo¿e twierdziæ, ¿e bra³ w
tym udzia³ i oferowa³ tyle ile móg³. Kod j±dra Linuksa przeznaczony do
obs³ugi sieci jest ¶wietnym przyk³adem rezultatów jakie mo¿na osi±gn±æ
pracuj±c w tak anarchiczny sposób, jaki to mia³o miejsce w tym
przypadku. Je¶li siê to jeszcze nie zadziwi³o, to pamiêtaj o jednym:
prace rozwojowe nadal trwaj±.
<P>
<H2>4.2 Sk±d zdobyæ inne informacje na temat zastosowañsieciowych Linuksa.</H2>
<P>Istnieje kilka miejsc, gdzie mo¿na znale¼æ dobre informacje na temat
sieciowych zastosowañ Linuksa.
<P>
<P>Alan Cox, aktualny opiekun i lider oprogramowania sieciowego Linuksa,
prowadzi stronê internetow± zawieraj±c± najciekawsze i najwa¿niejsze
informacje na temat aktualnego rozwoju sieci w Linuksie:
<A HREF="http://www.uk.linux.org/NetNews.html">www.uk.linux.org</A>.
<P>Innym znakomitym miejscem jest ksi±¿ka napisana przez Olafa Kircha pod
tytu³em <CODE>Poradnik dla administratorów sieci</CODE>. Powsta³a w ramach
<A HREF="http://sunsite.unc.edu/LDP/">Projektu dokumentacji Linuksa</A>
i jest dostêpna tutaj:
<A HREF="http://sunsite.icm.edu.pl/pub/Linux/LDP/LDP/nag/nag.html">Poradnik dla administratorów sieci - wersja HTML </A>
lub w innych formatach tutaj
<A HREF="ftp://sunsite.icm.edu.pl/pub/Linux/sunsite/docs/LDP/network-guide/">archiwum ftp sunsite.unc.edu LDP</A>. Ksi±¿ka Olafa jest
ca³kiem wyczerpuj±ca i dostarcza dobrego, stoj±cego na wysokim
poziomie przegl±dowego spojrzenia na konfiguracjê sieci pod Linuksem.
<P>Istnieje specjalna grupa dyskusyjna (angielskojêzyczna), po¶wiêcona
sieci i podobnym problemom:
<A HREF="news:comp.os.linux.networking">comp.os.linux.networking</A><P>Istnieje angielskojêzyczna lista dyskusyjna, na któr± mo¿esz siê
zapisaæ i gdzie mo¿esz zadawaæ pytania odnosz±ce siê do funkcji
sieciowych Linuksa. Aby siê zapisaæ musisz wys³aæ nastêpuj±cy list:
<P>
<BLOCKQUOTE><CODE>
<PRE>
To: majordomo@vger.rutgers.edu
Subject: anything at all
Message:
subscribe linux-net
</PRE>
</CODE></BLOCKQUOTE>
<P>W wiêkszo¶ci serwerów IRC istniej± zwykle kana³y <CODE>#linux</CODE>, na
których obecni tam ludzie bêd± potrafili odpowiedzieæ na pytania
dotycz±ce sieci pod Linuksem.
<P>Pamiêtaj, ¿e zg³aszaj±c jakikolwiek problem nale¿y podawaæ jak
najwiêcej dotycz±cych go szczegó³ów. Koniecznie nale¿y podaæ wersje
u¿ywanego oprogramowania, sczególnie wersjê j±dra (uname -a), wersjê
takich narzêdzi jak <EM>pppd</EM> lub <EM>dip</EM> i dok³adn± naturê problemu
na który napotka³e¶. To znaczy dok³adnie zanotowane komunikaty
systemowe jakie otrzyma³e¶ i dok³adny opis sk³adni wydawanych poleceñ.
<P>
<H2>4.3 Sk±d zdobyæ inne, nie zwi±zane z Linuksem informacje natemat technik sieciowych.</H2>
<P>Je¶li szukasz podstawowych informacji o tcp/ip, polecam zapoznanie
siê z nastêpuj±cymi dokumentami:
<DL>
<DT><B>wprowadzenie do tcp/ip </B><DD><P>dostêpne w wersji
<A HREF="ftp://athos.rutgers.edu/runet/tcp-ip-intro.doc">tekstowej</A> i
<A HREF="ftp://athos.rutgers.edu/runet/tcp-ip-intro.ps">postscriptowej</A>.
<DT><B>tcp/zarz±dzanie protoko³em ip</B><DD><P>dostêpne w wersji
<A HREF="ftp://athos.rutgers.edu/runet/tcp-ip-admin.doc">tekstowej</A> i
<A HREF="ftp://athos.rutgers.edu/runet/tcp-ip-admin.ps">postscriptowej</A>.
</DL>
<P>Je¶li poszukujesz dok³adniejszych informacji na temat sieci tcp/ip
mocno polecam:
<P>
<BLOCKQUOTE><CODE>
<PRE>
"Internetworking with TCP/IP"
by Douglas E. Comer
ISBN 0-13-474321-0
Prentice Hall publications.
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¶li chcesz siê nauczyæ w jaki sposób budowaæ programy sieciowe w
¶rodowiskach zgodnych z systemem UNIX, mocno polecam:
<P>
<BLOCKQUOTE><CODE>
<PRE>
"Unix Network Programming"
by W. Richard Stevens
ISBN 0-13-949876-1
Prentice Hall publications.
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>Mo¿esz równie¿ skorzystaæ z grupy dyskusyjnej
<A HREF="news:comp.protocols.tcp-ip">comp.protocols.tcp-ip</A>.
<P>Istotnym ¼ród³em konkretnych informacji technicznych zwi±zanych z
Internetem i protoko³em tcp/ip s± dokumenty RFC. RFC to skrót od
"Request For Comments", jest to standardowy sposób og³aszania i
dokumentowania obowi±zuj±cych standardów internetowych. Istnieje wiele
miejsc sk±d mo¿na popraæ dokumenty RFC. Wiêkszo¶æ z nich to archiwa
ftp, czê¶æ udostêpnia dokumenty RFC równie¿ przez interfejs WWW
dostarczaj±c jednocze¶nie mo¿liwo¶æ przeszukiwania wszystkich
dokumentów w poszukiwaniu s³ów kluczowych.
<P>Jednym z archimum dokumntów RFC jest:
<A HREF="http://pubweb.nexor.co.uk/public/rfc/index/rfc.html">baza danych Nexor RFC</A>.
<P>
<H2><A NAME="s5">5. Podstawowe informacje na temat konfigurowania sieci.</A></H2>
<P>Aby poprawnie skonfigurowaæ sieæ, musisz zapoznaæ siê i zrozumieæ
informacje prezentowane w kolejnych podrozdzia³ach. S± to podstawowe
zasady funkcjonowania sieci, niezale¿nie od jej wewnêtrznej natury.
<P>
<H2>5.1 Czego potrzebujê aby rozpocz±æ?</H2>
<P>Zanim zaczniesz budowaæ lub konfigurowaæ swoj± sieæ bêdziesz
potrzebowa³ kilku rzeczy. Najwa¿niejsze z nich to:
<P>
<H3>Aktualne ¼ród³a j±dra.</H3>
<P>Poniewa¿ j±dro którego u¿ywasz mo¿e nie posiadaæ obs³ugi sieci, lub
kart sieciowych, które posiadasz, bêdziesz prawdopodobnie potrzebowa³
¼ród³a j±dra, aby¶ mog³ skompilowaæ nowe j±dro z odpowiednimi opcjami.
<P>Najnowsz± wersj± j±dra mozna uzyskaæ z:
<A HREF="ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/v2.0">ftp.funet.fi</A>.
<P>Zwykle pliki ¼ród³owe powinny byæ rozpakowane do katalogu
<CODE>/usr/src/linux</CODE>. Je¶li potrzebujesz informacji jak dodaæ do
j±dra dodatkowe ³aty lub jak skompilowaæ j±dro powiniene¶ przeczytaæ
<A HREF="Kernel-HOWTO.pl.html">Kernel-HOWTO</A>.
<P>Je¶li wyra¼nie nie zosta³o to zaznaczone, zalecam pozostanie przy
standardowych wersjach j±dra (te z parzystymi numerami wersji po
pierwszej kropce). Wersje testowo-rozwojowe (z nieparzyst± drug±
liczb±) mog± mieæ zmienion± strukturê wewnêtrzn± lub wprowadzone inne
zmiany uniemo¿liwiaj±ce poprawn± wspó³pracê z innym oprogramowaniem
zainstalowanym na twoim systemie. Je¶li nie jeste¶ pewien, ¿e
poradzisz sobie z tego rodzaju problemami, w po³±czeniu z mo¿liwosæi±
wyst±pienia b³êdu w innym oprogramowaniu, nie u¿ywaj wersji rozwojowych.
<H3>Aktualne narzêdzia sieciowe.</H3>
<P>Narzêdzia sieciowe to programy s³u¿±ce do konfigurowania urz±dzeñ
sieciowych Linuksa. Np. pozwalaj± na przydzielenie urz±dzeniu numeru adresu
IP lub na skonfigurowanie routingu (marszruty).
<P>Nowe dystrybucje Linuksa zawieraj± wszelkie niezbêdne narzêdzia
sieciowe. Je¶li ich jescze nie zainstalowa³e¶, powiniene¶ to teraz
zrobiæ.
<P>Je¶li nie instalowa³e¶ Linuksa z dystrybucji, bêdziesz musia³ pobraæ
¼ród³a i skompilowaæ narzêdzia samodzielnie. To nie jest trudne.
<P>Narzêdziami sieciowymi opiekuje siê Bernd Eckenfels i s± dostêpne pod
adresem:
<A HREF="ftp://ftp.inka.de/pub/comp/Linux/networking/NetTools/">ftp.inka.de</A> lub kopia
<A HREF="ftp://ftp.linux.uk.org/pub/linux/Networking/PROGRAMS/NetTools/">ftp.linux.uk.org</A>.
<P>Pamiêtaj aby wybrac wersjê najbardziej odpowiedni± dla wersji j±dra,
które posiadasz, postêpuj zgodnie z uwagami zawartymi w instalowanym
pakiecie.
<P>Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu
musisz wykonaæ nastêpuj±ce polecenia:
<P>
<PRE>
#
# cd /usr/src
# tar xvfz net-tools-1.32-alpha.tar.gz
# cd net-tools-1.32-alpha
# make config
# make
# make install
#
</PRE>
<P>Dodatkowo je¶li zamierzasz skonfigurowaæ firewall lub korzystaæ z
funkcji IP Masquerade, potrzebujesz programu <EM>ipfwadm</EM>. Najnowsz±
wersjê mo¿na zdobyæ tutaj:
<A HREF="ftp:/ftp.xos.nl/pub/linux/ipfwadm">ftp.xos.nl</A>. Pamiêtaj, ¿e dostêpnych jest kilka
wersji. Musisz wybraæ tê, która najlepiej wspó³pracuje z j±drem, które
posiadasz.
<P>Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu
musisz wykonaæ nastêpuj±ce polecenia:
<P>
<PRE>
#
# cd /usr/src
# tar xvfz ipfwadm-2.3.0.tar.gz
# cd ipfwadm-2.3.0
# make
# make install
#
</PRE>
<P>
<H3>Programy-aplikacje sieciowe.</H3>
<P>Sieciowe programy u¿ytkowe (aplikacje sieciowe) to takie, jak
np. <EM>telnet</EM>,<EM>ftp</EM> i ich odpowiedniki po stronie
serwera. Dystrybucj± wiêkszo¶ci z nich zajmuje siê David Holland
<CODE><dholland@hcs.harvard.edu></CODE> . Mo¿na je zdobyæ z
<A HREF="ftp://ftp.uk.linux.org/pub/linux/Networking/base">ftp.uk.linux.org</A>.
<P>Aby skonfigurowaæ wersjê aktualn± w momencie pisania tego dokumentu
musisz wykonaæ nastêpuj±ce polecenia:
<P>
<PRE>
#
# cd /usr/src
# tar xvfz /pub/net/NetKit-B-0.08.tar.gz
# cd NetKit-B-0.08
# more README
# vi MCONFIG
# make
# make install
#
</PRE>
<P>
<H3>Adresy.</H3>
<P>Adresy protoko³u IP (Internet Protocol) sk³adaj± siê z czterech
bajtów. Zwykle zapisuje siê w notacji zwanej 'dziesiêtn± z kropkami'
(decimal dotted notation). Ka¿dy bajt jest zamieniany na liczbê
dziesiêtn± (0-255), opuszczaj±c wszelkie zera na pocz±tku (chyba, ¿e
liczba jest równa zero) i zapisywany kolejno, rozdzielony jeden od
drugiego kropk± `.'. Konwencja wymaga, aby ka¿dy interfejs sieciowy
komputer czy routera posiada³ w³asny numer IP. Mo¿na ten sam numer
przydzielaæ do ró¿nych urz±dzeñ sieciowych jednego komputera, lecz
zwykle ka¿dy interfejs posiada w³asny numer IP.
<P>Numery IP sieci to nieprzerwane sekwencje adresów IP. Wszystkie adresy
nale¿±ce do jednej sieci maj± wspóln± liczbê cyfr w pe³nym adresie IP.
Czê¶æ adresu wspólna dla wszystkich adresów IP nale¿±cych do sieci
nazywa siê numerem sieci (adresu IP).Pozosta³e cyfry okre¶laj±
adres komputera . Liczba bitów które s± wszpólne dla wszystkich
adresów w ramach jednej sieci nazywamy mask± sieci (netmask±). Rol±
netmaski jest okre¶lenie które adresy przynale¿± do sieci, której ona
dotyczy, a które nie. Rozwa¿my nastêpuj±cy przyk³ad:
<P>
<P>
<PRE>
----------------- ---------------
Host Address 192.168.110.23
Adres komputera
Network Mask 255.255.255.0
Netmaska
Network Portion 192.168.110.
Cze¶æ sieciowa adresu
Host portion .23
Cze¶æ komputerowa adresu
----------------- ---------------
Network Address 192.168.110.0
Adres sieci
Broadcast Address 192.168.110.255
Adres og³oszeniowy (informacja wys³ana pod ten adres dotrze do
wszystkich komputerów danej sieci)
----------------- ---------------
</PRE>
<P>Je¶li dowolny adres IP poddamy operacji bitowej koniunkcji z jego
netmask±, otrzymamy w ten sposób adres sieci, do której on
nale¿y. Adres sieci jest zatem najmniejszym adresem w puli adresów
danej sieci z zawsze wype³nion± zerami czêsci± komputerow± adresu.
<P>Adres og³oszeniowy (broadcast) to specjalny adres IP. Wszystkie
komputery w danej sieci prócz nas³uchiwania pakietów adresowanych pod
ich numer IP, nas³uchuj± równie¿ pakietów kierowanych na ten adres.
Je¶li chemy wys³aæ pakiet, który ma dotrzeæ do wszystkich komputerów w
danej sieci, korzystamy w³a¶nie z adresu og³oszeniowego. Ró¿nego
rodzaje informacje dotycz±ce np. trasowania (routingu) lub zawieraj±ce
ró¿ne ostrzerzenia nadawane s± w³a¶nie na ten adres, tak aby
wszystkie komputery otrzyma³y go jednocze¶nie. Istniej± dwa standardy
jak powinien wygl±daæ adres og³oszeniowy. W powy¿szym przyk³adzie by³ to
<CODE>192.168.110.255</CODE>. Z nieznanych przyczyn w niektórych miejscach
jako adresu og³oszeniowego u¿ywa siê adresu sieci. W praktyce
zasadniczo nie ma znaczenia, której konwencji uzywamy, pod warunkiem,
¿e wszystkie komputery maj± skonfigurowany adres og³oszeniowy w ten
sam sposób.
<P>Z przyczyn administracyjnych w pocz±tkowym okresie rozwoju protoko³u
IP, pewne grupy adresów IP zosta³u po³±czone w sieci, które z kolei
zosta³y po³±czone w klasy. Te klasy dostarczaj± okre¶lon± liczbê
ró¿nej wielko¶ci sieci, które mog± byæ przydzielane u¿ytkownikom.
Wygl±da to mniej wiêcej tak:
<P>
<PRE>
----------------------------------------------------------
| Klasa | Netmaska | Adresy sieciowe |
| sieci | | |
----------------------------------------------------------
| A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 |
| B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 |
| C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 |
|Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 |
----------------------------------------------------------
</PRE>
<P>
<P>Z których adresów powiniene¶ korzystaæ zale¿y bezpo¶rednio od tego co
robisz. Aby uzyskaæ wszystkie adresy których potrzebujesz mo¿esz byæ
zmuszony do wykonania kombinacji nastêpuj±cych dzia³añ:
<P>
<DL>
<DT><B>Instalacja Linuksa w istniej±cej sieci IP</B><DD><P>Je¶li chesz
zainstalowaæ Linuksa w istniej±cej sieci IP powiniene¶ skontaktowaæ siê z
administratorem sieci i poprosiæ go o nastêpuj±ce informacje:
<UL>
<LI>Adres IP komputera</LI>
<LI>Adres IP sieci</LI>
<LI>Adrs og³oszeniowy (broadcast)</LI>
<LI>Netmaska </LI>
<LI>Adres routera</LI>
<LI>Adres serwera DNS</LI>
</UL>
Nastêpnie powiniene¶ skonfigurowaæ urz±dzenie sieciowe podaj±c
uzyskane informacje. Nie mo¿esz wzi±æ ich z powietrza i oczekiwaæ, ¿e
wszystko bêdzie dzia³aæ poprawnie.
<P>
<DT><B>Budowanie nowej sieci, która nigdy nie bêdzie pod³±czona do
internetu</B><DD><P>Je¶li budujesz prywatn± sieæ i nie masz zamiaru pod³±czaæ j± do
Internetu to mo¿esz wybraæ zupe³nie dowolne numery IP. Jednak dla
bezpieczeñstwa i porz±dku powiniene¶ skorzystaæ z grupy adresów IP
pozostawionych dok³adnie w tym celu. S± one okre¶lone w dokumencie
RFC1597:
<P>
<PRE>
-----------------------------------------------------------
| Zarezerwowane prywatne adresy IP |
-----------------------------------------------------------
| Klasa | Netmaska | Adres komputera |
| sieci | | |
-----------------------------------------------------------
| A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 |
| B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 |
| C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 |
-----------------------------------------------------------
</PRE>
<P>Powiniene¶ siê wpierw zdecydowaæ jak wielka bêdzie twoja sieæ, a
nastêpnie wybraæ tyle adresów IP ile potrzebujesz.
</DL>
<P>
<H2>5.2 Gdzie umie¶ciæ polecenia konfiguracyjne ?</H2>
<P>Istnieje kilka sposobów realizacji procedury uruchamiania systemu
Linux. Po za³adowaniu j±dra uruchamiany jest program o nazwie
`<CODE>init</CODE>'. Program <CODE>init</CODE> odczytuje swój plik konfiguracyjny
<CODE>/etc/inittab</CODE> i kontynuuje proces uruchamiania
systemu. Istnieje kilka odmian programu <CODE>init</CODE> i to jest w³a¶nie
przyczyna ró¿nic w konfiguracji miêdzy ró¿nymi dystrybucjami czy komputerami.
<P>Zwykle plik <CODE>/etc/inittab</CODE> zawiera pozycjê wygl±daj±c± mniej
wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
si::sysinit:/etc/init.d/boot
</PRE>
</CODE></BLOCKQUOTE>
<P>Ten wiersz okre¶la nazwê skryptu który ostatecznie jest odpowiedzialny
za procedurê startow±. Jest to mniej wiêcej odpowiednik pliku
<CODE>AUTOEXEC.BAT</CODE> w DOSie.
<P>Skrypt startowy uruchamia zwykle ró¿ne inne skrypty i sieæ jest
konfigurowana zwykle jednym z takich skryptów.
<P>Poni¿sza tabela mo¿e pos³u¿yæ jako przewodnik po twoim systemie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
-------------------------------------------------------------------------------
Dystryb. |Konfiguracja interfeju(karty)/routingu | Inicjalizacja
-------------------------------------------------------------------------------
Debian |/etc/init.d/network |/etc/init.d/netbase
| |/etc/init.d/netstd_init
| |/etc/init.d/netstd_nfs
| |/etc/init.d/netstd_misc
-------------------------------------------------------------------------------
Slackware|/etc/rc.d/rc.inet1 |/etc/rc.d/rc.inet2
-------------------------------------------------------------------------------
RedHat |/etc/sysconfig/network-scripts/ifup-<ifname>|/etc/rc.d/init.d/network
-------------------------------------------------------------------------------
</PRE>
</CODE></BLOCKQUOTE>
<P>Wiêkszo¶æ nowocze¶nych dystrybucji zawiera program, który umo¿liwi
konfiguracjê wielu podstawowych interfejsów sieciowych. Je¶li masz
taki program powiniene¶ sprawdziæ czy jest on dla ciebie
wystarczaj±cy, zanim zdecydujesz siê na rêczn± modyfikacje.
<P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
-----------------------------------------
Dystryb. | Program konfiguracji sieci
-----------------------------------------
RedHat | /sbin/netcfg
Slackware | /sbin/netconfig
-----------------------------------------
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>
<H2>5.3 Tworzenie interfejsów sieciowych.</H2>
<P>W wiêkszo¶ci systemów Unix urz±dzenia sieciowe znajduj± siê w katalogu
<EM>dev</EM>. W Linuksie tak nie jest. Linux tworzy urz±dzenia sieciowe
dynamicznie, dlatego nie wymaga istnienia plików urz±dzeñ sieciowych.
<P>W wiêkszo¶ci przypadków urz±dzenia sieciowe s± tworzone automatycznie
przez sterowniki tych urz±dzeñ w czasie ich inicjacji i rozpoznawania
sprzêtu. Na przyk³ad sterowniki sieciowych kart ethernetowych tworz±
interfejsy o nazwach <CODE>eth[0..]</CODE> sekwencyjnie w miarê rozpoznawania
kolejnych urz±dzeñ. Pierwsz znaleziona karta ethernetowa staje siê
urz±dzeniem <CODE>eth0</CODE>, druga <CODE>eth1</CODE> itd.
<P>Jednak w niektórych przypadkach, zwykle kiedy korzystamy z protoko³ów
<CODE>SLIP</CODE> lub <CODE>PPP</CODE>, urz±dzenia sieciowe s± tworzone na ¿±danie
programów wykonywanych przez u¿ytkownika. Odbywa siê podobny
sekwencyjny przydzia³ nazw urz±dzeñ, lecz nie dzieje siê to w sposób
automatyczny w czasie ³adowania systemu. Dzieje siê tak dlatego, ¿e
w przeciwieñstwie do kart ethetnetowych liczba aktywnych interfejsów
<CODE>slip</CODE> lub <CODE>ppp</CODE> w ca³ym okresie pracy komputera mo¿e siê
zmieniaæ. Powiemy o tym dok³adniej w dalszej czê¶ci.
<P>
<H2>5.4 Konfiguracja interfejsu sieciowego.</H2>
<P>Je¶li posiadasz ju¿ wszelkie niezbêdne oprogramowanie i informacje o
potrzebnych adresach sieciowych mo¿esz rozpocz±æ konfiguracjê
interfejsu. Kiedy mówimy o konfiguracji interfejsu sieciowego mamy na
my¶li proces przydzielenia mu odpowiedniego adreu IP i nadania
odpowiednich warto¶ci innym jego parametrom. W tym celu najczê¶ciej
pos³ugujemy siê programem <EM>ifconfig</EM> (interface configure).
<P>Zwykle u¿ywa siê go sposób podobny do podanego poni¿ej:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
</PRE>
</CODE></BLOCKQUOTE>
<P>W tym przypadku konfigurujê kartê ethernetow± `<CODE>eth0</CODE>' nadaj±c jej
adres IP `<CODE>192.168.0.1</CODE>' i netmaskê `<CODE>255.255.255.0</CODE>'. Parametr
`<EM>up</EM>' na koñcu wiersza oznacza, ¿e intefejs powinien zostaæ
aktywowany (rozpocz±æ pracê).
<P>
<P>J±dro konfiguruj±c interfejsy sieciowe przyjmuje pewne domy¶lne
warto¶æi parametrów. Na przyk³ad móg³by¶ podaæ adres IP i adres
og³oszeniowy (broadcast) danego interfejsu, lecz je¶li tego nie
zrobisz j±dro znajdzie sensowne warto¶ci dla tych parametrów na
podstawie klasy konfigurowanego adresu IP. W moim przyk³adzie j±dro
przyjmie, ¿e jest interfejs jest konfigurowany w sieci klasy C i
nada adresowi sieci warto¶æ `<CODE>192.168.0.0</CODE>', a adresowi
og³oszeniowemu `<CODE>192.168.0.255</CODE>'.
<P>Polecenie <EM>ifconfig</EM> posiada znacznie wiêcej opcji. Najwa¿niejsze z
nich to:
<P>
<DL>
<DT><B>up</B><DD><P>w³±cznie interfejsu.
<DT><B>down</B><DD><P>wy³±czenie interfejsu.
<DT><B>[-]arp</B><DD><P>w³±czenie lub wy³±czenie korzystania z protoko³u ARP na
tym interfejsie
<DT><B>[-]allmulti</B><DD><P>w³±czenie lub wy³±czenie korzystania z trybu
'promoscious'. Jest to tryb pracy, w którym urz±dzennie mo¿e byæ
zmuszone do odbierania wszelkich pakietów, a nie tylko tych
adresowanych bezpo¶rednio do niego. Jest bardzo wa¿na dla programów
<EM>tcpdump</EM> i innych podgl±daczy pakietów.
<DT><B>mtu N</B><DD><P>ustawienie wielko¶ci parametru <EM>MTU</EM> danego urz±dzenia.
<DT><B>netmask addr</B><DD><P>adres sieci, do której nale¿y (jest pod³±czony) interfejs.
<DT><B>irq addr</B><DD><P>ten parametr ma zastosowanie tylko dla niektórych
modu³ów sprzêtowych. Pozwala na ustawienie warto¶ci przerwania IRQ z
którego powinno korzystaæ dane urz±dzenie.
<DT><B>[-]broadcast [addr]</B><DD><P>pozwala na w³±czenie odbierania pakietów
skierowanych na podany adres og³oszeniowy, lub na zablokowanie
odbierania tych pakietów.
<DT><B>[-]pointopoint [addr]</B><DD><P>pozwala na podanie adresu komputera na
drugim koñsu po³±czenia point-to-point obs³ugiwanego przez ten
interfejs. Ma to miejsce w przypadku takich protoko³ów jak <EM>slip</EM>
czy <CODE>ppp</CODE>.
<DT><B>hw <type> <addr></B><DD><P>pozwala na okre¶lenie adresu sprzêtowego
urz±dzenia lecz tylko dla ograniczonego rodzaju urz±dzeñ. Nie jest
czêsto u¿ywany w sieciach Ethernet, za to czêsto wykorzystuje siê go w
sieciach AX.25.
</DL>
<P>Polecenie <EM>ifconfig</EM> mo¿na stosowaæ dla ka¿dego interfejsu
sieciowego. Niektóre programy u¿ytkownika, jak <EM>pppd</EM> czy <EM>dip</EM>
korzystaj± z niego w celu skonfigurowania interfejsu sieciowego, tu¿
po jego utworzeniu. W takim przypadku nie jest potrzebna rêczna
konfiguracja tych urz±dzeñ.
<P>
<H2>5.5 Konfiguracja resolvera nazw.</H2>
<P>`<EM>Resolver nazw </EM>' jest czêsci± standardowej biblioteki
Linuksa. Jego podstawow± funkcj± jest zamiana wygodnych dla cz³owieka
nazw komputerów, jak `<CODE>ftp.funet.fi</CODE>' na ich adres
<CODE>128.214.248.6</CODE>, którym pos³uguj± siê komputery.
<P>
<H3>Co to jest nazwa?</H3>
<P>Prawdopodobnie spotka³e¶ siê z nazwami komputerów, lecz byæ mo¿e nie
wiesz w jaki sposób s± konstruowane lub rozk³adane. Nazwy domen
internetowych s± w swojej naturze hierachiczne, to znaczy posiadaj±
strukturê drzewiast±. <EM>domena</EM> jest rodzin±, grup±
nazw. <EM>Domena</EM> mo¿e byæ podzielona na <EM>poddomeny</EM>
(subdomain). <EM>Domena najwy¿szego poziomu</EM> (top level domain) jest
domen±, która jednocze¶nie nie jest poddomen±. Domeny najwy¿szego
poziomu s± okre¶lone w dokumencie RFC-920. Poni¿ej kilka przyk³adów
domen najwy¿szego poziomu.
<P>
<DL>
<DT><B>COM</B><DD><P>organizacje komercyjne
<DT><B>EDU</B><DD><P>organizacje edukacyjne
<DT><B>GOV</B><DD><P>organizacje rz±dzowe
<DT><B>MIL</B><DD><P>organizacje wojskowe
<DT><B>ORG</B><DD><P>inne organizacje
<DT><B>oznaczenie kraju</B><DD><P>dwuliterowe kody pañstw, reprezentuj±ce
konkretne pañstwo.
</DL>
<P>Ka¿da z domen najwy¿szego poziomu posiada poddomeny. Domey najwy¿szego
poziomu o nazwach odpowiadaj±cych kodom pañstw, s± zwykle podobnie
podzielone, jak domeny najwy¿szego poziomu tzn. mo¿na tzm znale¼æ
poddomeny <CODE>com</CODE>, <CODE>edu</CODE>, <CODE>gov</CODE>, <CODE>mil</CODE> i <CODE>org</CODE>. Na koniec
otrzymujemy <CODE>com.au</CODE> i <CODE>gov.au</CODE> dla organizacji komercyjnych i
rz±dowych w Australii. Z przyczyn historycznych wiêkszo¶æ domen
nale¿±cych do domen najwy¿szego poziomu dotyczy organizacji
amerykañskich, choæ Stany Zjednoczone maj± równie¿ w³asn± domenê
`<CODE>.us</CODE>'.
<P>Nastêpny poziom podzia³u odzwierciedla zwykle nazwê
instytucji/organizacji. Dalsze poddomeny ró¿ni± siê w swojej naturze,
czêsto ten poziom domen jest zale¿ny od wewnêtrznej struktury
instytucji, lecz mo¿e byæ zale¿ny od dowolnego, rozs±dnego kryterium
przyjêtego przez osoby zarz±dzaj±ce sieci± w danej instytucji.
<P>Ostatni w strukturze cz³on domeny, lecz pierwszy z lewej w jej nazwie
oznacza <EM>nazwê komputera</EM> (hostname) i musi byæ jednoznaczny w
danej poddomenie. Pozosta³a czê¶æ jezt nazywana <EM>domen±</EM> danego
komputera (domainname), a ca³o¶æ jest nazywana `<EM>Fully Qualified
Domain Name FQDM</EM>' - Pe³na nazwa domenowa.
<P>Bior±c za przyk³ad mój komputer pocztowy, jego FQDN to
`<CODE>perf.no.itg.telstra.com.au</CODE>'. To znaczy, ¿e komputer nazywa siê
`<CODE>perf</CODE>', a domena `<CODE>no.itg.telstra.com.au</CODE>'. Nazwa mojej domeny
rozpoczyna siê od cz³onu oznaczaj±cego kraj, Australiê. Poniewa¿
jeste¶my organizacj± komercyjn± kolejnym poziomem jest
`<CODE>com</CODE>'. `<CODE>telstra</CODE>' oznacza nazwê firmy (star±), a dalsze
cz³ony s± pochodn± wewnêtrznej struktury naszej firmy. Moj komputer
nale¿y do Information Technolog Group w sekcji Network Operations.
<P>
<H3>Jakie informacje bêd± niezbêdne.</H3>
<P>Musisz wiedzieæ do jakiej domeny nale¿y twój komputer. Oprogramowanie
resolwera nazw wykonuje swoj± pracê odwo³uj±c siê do <EM>serwera DNS</EM>
(Domain Name Server), bêdziesz potrzebowa³ adres IP najbli¿szego
serwera DNS.
<P>Musisz poprawiæ trzy pliki. Omówiê ka¿dy z nich.
<P>
<H3>/etc/resolv.conf</H3>
<P><CODE>/etc/resolv.conf</CODE> jest g³ównym plikiem konfiguracyjnym
resolwera nazw. Posiada bardzo prosty format. Jest to plik tekstowy
zawieraj±cy jedno polecenie na wiersz. Najczêscie¶ciej stosuje siê trzy
s³owa kluczowe:
<P>
<DL>
<DT><B>domain</B><DD><P>okre¶la nazwê domeny, do której nale¿y dany komputer
<DT><B>search</B><DD><P>okre¶la listê domen, które maj± byæ przeszukiwane w
poszukiwaniu podanej nazwy komputera (w przypadku gdy nazwa komputera
nie zosta³a podana w postaci FQDN)
<DT><B>nameserver</B><DD><P>mo¿e byæ powtórzone wielokrotnie, okre¶la adres
serwera DNS
</DL>
<P>przyk³adowy plik <CODE>/etc/resolv.conf</CODE> móg³by wygl±daæ nastepuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
domain maths.wu.edu.au
search maths.wu.edu.au wu.edu.au
nameserver 192.168.10.1
nameserver 192.168.12.1
</PRE>
</CODE></BLOCKQUOTE>
<P>W przyk³adzie podali¶my, ¿e podstawow± domen±, do której nale¿y
komputer i która bêdzie dodawana do nazwy komputera, je¶li nie zosta³a
podana w formacie FQDN jest <CODE>maths.wu.edu.au</CODE>. Je¶li komputer nie
zostanie znaleziony w tej domenie resolwer przeszuka jeszcze domenê
<CODE>wu.edu.au</CODE>. Podano równie¿ adresy IP dwóch serwerów DNS.
<P>
<H3>/etc/host.conf</H3>
<P>
<P>Plik <CODE>/etc/host.conf</CODE> to plik, które okre¶la niektóre
zachowania resolvera. Jego format jest dok³adnie opisany na stronie
podrêcznika (<CODE>man resolv+</CODE>). W wiêkszo¶ci przypadków wystarczy taki plik:
<P>
<BLOCKQUOTE><CODE>
<PRE>
order hosts,bind
multi on
</PRE>
</CODE></BLOCKQUOTE>
<P>Ta konfiguracja informuje resolver, ¿e poszukuj±c nazwy komputera
nale¿y wpierw sprawdzaæ zawarto¶æ pliku <CODE>/etc/hosts</CODE>, zanim
zacznie siê zadawaæ pytania serwerowi DNS. Oznacza równie¿, ¿e nale¿y
przekazywaæ wszystkie znalezione w tym pliku adresy IP odpowiadaj±ce
nazwie poszukiwanego komputera, a nie tylko pierwszy z nich.
<P>
<H3>/etc/hosts</H3>
<P>Plik <CODE>/etc/hosts</CODE> jest to miejsce, gdzie umieszcza siê nazwy i
adresy lokalnych komputerów. Je¶li umie¶cisz w tym pliku nazwê i adres
komputera, nie musisz pytaæ siê o jego adres serwera DNS. Wad± tego
rozwi±zania jest to, ¿e musisz pamiêtaæ aby informacje zawarte w tym
pliku by³y aktualne. W dobrze zarz±dzanym sytemie w niniejszym pliku
mo¿na zwykle znale¼æ nazwê interfejsu pêtli zwrotnej i nazwy lokalnych
komputerów.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 nazwa.tego.komputera
</PRE>
</CODE></BLOCKQUOTE>
<P>Mo¿esz podaæ wiêcej ni¿ jedn± nazwê odpowiadaj±c± danemu numerowi IP,
jak to zrobili¶my w powy¿szym przyk³adzie w przypadku lokalnej pêtli zwrotnej.
<P>
<H2>5.6 Konfiguracja interfejsu pêtli zwrotnej</H2>
<P>Interfejs pêtli zwrotnej (`<CODE>loopback</CODE>' interface) jest interfejsem
specjalnego rodzaju, umo¿liwiaj±cym nawi±zywanie po³±czeñ z samym sob±.
Istnieje wiele przyczyn, dla których mog³by¶ chcieæ to robiæ. Na
przyk³ad w celu przetestowania oprogramowania sieciowego, bez
konieczno¶ci zawracania g³owy komukolwiek innemu. Adres `<CODE>127.0.0.1</CODE>'
zosta³ przypisany specjalnie dla tego interfejsu. Dlatego niezale¿nie
na którym komputerze bedziesz pracowa³, je¶li po³±czysz siê z
komputerem o adresie <CODE>127.0.0.1</CODE> zawsze to bêdzie ten komputer,
z którego próbujesz nawi±zaæ po³±czenie.
<P>Skonfigurowanie interfejsu pêtli zwrotnej jest proste, musisz siê
upewniæ, ¿e przy starcie sytemu wykonuje siê nastêpuj±ce polecenie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig lo 127.0.0.1
# route add -host 127.0.0.1 lo
</PRE>
</CODE></BLOCKQUOTE>
<P>Wiêcej na temat polecenia <EM>route</EM> powiemy w nastêpnym rozdziale.
<P>
<H2>5.7 Trasowanie (routing).</H2>
<P>Trasowanie ruchu (routing) to ogromny temat. Mo¿na na ten temat
napisaæ bardzo du¿o. Wiêkszo¶æ z was spotka siê z ca³kiem prostymi
konfiguracjami trasowania, a czê¶æ nie. Opowiem o podstawowych prawach
trasowania ruchu. Je¶li potrzebujesz bardziej szczegó³owych informacji
radzê zapoznaæ siê z dokumentami wspomnianymi na pocz±tku.
<P>Rozpocznijmy od definicji. Co to jest trasowanie pakietów IP. Oto
jedna z definicji, któr± ja u¿ywam:
<P>
<P>
<BLOCKQUOTE>
Trasowanie pakietów IP to proces, w którym komputer z
przy³±czeniami do wielu sieci decyduje, gdzie wys³aæ otrzymane pakiety.
</BLOCKQUOTE>
<P>Zilustrujmy to przyk³adem. Wyobra¼my sobie typowy biurowy
router. Móg³by mieæ po³±czenie PPP z internetem, kilka segmentów
ethernetowych obs³uguj±cych stacje robocze i jeszcze jedno po³±czenie
PPP do innego biura. Kiedy router otrzymuje datagram z jednego ze
swoich przy³±czeñ sieciowych, trasowanie jest mechanizmem stosowanym
przez niego do wyboru portu przy³±czeniowego, do którego trzeba
przes³aæ ten datagram. Zwyk³e komputery te¿ musz± wykonywaæ
trasowanie, wszystkie komputery w Internecie posiadaj± dwa urz±dzenia
sieciowe, jedno z nich to urz±dzenie pêtli zwrotnej (loopback
interface) opisane powy¿ej, a drugie to te, którego u¿ywa do
porozumiewania siê z reszt± sieci. Mo¿e to byæ karta ethernetowa lub
port PPP, czy SLIP.
<P>OK, w jaki sposób dzia³a trasowanie? Ka¿dy z komputerów przechowuje
listê zasad trasowania, zwan± tabel± trasowania (routing table). Ka¿dy
wiersz tej tabeli zawiera co najmniej trzy pola, pierwsze oznaczaj±ce
adres docelowy, drugie zawiera nazwê interfejsu przez który nale¿y
wys³aæ datagram, a trzecie, opcjonalne, to adres IP innego komputera
(tzw. gateway), który przeniesie datagram dalej w jego drodze przez
sieæ. Pod Linuksem tabelê trasowania mo¿na zobaczyæ wydaj±c polecenie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# cat /proc/net/route
</PRE>
</CODE></BLOCKQUOTE>
<P>Proces trasowania jest ca³kiem prosty: otrzymujemy przychodz±cy
datagram, adres docelowy (do kogo jest adresowany ten datagram)
zostaje porównany z pozycjami tabeli routingu. Wybiera siê pozycje,
kóra najbardziej pasuje do tego adresu i datagram zostaje przes³any
przez okre¶lony w tej pozycji interfejs. Je¶li pole gatewaya nie jest
puste, wtedy datagram zostaje przes³any do tego komputera przez
okre¶lony w tej pozycji interfejs seciowy, w przeciwnym wyopadku
zak³ada siê, ¿e adres docelowy le¿y na sieci obs³ugiwanej przez podany
interfejs.
<P>Do manipulacji pozycjami tabeli trasowania s³u¿y specjalne
polecenie. Wymaga podania w wierszu poleceñ dodatkowych parametrów i
zamienia je na wywo³ania funkcji systemowych, które prosz± j±dro o
dodanie, zmodyfikowanie lub usuniêcie pozycji w tabeli trasowania
(która znajduje siê w gestii j±dra Linuksa). Polecenie to nazywa siê
`<EM>route</EM>'.
<P>Prosty przyk³ad. Wyobra¼my sobie, ¿e mamy sieæ ehernetow±. Powiedziano
nam, ¿e jest to sieæ klasy C o adresie <CODE>192.168.1.0</CODE>. Nasz komputer
otrzyma³ adres <CODE>192.168.1.10</CODE> i powiedziano nam, ¿e router
przy³±czony do internetu ma adres <CODE>192.168.1.1</CODE>.
<P>Pierwszym krokiem jest poprawne skonfigurowanie interfejsu, w sposób
opisany wcze¶niej:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up
</PRE>
</CODE></BLOCKQUOTE>
<P>Teraz musimy dodaæ pozycjê do tabeli trasowania, aby powiedzieæ j±dru,
¿e datagramy do komputerów, których adresy pasuj±do wzorca
<CODE>192.168.1.*</CODE> powinny byæ wysy³ane przez interfejs
ethernetowy. Stosuje siê w tym celu polecenie zbli¿one do tego:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add -net 192.168.0.0 netmask 255.255.255.0 eth0
</PRE>
</CODE></BLOCKQUOTE>
<P>Zwróæ uwagê na argument `<CODE>-net</CODE>', który mówi programowi <CODE>route</CODE>,
¿e ta pozycja oznacza trasê do ca³ej podsieci (network route). Inn±
mo¿liwo¶ci± jest pozycja okre¶laj±ca trasê do konkretnego adresu IP
tzw. 'host route'.
<P>Powy¿sza pozycja tabeli trasowania umo¿liwi nam komunikacjê ze
wszystkimi komputerami znajduj±cymi siê w naszym segmencie
ethernetowym. A co z wszystkimi innymi adresami IP spoza naszego segmentu?
<P>Dodanie trasy do ka¿dej sieci.komputera z którym chcieliby¶my siê
kiedykolwiek komunikowaæ by³oby ogromnym zadaniem. Dlatego wprowadzono
tzw <EM>trasê domy¶ln±</EM> (default route). Trasa <EM>domy¶lna</EM> pasuje do
ka¿dego adresu docelowego, lecz najgorzej jak tylko jest to
mo¿liwe. Dlatego, je¶li istnieje inna pozycja pasuj±ca do tego adresu,
to ona zostanie wykorzystana zamiast pozycji <EM>domy¶lnej</EM>. Ide±
trasy domy¶lnej jest umo¿liwienie zrealizowania polecenia 'wszystko
inne wys³aæ têdy'. W naszym przyk³adzie oznacza to nastêpuj±ce polecenie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add default gw 192.168.1.1 eth0
</PRE>
</CODE></BLOCKQUOTE>
<P>Argument `<CODE>gw</CODE>' informuje program <CODE>route</CODE>, ¿e nastêpny argument
oznacza adres IP. lub nazwê gatewaya lub routera, do którego nale¿y
przesy³aæ wszystkie datagramy pasuj±cego do tej pozycji. Dalszym
przes³aniem tych datagramów zajmie siê w³a¶nie ten komputer.
<P>Tak wiêc nasza pe³na konfiguracja wygl±da³a by nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0 192.168.1.10 netmask 255.255.255.0 up
# route add -net 192.168.0.0 netmask 255.255.255.0 eth0
# route add default gw 192.168.1.1 eth0
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¶li dobrze siê przyjrzysz plikom `<CODE>rc</CODE>' zajmuj±cymi siê sieci±,
zobaczysz, ¿e przynajmniej jeden z nich wygl±da bardzo podobnie. Jest
to bardzo populana konfiguracja.
<P>Zajmijmy siê troszkê bardziej skomplikowanym przypadkiem. Za³ó¿my, ¿e
zajmujemy siê konfiguracj± routera o którym mówili¶my wcze¶niej, tym
który posiada po³±czenie PPP z Internetem, kilka segmentów sieci
lokalnej. Niech konkretnie bêd± to trzy segmenty eternetowe i jedno
³±cze PPP. Konfiguracja trasowania w tym przypadku wygl±da³a by
nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add 192.168.1.0 netmask 255.255.255.0 eth0
# route add 192.168.2.0 netmask 255.255.255.0 eth1
# route add 192.168.3.0 netmask 255.255.255.0 eth2
# route add default ppp0
</PRE>
</CODE></BLOCKQUOTE>
<P>Ka¿da ze stacji roboczych u¿ywa³aby prostszej formy prezentowanej
wcze¶niej. Tylko router musi okre¶liæ oddzielnie trasê do ka¿dej z
sieci, poniewa¿ w przypadku stacji roboczej pozycja <EM>domy¶lna</EM>
obs³u¿y wszystkie po³±czenia pozostawiaj±c routerowi zmartwienie
odpowiedniego podzia³u ruchu. Mo¿esz siê zastanawiaæ, dlaczego trasa
domy¶lna na routerze nie posiada argumentu <CODE>gw</CODE>. Przyczyna jest
prosta. Protoko³y urz±dzeñ szeregowych, takich jak PPP czy SLIP, zawsze
maj± w swojej sieci tylko dwa komputery, po jednym na ka¿dym koñcu.
Wskazywanie komputera po drugiej stronie po³±czenia jako gatewaya jest
niepotrzebne i nadmiarowe, poniewa¿ nie ma innej mo¿liwo¶ci ni¿
przes³aæ pakiety na drugi koniec po³±czenia PPP. Dlatego nie jest
potrzebne okre¶anie w tego rodzaju po³±czeniach gatewaya. Podania
gatewaya wyagaj± w takiej sytuacji inne rodzaje sieci, np. ethernet,
arcnet, token ring, które obs³uguj± wiele komputerów na jednym
segmencie.
<P>
<H3>Do czego s³u¿y program <EM>routed</EM> ?</H3>
<P>Konfiguracja trasowania opisana powy¿ej nadaje siê dla prostych
konfiguracji sieci, gdzie zawsze istnieje tylko jedna droga do
celu. W przypadku bardziej skomplikowanych konfiguracji sieci, sprawy
nieco siê komplikuj±. Na szczê¶cie wiêkszo¶ci was to nie dotyczy.
<P>Najwieksze k³opoty jakie sprawia 'trasowanie rêczne' lub inaczej
mówi±c 'statyczne', polegaj± na tym, ¿e w przypadku przerwania ³±cza
do komputera docelowego, jedyn± metod± nawi±zania komunikacji inn±
drog± (je¶li taka istnieje) jest rêczna interwencja w tabelê
trasowania (rêczne uruchomienie odpowiednich poleceñ). Naturalnie jest
to bardzo powolne, niepraktyczne i ryzykowne. Zosta³y rozwiniête
techniki w celu automatycznej modyfikacji tabeli trasowania w
przypadku awarii po³±czeñ w celu prze³±czenia ruchu na drogi
obej¶ciowe, wszystkie te metody nazywane s± ogólnie 'trasowaniem dynamicznym'.
<P>Byæ mo¿e s³ysza³e¶ o najbardziej popularnych protoko³ach dynamicznego
trasowania. Najczêsciej wystêpuj±cym jes RIP (Routing Information
Protocol) i OSPF (Open Shortest Path First Protocol). RIP jest bardzo
populany w ma³ych sieciach takich jak ma³ego rozmiaru sieci
korporacyjne lub sieci miêdzy budynkami. OSPF jest nowocze¶niejszym i
bardziej sprawnym protoko³em, lepiej nadaj±cym siê do obs³ugi du¿ych
konfigracji sieci i lepiej nadaje siê do zastosowania w ¶rodowiskach,
gdzie istnieje du¿a liczba mo¿liwych tras przesy³ania
pakietu. Powszechnymi implementacjami tych protoko³ów s± programy
<EM>routed</EM> -RIP i <EM>gated</EM> -RIP,OSPF i inne. <EM>routed</EM> jest
zwykle w ka¿dej dystrybucji Linuksa, lub mo¿na go znale¼æ w pakiecie
`NetKit' opisanym wcze¶niej.
<P>Przyk³ad, który mog³by wymagaæ zastosowania dynamicznego trasowania
móg³by wygl±daæ nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
192.168.1.0 / 192.168.2.0 /
255.255.255.0 255.255.255.0
- -
| |
| /-----\ /-----\ |
| | |ppp0 // ppp0| | |
eth0 |---| A |------//---------| B |---| eth0
| | | // | | |
| \-----/ \-----/ |
| \ ppp1 ppp1 / |
- \ / -
\ /
\ /
\ /
\ /
\ /
\ /
\ /
\ /
ppp0\ /ppp1
/-----\
| |
| C |
| |
\-----/
|eth0
|
|---------|
192.168.3.0 /
255.255.255.0
</PRE>
</CODE></BLOCKQUOTE>
<P>Mamy tutaj trzy routery A,B i C. Ka¿dy obs³uguje segment sieci klasy C
(netmaska 255.255.255.0). Ka¿dy router posiada równie¿ ³±cze PPP do
ka¿dego z pozosta³ych routerów. Sieæ tworzy trójk±t.
<P>Powinno byæ ju¿ oczywiste, ¿e tabela trasowania na routerza A wygl±da
nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
# route add -net 192.168.2.0 netmask 255.255.255.0 ppp0
# route add -net 192.168.3.0 netmask 255.255.255.0 ppp1
</PRE>
</CODE></BLOCKQUOTE>
<P>Taka konfiguracja bêdzie dzia³a³a poprawnie, dopóki po³±czenie
pomiêdzy routerami A i B bêdzie pracowaæ poprawnie. Je¶li nast±pi
awaria tego po³±czenia komputery na segmencie A nie bêd± w stanie
osi±gn±æ komputerów segmentu B i na odwrót poniewa¿ ich datagramy bêd±
kierowane do interfejsu ppp0 routera A, który uleg³ w³a¶nie awarii.
Jednak komputery z segmentu B bêd± mog³y nadal komunikowaæ siê z
segmentem D i na odwrót poniewa¿ po³±czenie PPP pomiêdzy komputerami
pozosta³o nietkniête.
<P>Zaczekaj! Skoro A mo¿e komunikowaæ siê z C i C mo¿e komunikowaæ siê z
B dlaczego nie przesy³aæ datagramów adresowanych do B przez C
zrzucaj±c na niego dostarczenie ich do B? To jest w³a¶nie rodzaj
problemu, do rozwi±zania którego powsta³y protoko³y trasowania
dynamicznego, jak np. RIP. Gdyby na ka¿dym z routerów by³ uruchominy
program <EM>routed</EM> wtedy tablice trasowania zosta³yby automatycznie
poprawione, tak aby odzwierciedla³y nowy stan sieci w przypadku awarii
któregokolwiek po³±czenia. Utworzenie takiej konfiuracji jest
proste. Na ka¿dym z routerów nale¿y zrobiæ dwie rzeczy. W przypadku
routera A:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# route add -net 192.168.1.0 netmask 255.255.255.0 eth0
# /usr/sbin/routed
</PRE>
</CODE></BLOCKQUOTE>
<P>Demon `<EM>routed</EM>' tu¿ po uruchomieniu automatycznie znajdzie aktywne
porty przy³±czeñ sieciowych, nastêpnie bêdzie do nich rozsy³a³ i
nas³uchiwa³ przychodz±cych z nich komunikatów pozwalaj±c w ten sposób
okre¶lenie poprawnej tabeli trasowania.
<P>To by³ bardzo krótki opis trasowania dynamicznego i jego
zastosowañ. Je¶li potrzebujesz wiêcej informacji powiniene¶
zapoznaæ siê dokumentami, do których referencje znajdziesz na pocz±tku
tego dokumentu.
<P>Istotne sprawy dotycz±ce dynamicznego trasowania:
<OL>
<LI>Potrzeba uruchomienia demona protoko³u dynamicznego trasowania
zachodzi jedynie wtedy, gdy twój Linux ma mo¿liwo¶æ wyboru trasy do
komputera docelowego.</LI>
<LI>Demon trasowania dynamicznego bêdzie automatycznie modyfikowa³
tabelê trasowania dopasowuj±c j± do zmian w strukturze sieci.</LI>
<LI>RIP nadaje siê do sieci ma³ych i ¶rednich.
</LI>
</OL>
<P>
<H2>5.8 Konfiguracja serwerów i us³ug sieciowych.</H2>
<P>Serwery i us³ugi sieciowe s± to te programy, które pozwalaj± zdalnemu
u¿ytkownikowi staæ siê u¿ytkownikiem twojego komputera. Zdalny
u¿ytkownik ustanawia po³±czenie sieciowe z twoim komputerem i
programem oferuj±cym us³ugê, lub demonem sieciowym, nas³uchuj±cym na
danym porcie, akceptuje po³±czenie i wykonuje program. Istniej± dwa
tryby pracy demonów sieciowych. Oba s± równie czêsto stosowane. Oto one:
<P>
<DL>
<DT><B>niezale¿ny</B><DD><P>program-demon sieciowy nas³uchuje na okre¶lonych
portach sieciowych i w momencie zestawienia przychodz±cego po³±czenia,
sam zarz±dza tym po³±czeniem w celu udostêpnienia danej us³ugi.
<DT><B>podporz±dkowany serwerowi <EM>inetd</EM></B><DD><P>serwer <EM>inetd</EM> jest
specjalnym programem-demonem sieciowym specjalizuj±cym siê w obs³udze
zestawiania po³±czeñ sieciowych. Posiada w³asny plik konfiguracyjny,
który mówi mu, który program obs³ugi us³ugi powinien
zostaæ uruchomiony dla zaistnia³ej kombinacji typu po³±czenia (tcp lub
udp) i numeru portu. Porty s± opisane w innym pliku, o którym opowiemy
ju¿ nied³ugo.
</DL>
<P>Istniej± dwa wa¿ne pliki konfiguracyjne. S± to
<CODE>/etc/services</CODE>: plik, który kojarzy nazwy z numerami portów i
<CODE>/etc/inetd.conf</CODE>: plik konfiguracyjny demona <EM>inetd</EM>.
<P>
<H3><CODE>/etc/services</CODE></H3>
<P>Plik <CODE>/etc/services</CODE> jest prost± baz±, która kojarzy ³atwe dla
cz³owieka nazwy portów z wykorzystywanymi przez komputery
numerami. Posiada bardzo prosty format. Jest to plik tekstowy, którego
ka¿dy wiersz jest jednym rekordem informacji. Ka¿dy rekord sk³ada siê
z trzech pól, rozdzielonych dowoln± ilo¶ci± bia³ych znaków (tabulator
lub odstêp):
<P>
<PRE>
nazwa port/protokó³ aliasy # komentarz
</PRE>
<P>
<DL>
<DT><B>nazwa</B><DD><P>jedno s³owo reprezentuj±ce opisywan± us³ugê.
<DT><B>port/protokó³</B><DD><P>to pole jest podzielone na dwie czê¶ci
<DL>
<DT><B>port</B><DD><P>numer okre¶laj±cy numer portu pod którym bêdzie
dostêpna dana us³uga. Wiekszo¶æ popularnych us³ug ma ju¿ przydzielone
numery portów. S± opisane w <CODE>RFC-1340</CODE>.
<DT><B>protokó³</B><DD><P>mo¿e to byæ albo <CODE>tcp</CODE>
albo <CODE>udp</CODE>.
</DL>
<P>Nale¿y zapamiêtaæ, ¿e pozycja <CODE>18/tcp</CODE> jest zupe³nie inna ni¿
pozycja <CODE>18/udp</CODE> i nie ma ¿adnych technicznych uwarunkowañ,
dlaczego dana us³uga mia³aby istnieæ w obu przypadkach. Nale¿y zachowaæ
zdrowy rozs±dek. Je¶li która¶ z us³ug jest rzeczywi¶cie dostêpna
zarówno przez <CODE>tcp</CODE>, jak i przez <CODE>udp</CODE>, wtedy rzeczywi¶cie
w <CODE>/etc/services</CODE> znajd± siê obie te pozycje.
<DT><B>aliasy</B><DD><P>inne nazwy, pod którymi bêdzie znana ta us³uga.
</DL>
<P>Dowolny tekst w wierszu po znaku `<CODE>#</CODE>' jest traktowany jako
komentarz i ignorowany.
<P>
<H3>Przyk³ad pliku <CODE>/etc/services</CODE>.</H3>
<P>Wszystkie nowe dystrybucje Linuksa dostarczaj± dobry plik
<CODE>/etc/services</CODE>. Na wszelki wypadek, gdyby¶ chcia³ zbudowaæ
swój komputer od zera oto kopia pliku <CODE>/etc/services</CODE> jaki jest
dostarczany razem z dystrybucj±
<A HREF="http://www.debian.org/">Debian</A>.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/services:
# $Id: NET-3-HOWTO.pl.sgml,v 1.4 2001/12/15 09:56:17 bart Exp $
#
# Network services, Internet style
#
# Note that it is presently the policy of IANA to assign a single well-known
# port number for both TCP and UDP; hence, most entries here have two entries
# even if the protocol doesn't support UDP operations.
# Updated from RFC 1340, ``Assigned Numbers'' (July 1992). Not all ports
# are included, only the more common ones.
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp # message send protocol
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp-data 20/tcp
ftp 21/tcp
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp # SSH Remote Login Protocol
telnet 23/tcp
# 24 - private
smtp 25/tcp mail
# 26 - unassigned
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
nameserver 42/tcp name # IEN 116
whois 43/tcp nicname
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp # Remote Mail Checking Protocol
domain 53/tcp nameserver # name-domain server
domain 53/udp nameserver
mtp 57/tcp # deprecated
bootps 67/tcp # BOOTP server
bootps 67/udp
bootpc 68/tcp # BOOTP client
bootpc 68/udp
tftp 69/udp
gopher 70/tcp # Internet Gopher
gopher 70/udp
rje 77/tcp netrjs
finger 79/tcp
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol
link 87/tcp ttylink
kerberos 88/tcp kerberos5 krb5 # Kerberos v5
kerberos 88/udp kerberos5 krb5 # Kerberos v5
supdup 95/tcp
# 100 - reserved
hostnames 101/tcp hostname # usually from sri-nic
iso-tsap 102/tcp tsap # part of ISODE.
csnet-ns 105/tcp cso-ns # also used by CSO name server
csnet-ns 105/udp cso-ns
rtelnet 107/tcp # Remote Telnet
rtelnet 107/udp
pop-2 109/tcp postoffice # POP version 2
pop-2 109/udp
pop-3 110/tcp # POP version 3
pop-3 110/udp
sunrpc 111/tcp portmapper # RPC 4.0 portmapper TCP
sunrpc 111/udp portmapper # RPC 4.0 portmapper UDP
auth 113/tcp authentication tap ident
sftp 115/tcp
uucp-path 117/tcp
nntp 119/tcp readnews untp # USENET News Transfer Protocol
ntp 123/tcp
ntp 123/udp # Network Time Protocol
netbios-ns 137/tcp # NETBIOS Name Service
netbios-ns 137/udp
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
imap2 143/tcp # Interim Mail Access Proto v2
imap2 143/udp
snmp 161/udp # Simple Net Mgmt Proto
snmp-trap 162/udp snmptrap # Traps for SNMP
cmip-man 163/tcp # ISO mgmt over IP (CMOT)
cmip-man 163/udp
cmip-agent 164/tcp
cmip-agent 164/udp
xdmcp 177/tcp # X Display Mgr. Control Proto
xdmcp 177/udp
nextstep 178/tcp NeXTStep NextStep # NeXTStep window
nextstep 178/udp NeXTStep NextStep # server
bgp 179/tcp # Border Gateway Proto.
bgp 179/udp
prospero 191/tcp # Cliff Neuman's Prospero
prospero 191/udp
irc 194/tcp # Internet Relay Chat
irc 194/udp
smux 199/tcp # SNMP Unix Multiplexer
smux 199/udp
at-rtmp 201/tcp # AppleTalk routing
at-rtmp 201/udp
at-nbp 202/tcp # AppleTalk name binding
at-nbp 202/udp
at-echo 204/tcp # AppleTalk echo
at-echo 204/udp
at-zis 206/tcp # AppleTalk zone information
at-zis 206/udp
z3950 210/tcp wais # NISO Z39.50 database
z3950 210/udp wais
ipx 213/tcp # IPX
ipx 213/udp
imap3 220/tcp # Interactive Mail Access
imap3 220/udp # Protocol v3
ulistserv 372/tcp # UNIX Listserv
ulistserv 372/udp
#
# UNIX specific services
#
exec 512/tcp
biff 512/udp comsat
login 513/tcp
who 513/udp whod
shell 514/tcp cmd # no passwords used
syslog 514/udp
printer 515/tcp spooler # line printer spooler
talk 517/udp
ntalk 518/udp
route 520/udp router routed # RIP
timed 525/udp timeserver
tempo 526/tcp newdate
courier 530/tcp rpc
conference 531/tcp chat
netnews 532/tcp readnews
netwall 533/udp # -for emergency broadcasts
uucp 540/tcp uucpd # uucp daemon
remotefs 556/tcp rfs_server rfs # Brunhoff remote filesystem
klogin 543/tcp # Kerberized `rlogin' (v5)
kshell 544/tcp krcmd # Kerberized `rsh' (v5)
kerberos-adm 749/tcp # Kerberos `kadmin' (v5)
#
webster 765/tcp # Network dictionary
webster 765/udp
#
# From ``Assigned Numbers'':
#
#> The Registered Ports are not controlled by the IANA and on most systems
#> can be used by ordinary user processes or programs executed by ordinary
#> users.
#
#> Ports are used in the TCP [45,106] to name the ends of logical
#> connections which carry long term conversations. For the purpose of
#> providing services to unknown callers, a service contact port is
#> defined. This list specifies the port used by the server process as its
#> contact port. While the IANA can not control uses of these ports it
#> does register or list uses of these ports as a convienence to the
#> community.
#
ingreslock 1524/tcp
ingreslock 1524/udp
prospero-np 1525/tcp # Prospero non-privileged
prospero-np 1525/udp
rfe 5002/tcp # Radio Free Ethernet
rfe 5002/udp # Actually uses UDP only
bbs 7000/tcp # BBS service
#
#
# Kerberos (Project Athena/MIT) services
# Note that these are for Kerberos v4, and are unofficial. Sites running
# v4 should uncomment these and comment out the v5 entries above.
#
kerberos4 750/udp kdc # Kerberos (server) udp
kerberos4 750/tcp kdc # Kerberos (server) tcp
kerberos_master 751/udp # Kerberos authentication
kerberos_master 751/tcp # Kerberos authentication
passwd_server 752/udp # Kerberos passwd server
krb_prop 754/tcp # Kerberos slave propagation
krbupdate 760/tcp kreg # Kerberos registration
kpasswd 761/tcp kpwd # Kerberos "passwd"
kpop 1109/tcp # Pop with Kerberos
knetd 2053/tcp # Kerberos de-multiplexor
zephyr-srv 2102/udp # Zephyr server
zephyr-clt 2103/udp # Zephyr serv-hm connection
zephyr-hm 2104/udp # Zephyr hostmanager
eklogin 2105/tcp # Kerberos encrypted rlogin
#
# Unofficial but necessary (for NetBSD) services
#
supfilesrv 871/tcp # SUP server
supfiledbg 1127/tcp # SUP debugging
#
# Datagram Delivery Protocol services
#
rtmp 1/ddp # Routing Table Maintenance Protocol
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol
#
# Debian GNU/Linux services
rmtcfg 1236/tcp # Gracilis Packeten remote config server
xtel 1313/tcp # french minitel
cfinger 2003/tcp # GNU Finger
postgres 4321/tcp # POSTGRES
mandelspawn 9359/udp mandelbrot # network mandelbrot
# Local services
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3><CODE>/etc/inetd.conf</CODE></H3>
<P>Plik <CODE>/etc/inetd.conf</CODE> jest plikiem konfiguracyjnym programu
<EM>inetd</EM>. Jego rol± jest poinformowanie <EM>inetd</EM> co powinien
zrobiæ w momencie otrzymania po³±czenia z konkretn± us³ug±. Musisz
powiedzieæ programowi <EM>inetd</EM>, który program obs³ugi uruchomiæ i jak
to zrobiæ. Musisz to zrobiæ dla ka¿dej us³ugi, której po³±czenia maj±
byæ obs³ugiwane przez program <EM>inetd</EM>.
<P>Format tego pliku jest ca³kiem prosty. Jest to plik tekstowy, którego
k±zy wiersz jest niezale¿ny rekordem danych opisuj±cych jedn± z us³ug
jak± chcesz obs³ugiwaæ. Dowolny tekst w wierszu po znaku `<CODE>#</CODE>' jest
traktowany jako komentarz i pomijany. Ka¿dy wiersz sk³ada siê z
siedmiu pól rodzielonych bia³ymi znakami (tabulator lub odstêp) w formacie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
service socket_type proto flags user server_path server_args
us³uga rodzaj_gniazda protokó³ flagi u¿ytkownik ¶cie¿ka_dostêpu arguemnty
</PRE>
</CODE></BLOCKQUOTE>
<P>
<DL>
<DT><B>us³uga</B><DD><P>nazwa us³ugi pobrana przez inetd z
<CODE>/etc/services</CODE>
<DT><B>rodzaj gniazda</B><DD><P>to pole okre¶la rodzaj gniazda jakie zostanie
utworzone, dozwolone warto¶ci to : <CODE>stream</CODE>, <CODE>dgram</CODE>,
<CODE>raw</CODE>, <CODE>rdm</CODE>, or <CODE>seqpacket</CODE>. Dok³adny opis jest do¶æ
skomplikowany ale jako pierwsze przybli¿enie mo¿na potraktowaæ zasadê,
¿e niemal wszystkie us³ugi korzystaj±ce z <CODE>tcp</CODE> u¿ywaj±
<CODE>stream</CODE> i niemal wszystkie us³ugi korzystaj±ce z <CODE>udp</CODE> u¿ywaj±
<CODE>dgram</CODE>. Inne kombinacje parametrów wystêpuj± w bardzo rzadkich
przypadkach specjalizowanych serwerów us³ug.
<P>
<DT><B>protokól</B><DD><P>nazwa protoko³u danej pozycji. Powinien pasowaæ do
odpowiedniej pozycji pliku <CODE>/etc/serwer</CODE> i zwykle jest to
<CODE>tcp</CODE> lub <CODE>udp</CODE>. Us³ugi oparte na Sun RPC (Remote Procedure
Call) bêd± korzysta³y z <CODE>rpc/tcp</CODE> lub <CODE>rpc/udp</CODE>.
<P>
<DT><B>flagi</B><DD><P>istniej± tylko dwie warto¶ci jakie mo¿e przyjmowaæ to
pole. Informuj± one program <CODE>inetd</CODE> czy uruchomiony program obs³ugi
zwalnia gniazdo co pozwala na uruchomienie kolejnego przy nastêpnym
po³±czeniu do tej us³ugi, czy <EM>inetd</EM> powinien zaczekaæ na
zakoñczenie dzia³ania programu obs³ugi, który sam bêdzie obs³ugiwa³
¿±dania zestawienia po³±czenia. Ponownie dok³adny opis jest dosyæ
skomplikowany, lecz w przybli¿eniu mozna powiedzieæ, ¿e wszystkie
us³ugi typu <CODE>tcp</CODE> powinny w tym polu mieæ warto¶æ <CODE>nowait</CODE> i
wiêkszo¶æ us³ug typu <CODE>udp</CODE> powinny przyjmowaæ warto¶æ
<CODE>wait</CODE>. Pamiêtaj, ¿e istniej± znacz±ce wyj±tki od tej regu³y.
<P>
<DT><B>u¿ytkownik</B><DD><P>okre¶la, który u¿ytkownik zdefiniowany w pliku
<CODE>/etc/passwd</CODE> statnie siê w³a¶cicielem uruchomionego demona
sieciowego. Jest to po¿yteczne, gdy chcesz zwiêkszyæ bezpieczeñstwo
swojego systemu. Mo¿esz temu polu nadaæ warto¶æ <CODE>nobidy</CODE> aby w
przypadku z³amania zabezpieczeñ programów obs³ugi wyrz±dzone straty
by³y jak najmniejsze. Zwykle to pole przyjmuje warto¶æ <CODE>root</CODE>,
poniewa¿ wiêkszo¶æ programów obs³ugi do wykonania poprawnie swych zadañ
wymaga uprawnieñ administatora.
<P>
<DT><B>¶cie¿ka_dostêpu</B><DD><P>to pole oznacza pe³n± scie¿kê dostêpu do
programu obs³ugi, który nale¿y uruchomiæ.
<DT><B>argumenty</B><DD><P>zawiera pozosta³± czê¶æ wiersza poleceñ
uruchamianego programu obs³ugi. Jest to parametr opcjonalny. To
w³a¶nie tutaj mo¿esz umie¶ciæ dowolne parametry, które zostan±
przekazane programowi obs³ugi w momencie jego uruchomienia przez
program <CODE>inetd</CODE>.
</DL>
<P>
<H3>Przyk³ad pliku <CODE>/etc/inetd.conf</CODE></H3>
<P>Podobnie jak w przypadku pliku <CODE>/etc/services</CODE> wszystkie
nowoczesne dystrybucje zawieraj± poprawny plik
<CODE>/etc/inetd.conf</CODE>. Na wszelki wypadek poni¿ej mo¿na znale¼æ
plik <CODE>/etc/inetd.conf</CODE> dostarczany z dystrybucj±
<A HREF="http://www.debian.org/">Debian</A> .
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/inetd.conf: see inetd(8) for further informations.
#
# Internet server configuration database
#
#
# Modified for Debian by Peter Tobias <tobias@et-inf.fho-emden.de>
#
# <service_name> <sock_type> <proto> <flags> <user> <server_path> <args>
#
# Internal services
#
#echo stream tcp nowait root internal
#echo dgram udp wait root internal
discard stream tcp nowait root internal
discard dgram udp wait root internal
daytime stream tcp nowait root internal
daytime dgram udp wait root internal
#chargen stream tcp nowait root internal
#chargen dgram udp wait root internal
time stream tcp nowait root internal
time dgram udp wait root internal
#
# These are standard services.
#
telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd
ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd
#fsp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.fspd
#
# Shell, login, exec and talk are BSD protocols.
#
shell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd
login stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind
#exec stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rexecd
talk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.talkd
ntalk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.ntalkd
#
# Mail, news and uucp services.
#
smtp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.smtpd
#nntp stream tcp nowait news /usr/sbin/tcpd /usr/sbin/in.nntpd
#uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/lib/uucp/uucico
#comsat dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.comsat
#
# Pop et al
#
#pop-2 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop2d
#pop-3 stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.pop3d
#
# `cfinger' is for the GNU finger server available for Debian. (NOTE: The
# current implementation of the `finger' daemon allows it to be run as `root'.)
#
#cfinger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.cfingerd
#finger stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.fingerd
#netstat stream tcp nowait nobody /usr/sbin/tcpd /bin/netstat
#systat stream tcp nowait nobody /usr/sbin/tcpd /bin/ps -auwwx
#
# Tftp service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
#
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /boot
#bootps dgram udp wait root /usr/sbin/bootpd bootpd -i -t 120
#
# Kerberos authenticated services (these probably need to be corrected)
#
#klogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k
#eklogin stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind -k -x
#kshell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd -k
#
# Services run ONLY on the Kerberos server (these probably need to be corrected)
#
#krbupdate stream tcp nowait root /usr/sbin/tcpd /usr/sbin/registerd
#kpasswd stream tcp nowait root /usr/sbin/tcpd /usr/sbin/kpasswdd
#
# RPC based services
#
#mountd/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.mountd
#rstatd/1-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rstatd
#rusersd/2-3 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rusersd
#walld/1 dgram rpc/udp wait root /usr/sbin/tcpd /usr/sbin/rpc.rwalld
#
# End of inetd.conf.
ident stream tcp nowait nobody /usr/sbin/identd identd -i
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2>5.9 Inne pliki konfiguracyjne zwi±zane z sieci±.</H2>
<P>Linux posiada jeszcze kilka plików konfiguracyjnych, które maj± wp³yw
na pracê sieci, z którymi powinno siê zapoznaæ. Byæ mo¿e nigdy nie
wyst±pi potrzeba ich modyfikacji, lecz warto wiedzieæ jakie informacje
zawieraj± i czego dotycz±.
<P>
<H3><CODE>/etc/protocols</CODE></H3>
<P>Plik <CODE>/etc/protocols</CODE> zawiera informacje przyporz±dkowuj±ce
nazwom protoko³ów odpowiednie numery. Jest wykorzystywany przez ró¿ne
programy pozwalaj±c na podawanie nazw protoko³ów zamiast numerów oraz
inne programy, jak np <CODE>tcpdump</CODE>, które mog± wy¶wietlaæ nazwy
protoko³ów zamiast ich liczbowej reprezentacji. Sk³adnia pliku jest nastêpuj±ca:
<P>
<BLOCKQUOTE><CODE>
<PRE>
protocolname number aliases
nazwa_protoko³u numer aliasy
</PRE>
</CODE></BLOCKQUOTE>
<P>Plik <CODE>/etc/protocols</CODE> dostarczany w dystrybucji
<A HREF="http://www.debian.org/">Debian</A> wygl±da nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/protocols:
# $Id: NET-3-HOWTO.pl.sgml,v 1.4 2001/12/15 09:56:17 bart Exp $
#
# Internet (IP) protocols
#
# from: @(#)protocols 5.1 (Berkeley) 4/17/89
#
# Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992).
ip 0 IP # internet protocol, pseudo protocol number
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # Internet Group Management
ggp 3 GGP # gateway-gateway protocol
ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'')
st 5 ST # ST datagram mode
tcp 6 TCP # transmission control protocol
egp 8 EGP # exterior gateway protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # user datagram protocol
hmp 20 HMP # host monitoring protocol
xns-idp 22 XNS-IDP # Xerox NS IDP
rdp 27 RDP # "reliable datagram" protocol
iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4
xtp 36 XTP # Xpress Tranfer Protocol
ddp 37 DDP # Datagram Delivery Protocol
idpr-cmtp 39 IDPR-CMTP # IDPR Control Message Transport
rspf 73 RSPF # Radio Shortest Path First.
vmtp 81 VMTP # Versatile Message Transport
ospf 89 OSPFIGP # Open Shortest Path First IGP
ipip 94 IPIP # Yet Another IP encapsulation
encap 98 ENCAP # Yet Another IP encapsulation
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>
<H3><CODE>/etc/networks</CODE></H3>
<P>Plik <CODE>/etc/networks</CODE> ma funkcjê zbli¿on± do funkcji pliku
<CODE>/etc/hosts</CODE>. Jest prost± baz± danych nazw i adresów
sieci. Jego format ró¿ni siê tylko tym, ¿e mo¿e zawieraæ jedynie dwa
pola w wierszu w nastêpujacym formacie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# networkname networkaddress
# nazwa_sieci adres_sieci
</PRE>
</CODE></BLOCKQUOTE>
<P>Przyk³adowy plik móg³by wygl±daæ tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
loopnet 127.0.0.0
localnet 192.168.0.0
amprnet 44.0.0.0
</PRE>
</CODE></BLOCKQUOTE>
<P>W przypadku u¿ywania programu <EM>route</EM> je¶li punkt docelowy jest
sieci±, a sieæ ta znajduje siê w pliku <CODE>/etc/networks</CODE>, wtedy
polecenie route zamiast adresu IP sieci wy¶wietli jej nazwê.
<P>
<H2>5.10 Bezpieczeñstwo sieciowe i sterowanie dostêpem.</H2>
<P>Pozwól, ¿e rozpocznê ten rozdzia³ stwierdzeniem, ¿e zabezbieczanie
komputera i sieci przed z³o¶liwymi atakami jest trudn± i skomplikowan±
sztuk±. Nie uwa¿am siê za aksperta w tej dziedzinie i choæ opisywane
przeze mnie mechanizmy pomog± byæ bardziej bezpiecznym to je¶li bardzo
ci zale¿y na bezpieczeñstwie twojego systemu radzi³bym ci rozejrzeæ
siê dok³adniej w tym temacie. W internecie mo¿na znale¼æ wiele dobrych
referencji na ten temat.
<P>Podstawowa zasada brzmi:
`<B>Nie uruchamiaj serwerów (programów obs³ugi), których nie
zamierzasz u¿ywaæ.</B>'.
Wiele dystrybucji posiada mnóstwo ró¿nego rodzaju oprogramowania,
automatycznie konfigurowanego i uruchamianego. Aby zapewniæ sobie
minimalny poziom bezpieczeñstwa powinno siê przyjrzeæ siê plikowi
<CODE>/etc/inetd.conf</CODE> i skomentowaæ te us³ugi, których nie
zamierzasz u¿ywaæ. Dobrymi kandydatami s±:
<CODE>shell</CODE>, <CODE>login</CODE>, <CODE>exec</CODE>, <CODE>uucp</CODE>, <CODE>ftp</CODE> i serwisy
informacyjne, jak: <CODE>finger</CODE>, <CODE>netstat</CODE> i <CODE>systat</CODE>.
<P>Istnieje wiele mechanizmów sterowania dostêpem do oferowanych us³ug
sieciowych, wymieniê podstawowe.
<P>
<H3>/etc/ftpusers</H3>
<P>Plik <CODE>/etc/ftpusers</CODE> jest prostym mechanizmem pozwalaj±cym na
zabronienie wej¶cia do systemu przez us³ugê ftp niektórym u¿ytkownikom twojego
komputera. <CODE>/etc/ftpusers</CODE> jest odczytywany przez program
obs³uguj±cy us³ugê ftp (<EM>ftpd</EM>) w momencie nawi±zania
przychodz±cego po³±czenia. Plik zawiera listê tych u¿ytkowników,
którzy nie maj± pozwolenia wchodzenie do systemu przez us³ugê
ftp. Móg³by wygladaæ mniej wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/ftpusers - u¿ytkownicy, którzy nie mog± dostac siê do systemu
# przez ftp
root
uucp
bin
mail
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>/etc/securetty</H3>
<P>Pli <CODE>/etc/securetty</CODE> pozwala na okre¶lenie listy urz±dzeñ
<CODE>tty</CODE>, przez które mo¿e logowaæ siê administrator. Plik
<CODE>/etc/securetty</CODE> jest wczytywany przez program weryfikuj±cy
u¿ytkownika (zwykle <EM>/bin/login</EM>). Jest to lista nazw urz±dzeñ,
które mog± byæ wykorzystywane przez administratora na wej¶cie do
systemu. Wej¶cie do systemu przez administratora przez inne urz±dzenia
jest niemo¿liwe.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/securetty - terminale tty przez które administrator mo¿e
# zalogowaæ siê do systemu
tty1
tty2
tty3
tty4
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>Mechanizm sterowania dostêpem pakietu <EM>tcpd</EM>.</H3>
<P>Program <EM>tcpd</EM> jaki prawdopodobnie widzia³e¶ w pliku
<CODE>/etc/inetd.conf</CODE> dostarcza mechanizmów rejestracji i
sterowania dostêpem do us³ug, do ochrony których zosta³ skonfigurowany.
<P>W momencie uruchamiania przez program <EM>inetd</EM> odczytuje swoje dwa
pliki konfiguracyjne, zawieraj±ce zasady dostêpu i albo zezwala, albo
odmawia dostêpu do us³ugi, któr± ochrania.
<P>Przeszukuje zasady znajduj±ce siê plikach konfiguracyjnych, a¿ do
napotkania pierwszej, która pasuje do zaistnia³ej sytuacji. Je¶li
takiej nie znalaz³ zak³ada, ¿e nale¿y pozwoliæ na dostêp. Pliki które
przeszukuje to w kolejno¶ci: <CODE>/etc/hosts.allow</CODE> i
<CODE>/etc/hosts.deny</CODE>. Pokrótce opiszê zawarto¶æ ka¿dego z
nich. Pe³ny opis mo¿liwo¶ci programu <EM>tcpd</EM> znajdziesz na stronach
podrêcznika (<CODE>man hosts_allow</CODE>).
<P>
<H3>/etc/hosts.allow</H3>
<P>Plik <CODE>/etc/hosts.allow</CODE> jest plikiem konfiguracyjnym programu
<EM>/usr/sbin/tcpd</EM>. Plik <CODE>hosts.allow</CODE> zawiera informacje
okre¶laj±ce, które komputery <EM>mog±</EM> uzyskaæ dostêp do chronionej
us³ugi w twoim systemie.
<P>Format pliku jest bardzo prosty:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/hosts.allow
#
# <lista us³ug>: <lista komputerów> [: polecenie]
</PRE>
</CODE></BLOCKQUOTE>
<P>
<DL>
<DT><B><CODE>lista us³ug</CODE></B><DD><P>jest odzielona przecinkami list± nazw programów obs³ugi
chronionej us³ugi do której ma zastosowanie dana regu³a.
Na przyk³ad: <CODE>ftpd</CODE>, <CODE>telnetd</CODE> i <CODE>fingerd</CODE>.
<P>
<DT><B><CODE>lista komputerów</CODE></B><DD><P>jest rozdzielon± przecinkami list± nazw komputerów lub adresów
IP. Mo¿na równie¿ okre¶laæ wzroce adresów lub naz komputerów stsuj±c
znaki specjalne, umo¿liwiajæ tworzenie wzorców reprezentujacych grupy
komputerów. Np. <CODE>gw.v2ktj.ampr.org</CODE> oznacz konkretny komputer,
<CODE>.uts.edu.au</CODE> oznacza dowolny komputer, którego pe³na nazwa koñczy
siê podanym ci±giem znaków, <CODE>44.</CODE> oznacza dowolny adres IP
zawieraj±cy te cyfry. W celu uproszczenia konfiguracji wprowadzono
kilka specjalnych oznaczeñ: <CODE>ALL</CODE> okre¶laj±ce wszystkie komputery,
<CODE>LOCAL</CODE> reprezentuj±cy wszystkei komputery, których nazwa nie
zawiera znaku `<CODE>.</CODE>' tzn. nale¿± do tej samej domeny co twój
komputer, <CODE>PARANOID</CODE> oznaczaj±cy wszystkie komputery, których nazwa
nie odpowiada ich adresowi (name spoofing). I ostatni element bardzo
u¿yteczny, to <CODE>EXCEPT</CODE> pozwalaj±cy na podanie listy z
wyj±tkami. Omówimy to dok³adnie pó¼niej na przyk³adzie.
<P>
<DT><B><CODE>polecenie</CODE></B><DD><P>jest opcjonalnym parametrem. Jest to pe³na ¶cie¿ka dostêpu do
polecenia (programu), który nale¿y uruchomiæ za ka¿dym razem, kiedy
dana regu³a zostanie dopasowana. Mo¿e to byæ polecenie, które bêdzie
próbowa³o zidentyfikowaæ, kto znajduje siê w tej chwili na komputerze
próbuj±cym nawi±zaæ po³±czenia, lub wy¶le wiadomo¶æ lub inny komunikat
adresowany do administratora systemu informuj±c o próbie
po³±czenia. Isnieje kilka wzorców, które zostan± podmienione,
najczê¶ciej wykorzystywane to:
<CODE>%h</CODE> jest zamieniane na nazwê komputera nawi±zuj±cego po³±czenie
lub jego adres je¶li nie posiada nazwy, <CODE>%d</CODE> na nazwê programu
obs³ugi, który zosta³ wywo³any.
</DL>
<P>Przyk³ad:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/hosts.allow
#
# dostêp do poczty dla wszystkich
in.smtpd: ALL
# po³±czenie telnet i ftp tylko z komputerów z lokalnej domeny i
# mojego komputera domowego
telnetd, ftpd: LOCAL, myhost.athome.org.au
# Pozwól na finger z dowolnego komputera, lecz rejestruj kto siê z
# nami ³±czy³
fingerd: ALL: (finger @%h | mail -s "finger from %h" root)
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>/etc/hosts.deny</H3>
<P>Plik <CODE>/etc/hosts.deny</CODE> jest plikiem konfiguracyjnym programu
<EM>/usr/sbin/tcpd</EM>. <CODE>hosts.deny</CODE> zawiera listê
komputerów, które nie mog± uzyskaæ dostêpu do chronionej us³ugi w
twoim systemie.
<P>Prosty przyklad wygl±da³ by mniej wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/hosts.deny
#
# Zabroñ dostêpu wszystkim komputerom o podejrzanych nazwach
ALL: PARANOID
#
# Zabroñ dostêpu wszystkim do wszystkiego
ALL: ALL
</PRE>
</CODE></BLOCKQUOTE>
<P><CODE>PARANOID</CODE> jest w tym przypadku niepotrzebne, poniewa¿ nastêpna
pozycja przechwytuje wszystkie przypadki. Jedna z tych pozycji jest
dobrym punktem wyj¶ciowym do budowy pliku konfiguracyjnego, zale¿nym
od twoich oczekiwañ i wymagañ.
<P>Posiadanie opcji <CODE>ALL: ALL</CODE> w <CODE>/etc/hosts.deny</CODE> i
zezwalanie na dostêp do konkretnych us³ug konkretnym komputerom
(grupom komputerów) w pliku <CODE>/etc/hosts.allow</CODE> jest
najbezpieczniejszym podej¶ciem.
<P>
<H3>/etc/hosts.equiv</H3>
<P>Plik <CODE>hosts.equiv</CODE> jest wykorzystywany nadawania innym komputerom i
zdalnym u¿ytkownikom niektórych uprawnieñ dostêpu do naszych zasobów,
bez konieczno¶ci podawania przez nich has³a. Jest to u¿yteczne w
bezpiecznym ¶rodowisku sieciowym, gdzie posiadamy kontrolê
nad wszystkimi komputerami lecz w innym przypadku jest to bardzo
ryzykowne ze wzglêdu na bezpieczeñstwo naszego komputera. W takim
przypadku twój komputer jest tak bezpieczny, jak najmniej bezpieczny z
zaufanych komputerów. Aby zwiêkszyæ bezpieczeñstwo swojego systemu nie
u¿ywaj tego mechanizmu i zachêcaj swoich u¿ytkowników do nie
korzystania z pliku <CODE>.rhosta</CODE>.
<P>
<H3>Prawid³owa konfiguracja demona <EM>ftp</EM>.</H3>
<P>Wiele miejsc bêdzie zainteresowynych dzia³aj±cym serwerem anonimowego
<EM>ftp</EM>, aby umo¿liwiæ innym pobieranie i wstawianie plików, bez
konieczno¶ci podawania konkretnego identyfikatora u¿ytkownika. Je¶li
zdecydujesz siê udostêpniæ tê us³ugê, pamiêtaj aby prawidlowo
skonfigurowaæ demon <EM>ftpd</EM>. Wiekszo¶æ stron podrêcznika dotycz±cych
<EM>ftpd(8)</EM> opisuje jak to powino byæ zrobione. Powiniene¶ siê
upewniæ, ¿e zawsze stosujesz siê do tych instrukcji. Bardzo wa¿ne
jest, aby¶ nie u¿ywa³ w tym celu kopii swego pliku /etc/passwd w
katalogu etc serwera ftpd. Musisz pamiêtaæ aby usun±æ wszelkie
niepotrzebne informacje dotycz±ce kont, za wyj±tkiem tych niezbêdnych,
w przeciwnym wypadku bêdziesz nara¿ony na ataki wynik³e ze z³amania
hase³ prezentowanych w pliku <CODE>passwd</CODE>.
<P>
<P>
<H3>Firewalle.</H3>
<P>Bardzo dobrym ¶rodkiem na zapewnienie bezpieczeñstwa swojemu systemowi
jest zabronienie dostêpu do twojego komputera wszystkim niepo¿±danym
pakietom. Jest to dokladnie opisane w
<A HREF="Firewall-HOWTO.pl.html">Firewall-HOWTO</A>.
<P>
<H3>Inne sugestie.</H3>
<P>Oto inne, potencjalnie religijne sugestie, które powiniene¶ rozwa¿yæ.
<P>
<DL>
<DT><B>sendmail</B><DD><P>niezale¿nie od swojej popularno¶ci demon
z przera¿aj±c± regularno¶ci± pojawiaj± siê ostrze¿enia o b³êdach w
programie <EM>sendmail</EM>. Wszystko zale¿y od ciebie, lecz ja bym go nie
uruchamia³.
<DT><B>NFS i inne us³ugi Sun RPC</B><DD><P>powiniene¶ siê ich baæ. Istnieje
wiele sposobów wykorzystania b³êdów w tych us³ugach. Bardzo trudno
jest zast±piæ NFS czym¶ innym, dok³adnie upewnij siê komu pozwalasz na
montowanie swoich dysków.
</DL>
<P>
<H2><A NAME="s6">6. Informacje specyficzne technologii sieciowej</A></H2>
<P>Kolejne podrozdzia³y s± specyficzne dla konkretnych technologi
sieciowych. Informacje tam zawarte nie musz± mieæ zastosowania do
innego rodzaju technologii sieciowych.
<P>
<H2>6.1 ARCNet</H2>
<P>Urz±dzenia ARCNET posiadaj± nazwy `<CODE>arc0s</CODE>', `<CODE>arc1e</CODE>',
`<CODE>arc2e</CODE>' itd. Pierwsza karta wykryta przez j±dro otrzymuje nazwê
`<CODE>eth0</CODE>', a dalsze otrzymuj± nazwy z kolejnymi numerami. Litera na
koñcu nazwy oznacza ¿e wybra³e¶ 'ethernet encapsulation' lub standard
pakietu zgodny z RFC1051.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
<*> ARCnet support
[ ] Enable arc0e (ARCnet "Ether-Encap" packet format)
[ ] Enable arc0s (ARCnet RFC1051 packet format)
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¶li posiadasz ju¿ prawid³owo skompilowane j±dro potrafi±ce
obs³ugiwaæ kartê, jej konfiguracja jest bardzo prosta.
<P>Zwykle bêdziesz musia³ wydaæ nastêpuj±ce polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig arc0e 192.168.0.1 netmask 255.255.255.0 up
# route add 192.168.0.0 netmask 255.255.255.0 arc0e
</PRE>
</CODE></BLOCKQUOTE>
<P>Proszê zapoznaj siê z zawarto¶ci± pliku
<CODE>/usr/src/linux/Documentation/networking/arcnet-hardware.txt</CODE>.
<P>Obs³uga sieci ARCNet zosta³a wykonana przez Averyego Pennaruna, <CODE>apenwarr@foxnet.net</CODE>.
<P>
<H2>6.2 Appletalk (<CODE>AF_APPLETALK</CODE>)</H2>
<P>Obs³uga sieci Appletalk nie wprowadza ¿±dnych dodatkowych nazw urz±dzeñ
sieciowych.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
<*> Appletalk DDP
</PRE>
</CODE></BLOCKQUOTE>
<P>Obs³uga Appletalk pozwala twojemu Linuksowi komunikowaæ siê z sieciami
Apple. Bardzo wa¿nym wykorzystywaniem tej mo¿liwo¶ci jest
wspó³dzielenie miêdzy twoim Linuksem i komputerami Apple zasobów takich
jak drukarki, czy dyski. Wymagane jest do tego dodatkowe
oprogramowanie o nazwie <EM>netatalk</EM>. Pakiet <EM>netatalk</EM>
udostêpniaj±cy oprogramowanie implementuj±ce protokó³ Appletalk oraz
kilka po¿ytecznych programów narzêdziowych stworzy³ wraz z
grup± `Research Systems UnixGroup' na uniwersytecie Michigan
reprezentuj±cy ten zespó³ Wesley Craig <CODE>netatalk@umich.edu</CODE> .
Pakiet <EM>netatalk</EM> powiniene¶ otrzymaæ w swojej dystrybucji Linuksa,
lub mo¿esz go pobraæ przez ftp ze ¼ród³a :
<A HREF="ftp://terminator.rs.itd.umich.edu/unix/netatalk/">University of Michigan</A>
<P>
<P>Aby zbudowaæ i zainstalowaæ pakiet, musisz wydaæ nastêpuj±ce polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# cd /usr/src
# tar xvfz .../netatalk-1.4b2.tar.Z
- W tym momencie mo¿esz zmieniæ plik `Makefile', np. w celu zmiany
katalogu docelowego DESTDIR. Domy¶lnie zostanie zainstalowany w
/usr/local/atalk co jest dosyæ bezpiecznym wyborem.
# make
- jako administrator:
# make install
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H3>Konfiguracja oprogramowania Appletalk.</H3>
<P>Pierwsz± rzecz± jak± musisz zrobiæ aby zaczê³o dzia³aæ to dodanie
nowych pozycji do pliku <CODE>/etc/services</CODE>. A mianowicie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
rtmp 1/ddp # Routing Table Maintenance Protocol
nbp 2/ddp # Name Binding Protocol
echo 4/ddp # AppleTalk Echo Protocol
zip 6/ddp # Zone Information Protocol
</PRE>
</CODE></BLOCKQUOTE>
<P>Kolejnym krokiem bêdzie utworzenie plików konfiguracyjnych pakietu w
katalogu <CODE>usr/local/atalk/etc</CODE> (lub tam gdzie go zainstalowa³e¶).
<P>Pierwszym plikiem, który nale¿y utworzyæ jest
<CODE>/usr/local/atalk/etc/atalkd.conf</CODE>. Pocz±tkowo potrzebuje od
jedynie dodania wiersza okre¶laj±cego nazwê urz±dzenia sieciowego,
które obs³uguje sieæ, na której znajduj± siê komputery Apple.
<P>
<BLOCKQUOTE><CODE>
<PRE>
eth0
</PRE>
</CODE></BLOCKQUOTE>
<P>Demon Appletalk po jego uruchomieniu do³o¿y kilka szczegó³ow.
<P>
<H3>Eksportowanie plików Linuksa przez Appletalk.</H3>
<P>Mo¿esz eksportowaæ swoje pliki, tak aby inne komputery sieci Appletalk
mia³y do nich dostêp.
<P>W tym celu nale¿y odpowiednio zmieniæ plik konfiguracyjny
<CODE>/usr/local/atalk/etc/AppleVolumes.system</CODE>. Istnieje równie¿
inny plik konfiguracyjny o nazwie
<CODE>/usr/local/atalk/etc/AppleVolumes.default</CODE> w takim samym
formacie opisuj±cy który system plików zostanie udostêpniony
pod³±czaj±cym siê do nas u¿ytkownikom posiadaj±cym przywileje go¶cia (guest).
<P>Szczegó³owe informacje na temat konfiguracji tych plików, oraz opis
znaczenia wszystkich opcji mo¿na znale¼æ na stronie podrêcznika
po¶wiêconej
<EM>afpd</EM> (man afpd).
<P>Krótki plik przyk³adowy, móg³by wygl±daæ nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
/tmp Scratch
/home/ftp/pub "Obszar ogólnie dostêpny"
</PRE>
</CODE></BLOCKQUOTE>
<P>W tym przyk³adzie eksportujemy katalog <CODE>/tmp</CODE> jako system
plików AppleShare o nazwie `Scratch' oraz katalog anonimowego ftp
jako AppleShare Volume o nazwie "Obszar ogólnie dostêpny".
Nazwy wolumenów nie s± obowi±zkowe, demon wybierz± jak±¶ za ciebie,
lecz przecie¿ nic ciê nie kosztuje podanie nazwy.
<P>
<H3>Udostêpnianie twojej drukarki pod Linuksem w sieci Appletalk.</H3>
<P>Wspó³dzielenie drukarki Linuksa z innymi komputerami sieci Appletalk
jest ca³kiem proste. Musisz uruchomiæ program <EM>papd</EM>, Printer
Access Protocol Daemon. Po uruchomieniu bêdzie akceptowa³ ¿±dania
wydrukowania dokumentu, gromadzi³ go a nastêpnie drukowa³ korzystaj¹c z
programów obs³ugi drukarki pod Linuksem.
<P>Konfiguracja tego programu polega na edycji pliku
<CODE>/usr/local/atalk/etc/papd.conf</CODE>. Sk³adnia jest taka sama, jak
pliku <CODE>/etc/printcap</CODE>. Nazwa jak± nadasz drukarce zostanie
zarejestrowana za pomoc± NBP, protoko³u nazw sieci Appletalk.
<P>Prosta konfiguracja mog³aby wygl±daæ nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
TricWriter:\
:pr=lp:op=cg:
</PRE>
</CODE></BLOCKQUOTE>
<P>Utworzona zosta³a drukarka o nazwie `TricWriter' udostêpniona sieci
Appletalk. Zadania wys³ane na tê drukarkê, bêd± drukowane na drukarce
`<CODE>lp</CODE>' (zdefiniowanej w pliku <CODE>/etc/printcap</CODE>) przy pomocy
programu <EM>lpd</EM>. Pozycja `<CODE>op=cg</CODE>' mówi, ¿e operatorem tej
drukarki jest u¿ytkownik Linuksa o nazwie `<EM>cg</EM>'.
<P>
<H3>Uruchamianie oprogramowania Appletalk.</H3>
<P>Ok, w tej chwili powiniene¶ byæ ju¿ gotowy do sprawdzenia podstawowej
konfiguracji. Pakiet <EM>netatalk</EM> dostarcza pliku <EM>rc.atalk</EM>,
który powinieñ nadawaæ siê dla ciebie. Powiniene¶ jedynie go uruchomiæ:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /usr/local/atalk/etc/rc.atalk
</PRE>
</CODE></BLOCKQUOTE>
<P>Wszystko powinno siê uruchomiæ i dzia³aæ poprawnie. Nie powiniene¶
zobaczyæ, ¿adnych komunikatów o b³êdach, lecz jedynie komunikaty
wys³ane na konsole informuj±ce o zakoñczeniu kolejnych etapów
uruchamiania oprogogramowania.
<P>
<H3>Test oprogramowania Appletalk.</H3>
<P>Aby sprawdziæ, czy oprogramowanie pracuje poprawnie, po³±cz sieæ z
jednym z twoich komputerów Apple, rozwiñ menu g³ówne, wybierz Chooser,
kliknij na AppleShare i powiniene¶ zobaczyæ tam swojego Linuksa.
<P>
<H3>Uwagi na temat korzystania z oprogramowania Appletalk.</H3>
<P>
<UL>
<LI>Byæ mo¿e bedziesz musia³ uruchamiaæ obs³ugê sieci Appletalk
przed skonfigurowaniem sieci IP. Je¶li napotkasz na k³opot
uruchamiaj±c oprogramowania Appletalk, lub po jego uruchomieniu masz
k³opoty ze swoj± sieci± IP, wtedy spróbuj uruchomiæ oprogramowanie
Appletalk przed uruchomieniem skryptu <CODE>rc.inet1</CODE>.
</LI>
<LI><EM>afpd</EM> (Apple Filing Protocol Daemon) robi po¿±dny
ba³agan na twardym dysku. Poni¿ej punktów montowañ tworzy szereg
podkatalogów: <CODE>.AppleDesktop</CODE> i <CODE>Network Trash
Folder</CODE>. Nastêpnie dla ka¿dego katalogu, do którego siêgniesz
utworzy w nim <CODE>.AppleDouble</CODE> aby mieæ gdzie przechowywaæ
'resource forks' itp. Dlatego pomy¶l dwa razy, zanim wyeksportujesz
<CODE>/</CODE>, pó¼niej spêdzisz wiele mi³ych chwil sprz±taj±c po nim.
</LI>
<LI>program <EM>afpd</EM> oczekuje przesy³ania z Maców hase³ czystym
tekstem. To bardzo os³abia bezpieczeñstwo twojego systemu. Musisz byæ
bardzo ostro¿ny uruchamiaj±c ten program na komputerze pod³±czonym do
internetu. Je¶li kto¶ zrobi co¶ z³ego bêdziesz wini³ samego siebie.
</LI>
<LI>Istniej±ce oprogramowanie diagnostyczne np. <EM>netstat</EM> i
<EM>ifconfig</EM> nie obs³uguje Appletalk. Surowa informacja na ten
temat *je¶li jej potrzebujesz) jest dostêpna przez katalog
<CODE>/proc/net</CODE>.</LI>
</UL>
<P>
<H3>Wiêcej informacji</H3>
<P>Wiêcej szczegó³owej informacji w jaki sposób skonfigurowaæ Appletalk
dla Linuksa znajdziesz w <EM>Linux Netatak-HOWTO</EM> :
<A HREF="http://thehamptons.com/anders/netatalk">thehamptons.com</A>.
<P>
<H2>6.3 ATM</H2>
<P>
Projekt obs³ugi Asynchronous Transfer Mode pod Linuksem jest prowadzony
przez Wernera Almesbergera
<CODE><werner.almesberger@lrc.di.epfl.ch></CODE>.
Aktualne informacje na ten temat mo¿na znale¼æ tutaj:
<A HREF="http://lrcwww.epfl.ch/linux-atm/">lrcwww.epfl.ch</A>.
<P>
<H2>6.4 AX25 (<CODE>AF_AX25</CODE>)</H2>
<P>Urz±dzenia AX.25 w j±drze wersji 2.0.* to `<CODE>sl0</CODE>', `<CODE>sl1</CODE>',
itd. w <CODE>2.1.*</CODE> s± to `<CODE>ax0</CODE>', `<CODE>ax1</CODE>', itd.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] Amateur Radio AX.25 Level 2
</PRE>
</CODE></BLOCKQUOTE>
<P>Protoko³y AX25, Netrom i Rose s± opisane w
<A HREF="AX25-HOWTO.html">AX25-HOWTO</A>.
Stosowane s± przez krótkofalowców w eksperymentach z przesy³aniem
pakietów drog± radiow±.
<P>Wiêkszo¶æ pracy zwi±zanej z udostêpnieniem tej funkcji pod Linuksem
wykona³ Jonathon Naylor, <CODE>jsn@cs.not.ac.uk</CODE>.
<P>
<H2>6.5 DECNet</H2>
<P>W chwili obecnej prowadzone s± prace nad obs³ug± sieci DECNet. Powinna
siê pojawiæ w pó¼nych wersjach j±dra serii <CODE>2.1.x</CODE>.
<P>
<H2>6.6 EQL - multiple line traffic equaliser</H2>
<P>Urz±dzenie EQL nosi nazwê `<CODE>eql</CODE>'. W standtardowej wersji j±dra
mo¿esz mieæ w komputerze tylko jedno urz±dzenie EQL. EQL umo¿liwia
wykorzystanie kilku po³±czeñ point-to-point (np. PPP, SLIP, plip) jako
pojedynczego ³±cza logicznego przenosz±cego ruch tcp/ip. Czêsto taniej
jest skorzystaæ z kilku linii o ni¿szej prêdko¶ci ni¿ z jednej linii o
wysokiej prêdko¶ci.
<P>
<B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
<*> EQL (serial line load balancing) support
</PRE>
</CODE></BLOCKQUOTE>
<P>Obs³uga tego mechanizmu wymaga, aby drugi koniec po³±czenia równie¿
obs³ugiwa³ EQL. Linux, Livingstone Portmasters i nowsze serwery
dostêpowe udostêpniaj± tê us³ugê.
<P>Aby skonfigurowaæ EQL bêdziesz potrzebowaæ odpowiednich narzêdzi,
dostêpnych z:
<A HREF="ftp://sunsite.unc.edu/pub/linux/system/Serial/eql-1.2.tar.gz">sunsite.unc.edu</A>.
<P>Sama konfiguracja jest ca³kiem prosta. Rozpoczyna siê od
skonfigurowania interfejsu eql. Jest to taki samo urz±dzenie, jak
ka¿de inne urz±dzenie sieciowe. Konfiguracja adresu IP i wielko¶ci mtu
odbywa siê tak samo za pomoc± programu <EM>ifconfig</EM>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
ifconfig eql 192.168.10.1 mtu 1006
route add default eql
</PRE>
</CODE></BLOCKQUOTE>
<P>Nastêpnie musisz rêcznie zainicjowaæ ka¿d± w linii, któr± bêdziesz
u¿ywa³. Sposób inicjacji po³±czenia bêdzie zale¿a³ od rodzaju tej
linii, wiêcej informacji na ten temat znajdziesz w odpowiednim podrozdziale.
<P>Na koniec potrzebujesz skojarzyæ po³±czenie przez port szeregowy z
urz±dzenie EQL, nazywa siê to `enslaving' i dokonuje siê za pomoc±
polecenia <EM>eql_enslave</EM>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
eql_enslave eql sl0 28800
eql_enslave eql ppp0 14400
</PRE>
</CODE></BLOCKQUOTE>
<P>Parametr `<EM>szacowana prêdko¶æ</EM>' (estimated speed), który podajesz w
poleceniu <EM>eql_slave</EM> nie ma bezpo¶redniego wp³ywu na dzia³anie
systemu. Jest wykorzystywany przez sterownik EQL do okre¶lenia stopnia
podzia³u datagramów które powinny byæ otrzymywane przez urz±dzenie,
mo¿esz w ten sposób dok³adnie dopasowaæ równomierne obci±¿enie
wszystlich linii.
<P>W celu od³±czenia linii od urz±dzenia EQL stosuje siê polecnie <EM>eql_amancipate</EM>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
eql_emancipate eql sl0
</PRE>
</CODE></BLOCKQUOTE>
<P>Budowa tablicy trasowania odbywa siê w taki sam sposób, jak w
przypadku zwyk³ego po³±czenia point-to-point, za wyj±tkiem tego, ¿e
wszystkie trasy zamiast do urz±dzeñ ppp*, sl* powinny siê odnosiæ do
urz±dzenia <CODE>eql</CODE>. Zwykle polecenia wygl±daj± mniej wiêcej tak:
<BLOCKQUOTE><CODE>
<PRE>
route add default eql0
</PRE>
</CODE></BLOCKQUOTE>
<P>Sterownik EQL zosta³ opracowany przez Simona Janesa, <CODE>simon@ncm.com</CODE>.
<P>
<H2>6.7 Ethernet</H2>
<P>Urz±dzenia kart ethernetowych nosz± nazwy `<CODE>eth0</CODE>', `<CODE>eth1</CODE>',
`<CODE>eth2</CODE>' itd. Pierwsza karta wykryta przez j±dro otrzymuje nazwê
`<CODE>eth0</CODE>', a reszta kolejne nazwy w miarê rozpoznawania kart przez system.
<P>Je¶li chcesz siê nauczyæ, jak pracuj± karty ethernetowe pod Linuksem,
przeczytaj
<A HREF="Ethernet-HOWTO.html">Ethernet-HOWTO</A>.
<P>Kiedy j±dro poprawnie rozpoznaje posiadane przez ciebie karty
ethernetowe, ich dalsza konfiguracja jest prosta.
<P>Zwykle wystarcz± takie polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
# route add 192.168.0.0 netmask 255.255.255.0 eth0
</PRE>
</CODE></BLOCKQUOTE>
<P>Wiêkszo¶æ sterowników kart ethernetowych zosta³a opracowana przez
Donalda Beckera <CODE>becker@CESDIS.gsfc.nasa.gov</CODE>.
<P>
<H2>6.8 FDDI</H2>
<P>Urz±dzenia standardu FDDI nosz± nazwy `<CODE>fddi0</CODE>', `<CODE>fddi1</CODE>',
`<CODE>fddi2</CODE>' itd. Pierwsze urz±dzenie rozpoznane przez j±dro otrzymuje
nazwê `<CODE>fddi0</CODE>', a pozosta³e kolejne nazwy w miarê ich
rozpoznawania przez system.
<P>Sterownik kart Digital Equipment Corporation FDDI EISA o PCI zosta³
opracowany przez
Lawrencea V. Stefaniego, <CODE>stefani@lkg.dec.com</CODE>.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] FDDI driver support
[*] Digital DEFEA and DEFPA adapter support
</PRE>
</CODE></BLOCKQUOTE>
<P>Kiedy j±dro poprawnie rozpoznaje posiadane przez ciebie karty,
konfiguracja interfejsu FDDI jest niemal identyczna, jak inicjalizacja
kart ethernetowych. Po prostu jako argument programów <EM>ifconfig</EM> i
<EM>route</EM> podajesz jedynie nazwê odpowiedniego urz±dzenia FDDI.
<P>
<H2>6.9 Frame Relay</H2>
<P>Istniej± dwa rodzaje urz±dzeñ standardu Frame Relay w j±drze Linuksa,
DLCI o nazwach `<CODE>dlci00</CODE>', `<CODE>dlci01</CODE>' itd. oraz FRAD o nazwach
`<CODE>sdla0</CODE>', `<CODE>sdla1</CODE>' itd.
<P>Frame Relay jest now± technologi± sieciow±, przeznaczon± przede
wszystkim dla ruchu ruchu o nieci±g³ej, przerywanej naturze. Do sieci
Frame Relay pod³±cza siê za pomoc± urz±dzenia Frame Relay Access
Device (FRAD). Frame Realy pod Linuksem obs³uguje przesy³anie pakietów
IP zgodnie z opisem przedstawionym w RFC-1490.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
<*> Frame relay DLCI support (EXPERIMENTAL)
(24) Max open DLCI
(8) Max DLCI per device
<*> SDLA (Sangoma S502/S508) support
</PRE>
</CODE></BLOCKQUOTE>
<P>Obs³uga protoko³u Frame Relay, oraz niezbêdne do tego narzêdzia
zosta³y napisane przez Mikea McLagana, <CODE>mike.mclagan@linux.org</CODE>.
<P>W chwili obecnej, jedynym obs³ugiwanym urz±dzeniem FRAD jest
<A HREF="http://www.sangoma.com/">Sangoma Technologies</A>
<CODE>S502A</CODE>, <CODE>S502E</CODE> and <CODE>S508</CODE>.
<P>Po prawid³owym skompilowaniu j±dra, do skonfigurowania urz±dzeñ FRAD i
DLCI s± niezbêdne narzêdzia konfiguracyjne:
<A HREF="ftp://ftp.invlogic.com/pub/linux/fr/frad-0.15.tgz">ftp.invlogic.com</A>.
Komplilacja i instalacja narzêdzi jest prosta, niestety brak g³ównego
pliku Makefile, powoduje, ¿e trzeba to zrobiæ rêcznie.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# cd /usr/src
# tar xvfz .../frad-0.15.tgz
# cd frad-0.15
# for i in common dlci frad; do cd $i; make clean; make; cd ..; done
# mkdir /etc/frad
# install -m 644 -o root -g root bin/*.sfm /etc/frad
# install -m 700 -o root -g root frad/fradcfg /sbin
# install -m 700 -o root -g root dlci/dlcicfg /sbin
</PRE>
</CODE></BLOCKQUOTE>
<P>Po zainstalowaniu narzêdzi, trzeba utworzyæ plik
<CODE>/etc/frad/router.conf</CODE>. Mo¿esz skorzystaæ z poni¿szego wzoru,
który jest zmodyfikowanym plikiem przyk³adowym:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# /etc/frad/router.conf
# Jest to wzorzec pliku konfiguracyjnego urz±dzeñ Frame Relay
# Zawiera wszystkie mo¿liwe opcje. Warto¶ci domy¶lne s± ustawione
# na podstawie kodu sterowników karty Sangoma S502A dla MSDOSu.
#
# Znak '#' w dowolnym miejscu wiersza rozpoczyna komentarz
# Puste miejsca s± ignorowane (mo¿esz tabulatorem ³adnie sformatowaæ
# ca³y plik
# Nieznane pozycje [] i s³owa kluczowe s± ignorowane
#
[Devices]
Count=1 # Liczba urz±dzeñ do skonfigurowania
Dev_1=sdla0 # nazwa urz±dzenia
#Dev_2=sdla1 # nazwa urz±dzenia
# Podane tutaj parametry maj± zastosowanie do wszystkich urz±dzeñ,
# lecz dla ka¿dego urz±dzenia indywidualnie mo¿e byæ podana inna warto¶æ
#
Access=CPE
Clock=Internal
KBaud=64
Flags=TX
#
# MTU=1500 # Maksymalna d³ugo¶æ ramki IFrame, domy¶lnie 4096
# T391=10 # T391 value 5 - 30, domy¶lnie 10
# T392=15 # T392 value 5 - 30, domy¶lnie 15
# N391=6 # N391 value 1 - 255, domy¶lnie 6
# N392=3 # N392 value 1 - 10, domy¶lnie 3
# N393=4 # N393 value 1 - 10, domy¶lnie 4
# Podane tutaj parametry maj± zastosowanie do wszystkich urz±dzeñ
# CIRfwd=16 # CIR forward 1 - 64
# Bc_fwd=16 # Bc forward 1 - 512
# Be_fwd=0 # Be forward 0 - 511
# CIRbak=16 # CIR backward 1 - 64
# Bc_bak=16 # Bc backward 1 - 512
# Be_bak=0 # Be backward 0 - 511
#
#
# Konfiguracja poszczególnych urz±dzeñ
#
#
#
# Pierwsze urz±dzenie - Sangoma S502E
#
[sdla0]
Type=Sangoma # Rodzaj urz±dzenia do skonfigurowania,
# rozpoznawana jest tylko SANGOMA
#
# Poni¿sze parametry s± specyficzne dla typu Sangoma
#
# Rodzaj karty ¶angoma - S502A, S502E, S508
Board=S502E
#
# Nazwa firmowego oprogramowania testowego dla karty Sangoma
# Testware=/usr/src/frad-0.10/bin/sdla_tst.502
#
# Nazwa firmowego oprogramowania FR
# Firmware=/usr/src/frad-0.10/bin/frm_rel.502
#
Port=360 # Port uzywany przez tê kartê
Mem=C8 # Adres okna pamiêci, A0-EE, zale¿ny od karty
IRQ=5 # Numer przerwania IRQ , nie potrebny w przypadku S502A
DLCIs=1 # Liczba urz±dzeñ DLCI przy³±czonych do tego urz±dzenia
DLCI_1=16 # numer pierwszego urz±dzenia DLCI, 16 - 991
# DLCI_2=17
# DLCI_3=18
# DLCI_4=19
# DLCI_5=20
#
# Podane poni¿ej opcje maj± zastosowanie tylko do tego urz±dzenia
# i zastêpuj± warto¶cidomy¶lne podane wcze¶niej
#
# Access=CPE # CPE lub NODE, domy¶lnie CPE
# Flags=TXIgnore,RXIgnore,BufferFrames,DropAborted,Stats,MCI,AutoDLCI
# Clock=Internal # External lub Internal, domy¶lnie Internal
# Baud=128 # Okre¶lona prêdko¶æ (bodów) przy³±czonych CSU/DSU
# MTU=2048 # Maksymalna d³ugo¶æ ramki IFrame, domy¶lnie 4096
# T391=10 # T391 value 5 - 30, domy¶lnie 10
# T392=15 # T392 value 5 - 30, domy¶lnie 15
# N391=6 # N391 value 1 - 255, domy¶lnie 6
# N392=3 # N392 value 1 - 10, domy¶lnie 3
# N393=4 # N393 value 1 - 10, domy¶lnie 4
#
# Drugim urz±dzeniem jest zupe³nie inna karta
#
# [sdla1]
# Type=¦miesznaKarta # Rodzaj konfigurowanego urz±dzenia
# Board= # Rodzaj karty Sangoma
# Key=Value # Parametry specyficzne dla tego urz±dzenia
#
# Domy¶lne parametry konfiguracyjne urz±dzeñ DLCI
# Mog± zostaæ zastêpione w konkretnych sekcjach konfiguracyjnych DCI
#
CIRfwd=64 # CIR forward 1 - 64
# Bc_fwd=16 # Bc forward 1 - 512
# Be_fwd=0 # Be forward 0 - 511
# CIRbak=16 # CIR backward 1 - 64
# Bc_bak=16 # Bc backward 1 - 512
# Be_bak=0 # Be backward 0 - 511
#
# Konfiguracja DLCI
# Wszystkie parametry s± opcjonalne. Nazewnictwo:
# [DLCI_D<devicenum>_<DLCI_Num>]
#
[DLCI_D1_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=64
# Bc_fwd=512
# Be_fwd=0
# CIRbak=64
# Bc_bak=512
# Be_bak=0
[DLCI_D2_16]
# IP=
# Net=
# Mask=
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
# CIRfwd=16
# Bc_fwd=16
# Be_fwd=0
# CIRbak=16
# Bc_bak=16
# Be_bak=0
</PRE>
</CODE></BLOCKQUOTE>
<P>Po stworzeniu pliku <CODE>/etc/frad/router.conf</CODE> pozosta³o jedynie
skonfigurowaæ rzeczywiste urz±dzenia. Jest to tylko troszkê
sprytniejsze ni¿ konfigurowanie zwyk³ych urz±dzeñ sieciowych. Musisz
pamiêtaæ aby przed uruchomieniem urz±dzeñ DLCI uruchomiæ wpierw
urz±dzenie FRAD.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# Konfiguracja karty FRAD i parametrów DLCI
/sbin/fradcfg /etc/frad/router.conf || exit 1
/sbin/dlcicfg file /etc/frad/router.conf
#
# Podnoszenie urz±dzenia FRAD
ifconfig sdla0 up
#
# Konfiguracja interfejsów DLCI i trasowania
ifconfig dlci00 192.168.10.1 pointopoint 192.168.10.2 up
route add 192.168.10.0 netmask 255.255.255.0 dlci00
#
ifconfig dlci01 192.168.11.1 pointopoint 192.168.11.2 up
route add 192.168.11.0 netmask 255.255.255.0 dlci00
#
route add default dev dlci00
#
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2>6.10 Zliczanie ruchu (IP Accounting)</H2>
<P>Cechy j±dra Linuksa dotycz±ce zliczania ruchu umo¿liwiaj± gromadzenie i
analizê informacji na temat wykorzystania sieci. Gromadzone dane
zawieraj± liczbê pakietów, liczbê odpowiadaj±cych im bajtów
przes³anych od ostatniego zerowania liczników. Mo¿esz zliczaæ ruch na
wiele ró¿nych sposobów, odpowiednio grupuj±c ruch tak aby gromadzone
informacje zawiera³y odpowiednie, interesuj±ce ciê statystyki.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] IP: accounting
</PRE>
</CODE></BLOCKQUOTE>
<P>Po skompilowaniu i zainstalowaniu nowego j±dra, musisz skorzystaæ z
narzêdzia o nazwie <EM>ipfwadm</EM>, s³u¿±cego do wprowadzania i zmiany
regu³ zliczania ruchu. Istnieje wiele regu³ zliczania ruchu, które
móg³by¶ zastosowaæ. Wybra³em kilka prostych, które mog± byæ u¿yteczne,
zapoznaj siê ze stron± podrêcznika dotycz±c± programu <EM>ipfwadm</EM>.
<P>Scenariusz: Posiadasz sieæ ethernetow± przy³±czon± do Internetu za
pomoc± po³±czenia PPP. Na segmencie ethernetowym znajduje siê komputer
oferuj±cy szereg us³ug. Jeste¶ zainteresowany jaki ruch jest
generowany przez telnet, rlogin, ftp i www.
<P>Mo¿esz skorzystaæ z poni¿szego zestawu poleceñ:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# Usuñ istniej±ce regu³y zliczania ruchu
ipfwadm -A -f
#
# dodaj regu³y dotycz±ce lokalnego segmentu ethernetowego
ipfwadm -A in -a -P tcp -D 44.136.8.96/29 20
ipfwadm -A out -a -P tcp -S 44.136.8.96/29 20
ipfwadm -A in -a -P tcp -D 44.136.8.96/29 23
ipfwadm -A out -a -P tcp -S 44.136.8.96/29 23
ipfwadm -A in -a -P tcp -D 44.136.8.96/29 80
ipfwadm -A out -a -P tcp -S 44.136.8.96/29 80
ipfwadm -A in -a -P tcp -D 44.136.8.96/29 513
ipfwadm -A out -a -P tcp -S 44.136.8.96/29 513
ipfwadm -A in -a -P tcp -D 44.136.8.96/29
ipfwadm -A out -a -P tcp -D 44.136.8.96/29
ipfwadm -A in -a -P udp -D 44.136.8.96/29
ipfwadm -A out -a -P udp -D 44.136.8.96/29
ipfwadm -A in -a -P icmp -D 44.136.8.96/29
ipfwadm -A out -a -P icmp -D 44.136.8.96/29
#
# Regu³y domy¶lne
ipfwadm -A in -a -P tcp -D 0/0 20
ipfwadm -A out -a -P tcp -S 0/0 20
ipfwadm -A in -a -P tcp -D 0/0 23
ipfwadm -A out -a -P tcp -S 0/0 23
ipfwadm -A in -a -P tcp -D 0/0 80
ipfwadm -A out -a -P tcp -S 0/0 80
ipfwadm -A in -a -P tcp -D 0/0 513
ipfwadm -A out -a -P tcp -S 0/0 513
ipfwadm -A in -a -P tcp -D 0/0
ipfwadm -A out -a -P tcp -D 0/0
ipfwadm -A in -a -P udp -D 0/0
ipfwadm -A out -a -P udp -D 0/0
ipfwadm -A in -a -P icmp -D 0/0
ipfwadm -A out -a -P icmp -D 0/0
#
# Wy¶wietl listê obowi±zuj±cych regu³
ipfwadm -A -l -n
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Ostatnie polecenie wy¶wietla listê regu³ zliczania ruchu wraz ze
zgromadzonymi informacjami.
<P>Analizuj±c wielko¶æ ruchu IP nale¿y pamiêtaæ, ¿e <B>bêdzie zwiêkszany
licznik ka¿dej regu³y, która pasuje do analizowanego pakietu</B>, aby
uzyskaæ wyniki ró¿nicowe, trzeba wykonaæ proste dzia³ania
matematyczne. Gdybym chcia³ znaæ liczbê przes³anych bajtów poza
us³ugami telnet, rlogin, ftp i www musia³bym od wielko¶ci ruchu dla
wszystkich portów odj±æ zmierzone wielko¶ci dla poszczególnych regu³.
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ipfwadm -A -l -n
IP accounting rules
pkts bytes dir prot source destination ports
0 0 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 20
0 0 out tcp 44.136.8.96/29 0.0.0.0/0 20 -> *
0 0 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 23
0 0 out tcp 44.136.8.96/29 0.0.0.0/0 23 -> *
10 1166 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 80
10 572 out tcp 44.136.8.96/29 0.0.0.0/0 80 -> *
242 9777 in tcp 0.0.0.0/0 44.136.8.96/29 * -> 513
220 18198 out tcp 44.136.8.96/29 0.0.0.0/0 513 -> *
252 10943 in tcp 0.0.0.0/0 44.136.8.96/29 * -> *
231 18831 out tcp 0.0.0.0/0 44.136.8.96/29 * -> *
0 0 in udp 0.0.0.0/0 44.136.8.96/29 * -> *
0 0 out udp 0.0.0.0/0 44.136.8.96/29 * -> *
0 0 in icmp 0.0.0.0/0 44.136.8.96/29 *
0 0 out icmp 0.0.0.0/0 44.136.8.96/29 *
0 0 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 20
0 0 out tcp 0.0.0.0/0 0.0.0.0/0 20 -> *
0 0 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 23
0 0 out tcp 0.0.0.0/0 0.0.0.0/0 23 -> *
10 1166 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 80
10 572 out tcp 0.0.0.0/0 0.0.0.0/0 80 -> *
243 9817 in tcp 0.0.0.0/0 0.0.0.0/0 * -> 513
221 18259 out tcp 0.0.0.0/0 0.0.0.0/0 513 -> *
253 10983 in tcp 0.0.0.0/0 0.0.0.0/0 * -> *
231 18831 out tcp 0.0.0.0/0 0.0.0.0/0 * -> *
0 0 in udp 0.0.0.0/0 0.0.0.0/0 * -> *
0 0 out udp 0.0.0.0/0 0.0.0.0/0 * -> *
0 0 in icmp 0.0.0.0/0 0.0.0.0/0 *
0 0 out icmp 0.0.0.0/0 0.0.0.0/0 *
#
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2>6.11 IP Aliasing</H2>
<P>Istniej± programy sieciowe, które wymagaj± aby jedno urz±dzenie
sieciowe posiada³o wiele numerów IP. Dostawcy internetu czêsto
korzystaj± z tej cechy do tworzenia wirtualnych serwerów WWW i ftp
oferuj±c klientowi utworzenie serwera o innym adresie ni¿ ich w³asny.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
....
[*] Network aliasing
....
<*> IP: aliasing support
</PRE>
</CODE></BLOCKQUOTE>
<P>Po skompilowaniu i zainstalowaniu j±dra z obs³ug± IP_Alias,
konfiguracja jest bardzo prosta. Aliasy s± dodawane do wirtualnych
urz±dzeñ sieciowych stowarzyszonych z istniej±cymu urz±dzeniami
sieciowymi. Stosuje siê prost± konwencjê nazywania tych urz±dzeñ, a
mianowicie <CODE><devname>:<numer urz±dzenia wirtualnego></CODE>, np. <CODE>eth0:0</CODE>,
<CODE>ppp0:10</CODE> etc.
<P>Za³ó¿my, ¿e posiadasz sieæ ethernetow±, która obs³uguje jednocze¶nie
dwie ró¿ne podsieci IP. Chcia³by¶ aby twój komputer mia³ bezpo¶redni
dostêp do obu tych podsieci:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# ifconfig eth0:0 192.168.1.1 netmask 255.255.255.0 up
# route add -net 192.168.1.0 netmask 255.255.255.0 eth0:0
#
# ifconfig eth0:1 192.168.10.1 netmask 255.255.255.0 up
# route add -net 192.168.10.0 netmask 255.255.255.0 eth0:0
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Aby usun±æ alias nale¿y do jego nazwy do³±czyæ znak `<CODE>-</CODE>' podczas
nastêpnego odwo³ania siê do niego, np. tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ifconfig eth0:0- 0
</PRE>
</CODE></BLOCKQUOTE>
<P>Wraz z usuniêciem tego aliasu z tabeli trasowañ zostan± usuniête
wrzystkie trasy korzystaj±ce z tego aliasu.
<P>
<H2>6.12 Filtrownie pakietów (IP Firewalling)</H2>
<P>Filtrowanie pakiet i zasady przy tym obowi±zuj±ce s± dok³adniej
omówione w
<A HREF="Firewall-HOWTO.html">Firewall-HOWTO</A>. IP
Firewalling pozwala na zabezpieczenia twojego komputera
przed nieuprawnionym dostêpem przez sieæ, wykorzystuj±c w tym celu
filtrowanie pakietów. Istniej± trzy ró¿ne klasy regu³: filtrowanie
pakietów przychodz±cych, filtrowanie pakietów wychodz±cych i
filtrowanie pakietów przekazywanych dalej (forwarding). Regu³y
filtrowania pakietów przychodz±cych dotycz± pakietów otrzymanych przez
urz±dzenie sieciowe. Regu³y filtrowania pakietów wychodz±cych, dotycz±
pakietów tu¿ przed wys³aniem przez urz±dzenie sieciowe. Regu³y
fitrowania pakietów przesy³anych dotycz± pakietów, które zosta³y przez
nasz komputer odebrane, lecz nie jest on ich ostatecznym adresatem,
tzn. pakiety, które bêd± poddane trasowaniu.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] Network firewalls
....
[*] IP: forwarding/gatewaying
....
[*] IP: firewalling
[ ] IP: firewall packet logging
</PRE>
</CODE></BLOCKQUOTE>
<P>Wprowadzanie regu³ filtrowania pakietów IP wykonuje siê za pomoc±
programu <EM>ipfwadm</EM>. Jak wspomina³em wcze¶niej nie jestem ekspertem
od zabezpieczeñ sieci komputerowych, wiêc choæ prezentujê przyk³ad, z
którego mo¿esz skorzystaæ, powiniene¶ samodzielnie zapoznaæ siê z tym
tematem i opracowaæ w³asne regu³y filtrowania pakietów, oczywi¶cie
tylko wtedy, gdy jest dla ciebie wa¿ne bezpieczeñstwo twojego systemu.
<P>Prawdopodobnie najczêstszym wykorzystaniem filtrowania pakietów jest
sytuacja, gdy twój Linux pracuje jako router i filtr pakietów
chroni±cy lokaln± sieæ przed nieuprawnionym dostêpem z sieci zewnêtrznej.
<P>Przedstawiona poni¿ej konfiguracja jest oparta na sugestiach
przes³anych przez Arnta Gulbrandsena, <CODE><agulbra@troll.no></CODE>.
<P>Przyk³ad opisuje konfiguracjê regu³ filtra pakietów prauj±cego na
Linuksie, wykorzystywanym w sposób przedstawiony na poni¿szym schemacie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
- -
\ | 172.16.37.0
\ | /255.255.255.0
\ --------- |
| 172.16.174.30 | Linux | |
NET =================| f/w |------| ..37.19
| PPP | router| | --------
/ --------- |--| Mail |
/ | | /DNS |
/ | --------
- -
</PRE>
</CODE></BLOCKQUOTE>
<P>Poni¿sze polecenia zwykle s± umieszczane w jednym z plików <CODE>rc</CODE>,
aby by³y automatycznie wykonywane przy ka¿dym uruchomieniu
systemu. Aby maksymalnie zwiêkszyæ bezpieczeñstwo systemu, powinny byæ
wykonywane tu¿ po skonfigurowaniu urz±dzeñ sieciowych, lecz tu¿ przed
ich w³±czeniem. W ten sposób niwelujemy chwilê s³±bo¶ci zwi±zan± z
restartem komputera.
<P>
<BLOCKQUOTE><CODE>
<PRE>
#!/bin/sh
# Oczy¶æ tabelê regu³ przesy³ania pakietów (forwarding)
# Zmieñ domy¶ln± polityk± na 'accept' (akceptuj):
#
/sbin/ipfwadm -F -f
/sbin/ipfwadm -F -p accept
#
# .. i dla ruchu przychodz±cego (Incoming)
#
/sbin/ipfwadm -I -f
/sbin/ipfwadm -I -p accept
# Po pierwsze zabezpiecz interfejs PPP
# Chêtnie zamiast '-a deny' wstawi³bym '-a reject -y', lecz wtedy nie
# by³oby mo¿liwe rozpoczynanie po³±czeñ wychodz±cych przez ten
# interfejs. Parametr -o pozwala rejestrowaæ odrzucane datagramy.
# Kosztem przestrzeni dyskowej zajêtej przez informacje sysloga
# uzyskujemy informacje na temat niechcianego ruchu IP.
#
/sbin/ipfwadm -I -a reject -y -o -P tcp -S 0/0 -D 172.16.174.30
# Odrzuæ pewnego rodzaju pakiety:
# Nic nie powinno przychodziæ z adresów multicast/anycast/broadcast
#
/sbin/ipfwadm -F -a deny -o -S 224.0/3 -D 172.16.37.0/24
#
# nic nie powinno przychodziæ z adresu pêtli zwrotnej
#
/sbin/ipfwadm -F -a deny -o -S 127.0/8 -D 172.16.37.0/24
# Zezwól na po³±czenia SMTP i DNS, lecz jedynie do serwera Mail/DNS
#
/sbin/ipfwadm -F -a accept -P tcp -S 0/0 -D 172.16.37.19 25 53
#
# DNS korzysta z UDP i TCP, musisz pozwoliæ na oba rodzaje po³±czeñ
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 -D 172.16.37.19 53
#
# Nie pozwalamy na "odpowiedzi" przychodz±ce do tak niebezpiecznych
# portów jak NFS czy rozszerzenie NFSu Larryego McVoya. Je¶li
# korzystasz ze squida dopisz tutaj jego port
#
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 53 \
-D 172.16.37.0/24 2049 2050
# odpowiedzi do innych portów s± OK
#
/sbin/ipfwadm -F -a accept -P udp -S 0/0 53 \
-D 172.16.37.0/24 53 1024:65535
# Odrzuæ po³±czenia przychodz±ce do identd
# korzystamy tutaj z 'reject', aby ³±cz±cy siê komputer wiedzia³, ¿e
# nie ma co próbowaæ nawi±zaæ po³±czenia. W przeciwnym wypadku narazimy
# siê na opó¼nienia wywo³ane dzia³aniem programu ident po drugiej
# stronie nawi±zywanego przez nas po³±czenia
#
/sbin/ipfwadm -F -a reject -o -P tcp -S 0/0 -D 172.16.37.0/24 113
# Pozwól na popularne us³ugi pochodz±ce z sieci 192.168.64 i 192.168.65
#
/sbin/ipfwadm -F -a accept -P tcp -S 192.168.64.0/23 \
-D 172.16.37.0/24 20:23
# akceptuj i przesy³aj wszystko co wziê³o siê z sieci lokalnej
#
/sbin/ipfwadm -F -a accept -P tcp -S 172.16.37.0/24 -D 0/0
# zabroñ wiêkszo¶ci innych po³±czeñ TCP i rejestruj je
# (je¶li masz k³opot z dzia³aniem ftp dodaj 1:1023)
#
/sbin/ipfwadm -F -a deny -o -y -P tcp -S 0/0 -D 172.16.37.0/24
# ... for UDP too
#
/sbin/ipfwadm -F -a deny -o -P udp -S 0/0 -D 172.16.37.0/24
</PRE>
</CODE></BLOCKQUOTE>
<P>Dobra konfiguracja filtra jest niemal sztuk±. Powy¿szy przyk³ad
powinien byæ rozs±dnym punktem startowym. Strona podrêcznika dotycz±ca
<EM>ipfwadm</EM> oferuje dodatkowe informacje na ten temat. Je¶li
planujesz za³o¿enie filtra upewnij siê, ¿e zebra³e¶ wokó³ maksymalnie
wiele porad ze ¼róde³, którym mo¿esz ufaæ i popro¶ kogo¶ aby sprawdzi³
dzia³anie twojego filtra z zewn±trz.
<P>
<H2>6.13 IPX (<CODE>AF_IPX</CODE>)</H2>
<P>Protokó³ IPX jest powszechnie wykorzystywany w lokalnych sieciach
Novell Netware(tm). Linux potrafi obs³ugiwaæ ten protokó³ i mo¿e
zostaæ skonfigurowany do pracy jako koñcówka sieci Novell Netware(tm)
lub jako router pakietów IPX.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] The IPX protocol
[ ] Full internal IPX network
</PRE>
</CODE></BLOCKQUOTE>
<P>Protokó³ IPX i standard NCPFS s± dok³adniej omówione w
<A HREF="IPX-HOWTO.html">IPX-HOWTO</A>.
<P>
<H2>6.14 IPv6</H2>
<P>W³a¶nie gdy zaczê³o ci siê wydawaæ, ¿e zaczynasz rozumieæ sieci IP,
zasady siê zmieni³y! IPv6 jest skrótem oznaczaj±cym wersjê 6 protoko³u
IP. IPv6 zosta³ opracowany w celu rozwiania obaw spo³eczno¶ci
internetowej zwi±zanych z wyczerpywaniem siê wolnych adresów
IP. Adresy protoko³u IPv6 s± budowane na 32 bajtach (128 bitów),
pozwoli to na lepsze zarz±dzanie sieciami, ni¿ ma to obecnie.
<P>J±dra Linuksa serii <CODE>2.1.*</CODE> ju¿ posiadaj± dzia³aj±c±, choæ niepe³n±
implementacje protoko³u IPv6.
<P>Je¶li chcesz poeksperymentowaæ z t± now± generacj± technologii
internetowych, lub jest ci to do czego¶ potrzebne, powiniene¶
przeczytaæ IPv6-FAQ dostêpny pod adresem:
<A HREF="http://www.terra.net/ipv6/">www.terra.net</A>.
<P>
<H2>6.15 ISDN</H2>
<P>Sieæ cyfrowa zintegrowanych us³ug (Integrated Services Digital Network
- ISDN) sk³ada siê z serii standardów definuj±cych cyfrow± sieæ pakietow±
ogólnego przeznaczenia. ISND jest zwykle dostarczana ³±czami o
wysokiej prêdko¶ci, podzielonymi na wiele kana³ów. Istniej± dwa ró¿ne
rodzaje kana³ów, kana³y typu 'B' rzeczywi¶cie przenosz±ce dane
u¿ytkownika, oraz kana³ typu 'D' wykorzystywany do przesy³ania
informacji steruj±cej do centrali ISDN w celu zestawiania po³±czeñ i
innych funkcji. Dla przyk³adu w Australii ISDN mo¿e byæ dostarczony
³±czem 2Mbps podzielonym na 30 kana³ów B po 64kbps ka¿dy i jeden kana³
D. W tej samej chwili mo¿e byæ wykorzystywana dowolna liczba kaba³ów w
dowolnej kombinacji. Jest mo¿liwe np, zestawienie 30 ró¿nych po³±czeñ
z 30toma ró¿nymi punktami docelowymi, ka¿de po 64kbps lub 15 po³±czeñ
z 15toma ró¿nymi punktami docelowymi, ka¿de po 128 kbps (jedno
po³±czenie wykorzystuje dwa kana³y), lub zestawienie ma³ej liczby
po³±czeñ pozostawiaj±c pozosta³± czê¶æ pasma niewykorzytan±. Pierwotn±
przyczyn± powstania ISDN, by³o umo¿liwienie firmom telekomunikacyjnym
udostêpniania jednej us³ugi przesy³ania danych, która mog³aby byæ
wykorzystywana dla telefonii (wykorzystuj± cyfrowe przetworniki
g³osu) lub do przesy³ania danych bez konieczno¶ci wykonywania przez
klienta jakichkolwiek zmian.
<P>Istnieje kilka ró¿nych metod pod³±czenia komputera do sieci
ISDN. Jedn± z nich jest wykorzystanie urz±dzenia o nazwie `Terminal
Adaptor', które w³±cza siê do koñcówki sieciowej (Network Terminating
Unit), zainstalowanej przez twojego dostawcê us³ugi ISDN,
udostêpniaj±cego z drugiej strony kilka portów szeregowych. Jeden z
tych portów s³u¿y do wprowadzania poleceñ w celu skonfigurowania i
nawi±zania po³±czeñ, pozosta³e s± pod³±czone do urz±dzeñ sieciowych,
które bêd± bezpo¶rednio korzysta³y z zestawionych kana³ów transmisji
danych. W takiej konfiguracji Linux bêdzie pracowa³ poprawnie bez
konieczno¶ci wykonywania jakichkolwiek modyfikacji. Korzystamy z portu
szeregowego urz±dzenia 'Terminal Adaptor' w taki sam sposób, jak ze
zwyk³ego portu szeregowego. Innym sposobem przy³±czenia Linuksa do
sieci ISDN, w czym wspomagaæ nas bêdzie kod obs³ugi ISDN zawarty w
j±drze Linuksa jest zainstalowanie karty ISDN bezpo¶rednio w Linuksie.
Wtedy modu³ obs³ugi ISDN w j±drze Linuksa jest odpowiedzialny za
obs³ugê urz±dzenia, protoko³ów i zestawianie po³±czeñ.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
ISDN subsystem --->
<*> ISDN support
[ ] Support synchronous PPP
[ ] Support audio via ISDN
< > ICN 2B and 4B support
< > PCBIT-D support
< > Teles/NICCY1016PC/Creatix support
</PRE>
</CODE></BLOCKQUOTE>
<P>Implementacja ISDN w j±drze Linuksa rozpoznaje szereg ró¿nych typów
wewnêtrznych kart ISDN. Ich lista jest przedstawiona podczas
konfiguracji j±dra:
<UL>
<LI>ICN 2B and 4B</LI>
<LI>Octal PCBIT-D</LI>
<LI>Teles ISDN-cards and compatibles</LI>
</UL>
<P>Czê¶æ z tych kart wymaga za³adowania do ich wewnêtrznej pamiêci
odpowiedniego oprogramowania. S³u¿y do tego oddzielne narzêdzie.
<P>Szczegó³owy opis jak skonfigurowaæ obs³ugê ISDN pod Linuksem jest
dostêpny w katalogu
<CODE>/usr/src/linux/Documentation/isdn/</CODE>. Istnieje równie¿ FAQ
po¶wiêcony tej tematyce: <EM>isdn4linux</EM> jest dostêpny pod adresem
<A HREF="http://www.lrz-muenchen.de/~ui161ab/www/isdn/">www.lrz-muenchen.de</A>.
(po po³±czeniu, aby otrzymaæ wersjê angielsk±, musisz klikn±æ na
angielskiej fladze)
<P><B>Uwaga na temat PPP</B>. Rodzina protoko³ów PPP pracuje na ³±czach
szeregowych synchronicznych lub asynchronicznych. Rozpowszechniany
powszechnie program `<EM>pppd</EM>' obs³uguje jedynie tryb
asynchroniczny. Je¶li zamierzasz uruchamiaæ po³±czenie PPP
wykorzystuj±æ jako no¶nik us³ugê ISDN, potrzebujesz specjaln±,
zmodyfikowan± wersjê tego programu. Wskazówki, gdzie j± mo¿na znale¼æ
znajdziesz w dokumentacji, o której wspomnieli¶my wcze¶niej.
<P>
<P>
<H2>6.16 IP Masquerade</H2>
<P>Wielu ludzi do po³±czenia z Internetem ma zwyk³e konto u dostawcy
Internetu. Niemal ka¿dy korzystaj±cy z takiej konfiguracji otrzymuje
od swojego dostawcy Internetu jeden adres IP. Zwykle jest to
wystarczaj±ce na pod³±czenie do Internetu tylko jednego
komputera. Maskarada adresu IP jest sprytn± sztuczk± umo¿liwiaj±c±
jednoczesne korzystanie z tego jednego adresu IP przez wiele
komputerów, sprawiaj±c, ¿e dla ¶wiata zewnêtrzengo komputery te
wygl±daj± tak, jak gdyby by³y komputerem obs³uguj±cy po³±czenie
modemowe z Internetem. Istnieje ma³a niedogodno¶æ, a mianowicie w
wiêkszo¶ci przypadków maskarada adresów IP dzia³a tylko w jedn±
stronê, to znaczy komputery, które z niej korzystaj± mog± nawi±zywaæ
po³±czenia z komputerami w sieci Internet, lecz same nie mog±
otrzymywaæ po³±czeñ z zewn±trz. To oznacza, ¿e niektóre us³ugi
sieciowe np. <EM>talk</EM> nie dzia³±j±, a inne np. <EM>ftp</EM> musz± byæ
skonfigurowane do pracy w trybie pasywnym (PASV). Na szczêscie
wiêkszo¶æ us³ug internetowych takich, jak <EM>telnet</EM>, <EM>WWW</EM> i
<EM>irc</EM> dzia³a bardzo dobrze.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Networking options --->
[*] Network firewalls
....
[*] TCP/IP networking
[*] IP: forwarding/gatewaying
....
[*] IP: masquerading (EXPERIMENTAL)
</PRE>
</CODE></BLOCKQUOTE>
<P>Wpierw twój Linux musi obs³ugiwaæ po³±czenie z internetem (zwykle
przez SLIP lub PPP) w taki sam sposób, jak gdyby by³jedynym
komputerme, który bêdzie z tego po³±czenia korzysta³. Nastêpnie
nale¿y skonfigurowaæ dodatkowe urz±dzenie sieciowe, zwykle kartê sieci
ethernet, zwykle korzystaj±c z puli numerów IP zarezerwowanych dla
sieci prywatnych, których nie wykorzystuje siê w sieci
Internet. Komputery korzystaj±ce z maskarady adresów IP bed± w³a¶nie
na tej sieci. Ka¿dy z nich otrzyma adres IP i zostanie skonfigurowany
w ten sposób, ¿e jego gatewayem (routerem) stanie siê interfejs karty
ethernetowej naszego Linuksa.
<P>Typowa konfiguracja wygl±da mnie wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
- -
\ | 192.168.1.0
\ | /255.255.255.0
\ --------- |
| | Linux | .1.1 |
NET =================| masq |------|
| PPP/slip | router| | --------
/ --------- |--| host |
/ | | |
/ | --------
- -
</PRE>
</CODE></BLOCKQUOTE>
<P>Najwa¿niejsze polecenia konfiguracyjne dla tego przyk³adu:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# Trasa do sieci na segmencie ethernetowym
route add 192.168.1.0 netmask 255.255.255.0 eth0
#
# Domy¶lna trasa do Internetu
route add default ppp0
#
# Wszystkie komputery w sieci 192.168.1/24 korzystaj± z maskarady
# adresów IP
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
</PRE>
</CODE></BLOCKQUOTE>
<P>Wiêcej informacji na temat maskarady adresów IP pod Linuksem znajdziesz
tutaj:
<A HREF="http://www.hwy401.com/achau/ipmasq/">IP Masquerade Resource Page</A>,
lub w dokumencie
<A HREF="IP-Masquerade-HOWTO.pl.html">IP-Masquerade-HOWTO</A>.
<P>
<H2>6.17 IP Transparent Proxy</H2>
<P>Przezroczyste proxy IP jest udogodnieniem, które umo¿liwia
przekierowanie po³±czeñ do us³ug lub serwerów na innym komputerze do
us³ug lub serwerów znajduj±cych siê na tym komputerze. Zwykle jest to
u¿yteczne w sytuacji gdy twój Linux pracuje jako router i jednocze¶nie
pracuje jako serwer proxy. W takim przypadku mo¿esz przekierowaæ
do lokalnego serwera proxy wszystkie po³±czenia do serwerów proxy
znajduj±cych siê za routerem.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Networking options --->
[*] Network firewalls
....
[*] TCP/IP networking
....
[*] IP: firewalling
....
[*] IP: transparent proxy support (EXPERIMENTAL)
</PRE>
</CODE></BLOCKQUOTE>
<P>Konfiguracjê przezroczystego proxy wykonuje siê programem <EM>ipfwadm</EM>.
<P>Prosty przyk³ad, który mo¿e byæ u¿yteczny:
<P>
<BLOCKQUOTE><CODE>
<PRE>
ipfwadm -I -a accept -D 0/0 80 -r 8080
</PRE>
</CODE></BLOCKQUOTE>
<P>W powy¿szym przyk³adzie przekierowujemy wszystkie po³±czenia
skierowane na port 80 (www) dowolnego komputera, na po³±czenia do
portu 8080 naszego Linuksa. Ten sposób móg³by byæ u¿yty (gdyby by³
poprawny - bo nie jest ...pp) do przekierowania ca³ego ruchu www do
lokalnego serwera proxy.
<P>
<H2>6.18 Mobile IP</H2>
<P>Termin 'IP mobility' opisuje zdolno¶æ komputera do przemieszczania
swojego punktu styku z internetem z jednej sieci do innej sieci bez
konieczno¶ci zmiany w³asnego adresu IP i bez utraty nawi±zanych
po³±czeñ. Zwykle gdy komputer zmienia swój punkt przy³±czenia do sieci,
musi równie¿ zmieniæ adres IP. Udogodnienie IP Mobility przezwyciê¿a
tê niedogodno¶æ przydzielaj±c komputerowi jeden, ustalony adres IP i
wykorzystuje tunelowanie (IP tunneling) i automatyczne trasowanie
zapewniaj±c, ¿e datagramy skierowane do tego komputera s± kierowane do
adresu IP, z którego korzysta.
<P>Istnieje projekt maj±cy zapewniæ powstanie kompletu narzêdzi dla
udogodnienia 'IP mobility' pd Linuksem. Aktualny stan prac mo¿na poznaæ
zagl±daj±c na stronê:
<A HREF="http://anchor.cs.binghamton.edu/~mobileip/">Linux Mobile IP Home Page</A>.
<P>
<H2>6.19 Multicast</H2>
<P>IP Multicast pozwala na jednoczesne trasowanie datagramów do wielu
ró¿nych komputerów znajduj±cych siê w zupe³nie innych
podsieciach. Korzysta siê z tego mechanizmu rozpowszechniania w
internecie audio i video lub innych nowoczesnych us³ug.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] TCP/IP networking
....
[*] IP: multicasting
</PRE>
</CODE></BLOCKQUOTE>
<P>Wymagany jest minimalny zestaw narzêdzi i ma³a rekonfiguracja
sieci. Dobrym ¼ród³em informacji na temat istalacji i konfiguracji
tego udogodnienia pod Linuksem jest strona
<A HREF="http://www.teksouth.com/linux/multicast/">www.teksouth.com</A>.
<P>
<H2>6.20 NetRom (<CODE>AF_NETROM</CODE>)</H2>
<P>Urz±dzenia NetRom nosz± nazwy `<CODE>nr0</CODE>', `<CODE>nr1</CODE>', itd.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] Amateur Radio AX.25 Level 2
[*] Amateur Radio NET/ROM
</PRE>
</CODE></BLOCKQUOTE>
<P>Protoko³y AX25, NetRom i Rose s± opisane w
<A HREF="AX25-HOWTO.html">AX25-HOWTO</A>. S± wykorzystywane
g³ównie przez krótkofalowców (packet radio).
<P>Wiekszo¶æ pracy w implementacji tych protoko³ów pod Linuksem wykona³
Jonathon Naylor, <CODE>jsn@cs.not.ac.uk</CODE>.
<P>
<H2>6.21 PLIP</H2>
<P>Urz±dzenia PLIP nosz± nazwy `<CODE>plip0</CODE>', `<CODE>plip1</CODE>, itd. Pierwsze
konfigurowane urz±dzenie otrzymuje numer `<CODE>0</CODE>', a nastêpne
otrzymuj± kolejne numery.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
<*> PLIP (parallel port) support
</PRE>
</CODE></BLOCKQUOTE>
<P><EM>plip</EM> (Parallel Line IP), jest podobny do SLIP, to znaczy
zapewnia po³±czenie <EM>punkt-do-punktu</EM> (point-to-point) miêdzy dwoma
komputerami, lecz wykorzystuje w tym celu porty równoleg³e
komputera (zamiast portów szeregowych, jak to ma miejsce
w przypadku protoko³u SLIP). Poniewa¿ port równoleg³y umo¿liwia w
jednej chwili transmisjê wiêcej ni¿ jednego bitu, wykorzystuj±c
interfejs <EM>plip</EM> mo¿emy osi±gn±æ znacznie wiêksze prêdko¶æi
transmisji, ni¿ ma to miejsce w przypadku portu szeregowego. Co
wiêcej, do plip mo¿e byæ wykorzystany nawet najprostszy rodzaj portu
szeregowego, port drukarkowy, gdy do pe³nego wykorzystania portów
szeregowych konieczne jest zakupienie dosyæ drogich uk³adów UART
15550AFN.
<P>Nale¿y zwróciæ uwagê, ¿e niektóre laptopy u¿ywaj± uk³adów, które nie
bêd± poprawnie wspó³pracowaæ z PLIP, poniewa¿ nie zezwalaj± na
przesy³anie pewnego rodzaju sygna³ów, na których polega PLIP, a z
których nie korzystaj± drukarki.
<P>Interfejs <EM>plip</EM> pod Linuksem jest zgodny z <EM>Crynwyr Packet
Driver PLIP</EM>, a to oznacza, ¿e mo¿esz przy³±czyæ do swojego
Linuksa, komputer pracuj±cy pod MSDOS, na którym dzia³a oprogramowanie
TCP/IP korzystaj±ce ze standardu 'packet drivera', korzystaj±e z
sterownika plip.
<P>
<P>Podczas kompilacji j±dra jedyny plik, któremu warto siê bli¿ej przyjrzeæ
to <CODE>/usr/src/linux/driver/net/CONFIG</CODE>. Zawiera parametry
czasowe sterownika <EM>plip</EM> podane w milisekundach. Warto¶ci
domy¶lne s± prawdopodobnie poprawne w wiêkszo¶ci przypadków. Je¶li
twój komputer jest wyj±tkowo wolny, mo¿esz siê zastanowiæ nad
zwiêkszeniem tych paramterów, ale na komputerze po drugiej stronie po³±czenia.
<P>Sterownik przyjmuje nastêpuj±ce warto¶ci domy¶lne parametrów:
<P>
<BLOCKQUOTE><CODE>
<PRE>
urz±dzenie adres IRQ
we/wy
------ -------- -----
plip0 0x3BC 5
plip1 0x378 7
plip2 0x278 2 (9)
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¶li parametry portów równoleg³ych twojego komputera nie pasuj± do
¿adnej z przedstawionych powy¿ej kombinacji, jeste¶ w stanie zmieniæ
przerwanie IRQ wykorzystywane przez port (za pomoc± programu
<EM>ifconfig</EM>). Pamiêtaj aby w³±czyæ w BIOSie korzystanie przez porty
równoleg³e z przerwañ IRQ, oczywi¶cie o ile BIOS posiada tak± opcjê.
<P>W celu skonfigurowania interfejsu <EM>plip</EM> musisz do plików <CODE>rc</CODE>
konfiguruj±cych sieæ <EM>dodaæ</EM> nastêpuj±ce polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# Przy³±cz interfejs PLIP
#
# skonfiguruj pierwszy port równoleg³y jako urz±dzenie plip
/sbin/ifconfig plip0 IPA.IPA.IPA.IPA pointopoint IPR.IPR.IPR.IPR up
#
# End plip
</PRE>
</CODE></BLOCKQUOTE>
<P>Gdzie:
<DL>
<DT><B>IPA.IPA.IPA.IPA</B><DD><P>oznacza twój adres IP.
<DT><B>IPR.IPR.IPR.IPR</B><DD><P>oznacza adres IP komputera zdalnego.
</DL>
<P>Parametr <EM>pointopoint</EM> ma tutaj takie samo znaczenie, co w
przypadku protoko³u SLIP, a mianowicie okre¶la adres IP komputera po
drugiej stronie po³±czenia.
<P>Urz±dzenie <EM>plip</EM> niemal pod ka¿dym wzglêdem mo¿esz traktowaæ tak
samo jak urz±denie <EM>slip</EM>, poza tym, ¿e ani <EM>dip</EM> ani
<EM>slattach</EM> nie musz± i nie mog± byæ wykorzystywane.
<P>
<H3>Schemat kabla do po³±czenia PLIP.</H3>
<P><EM>plip</EM> zosta³ opracowany w taki sposób, aby wykorzystywa³ kable
o takim samym uk³adzie, co kable, z których korzystaj± inne popularne
programy do transferu danych przez port równoleg³y pracuj±ce w
¶rodowisku MSDOS.
<P>Schemat po³±czeñ (wziêty z <CODE>/usr/src/linux/drivers/net/plip.c</CODE>)
znajduje siê poni¿ej:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Nazwa Po³±czenie
--------- -----------------
GROUND 25 - 25
D0->ERROR 2 - 15
ERROR->D0 15 - 2
D1->SLCT 3 - 13
SLCT->D1 13 - 3
D2->PAPOUT 4 - 12
PAPOUT->D2 12 - 4
D3->ACK 5 - 10
ACK->D3 10 - 5
D4->BUSY 6 - 11
BUSY->D4 11 - 6
D5 7*
D6 8*
D7 9*
STROBE 1*
FEED 14*
INIT 16*
SLCTIN 17*
</PRE>
</CODE></BLOCKQUOTE>
<P>Uwagi:
Nie nale¿y ³±czyæ koñcówek oznaczonych `*'. Dodatkowe uziemienia to
18,19,20,21,22,23 i 24.
<P>Je¶li kabel z którego korzystasz jest ekranowany, ekran powinien byæ
pod³±czony do obudowy wtyczki DB-25 <B>tylko na jednym koñcu</B>.
<P><B>Ostrze¿enie: kabel ze ¼le wykonanymi po³±czeniami mo¿e fizycznie
zniszczyæ kartê kontrolora twojego komputera.</B> B±d¼ bardzo
ostro¿ny i dwukrotnie sprawdzaj ka¿de po³±czenie, aby nie naraziæ siê
na niepotrzebny ból g³owy lub atak serca.
<P>Choæ mo¿e siê udaæ, ¿e po³±czenie PLIP bêdzie pracowaæ na du¿e
odleg³o¶ci, nale¿y jednak tego unikaæ. Specyfikacja kabla pozwala na
wykonania kabla o d³ugo¶ci ok 1m. B±d¼ ostro¿ny u¿ywaj±c d³u¿szych
kabli, poniewa¿ ¼ród³a silnych pó³ elekromagnetycznych (pioruny, linie
wysokiego napiêcia, nadajniki radiowe) mog± zak³óciæ pracê a czasami
doprowadziæ do uszkodzenia sterownika. Je¶li zale¿y ci na po³±czeniu
dwóch komputerów na naprawdê du¿± odleg³o¶æ, powiniene¶ zopatrzyæ siê
w parê tanich kart ethernetowych pracuj±cych na cienkim kablu
koncentrycznym.
<P>
<H2>6.22 PPP</H2>
<P>Urz±dzenia PPP nosz± nazwy `<CODE>ppp0</CODE>', `<CODE>ppp1</CODE>, itd. Urz±dzenia
otrzymuj± kolejne numery poczynaj±c od `<CODE>0</CODE>'.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
<*> PPP (point-to-point) support
</PRE>
</CODE></BLOCKQUOTE>
<P>Szczegó³owy opis konfiguracji PPP mo¿na znale¼æ w
<A HREF="PPP-HOWTO.html">PPP-HOWTO</A>.
<P>
<H3>Utrzymywanie za pomoc± <EM>ppp</EM> sta³ego po³±czenia z Internetem.</H3>
<P>Je¶li masz na tyle szczê¶cia, aby posiadaæ pó³sta³e po³±czenie z
sieci± i chcia³by¶, aby twój komputer automatycznie zestawia³
po³±czenie PPP, gdy z jakiego¶ powodu zostanie przerwane, pomo¿e ci w
tym prosta sztuczka.
<P>Skonfiguruj PPP w taki sposób, aby by³o uruchamiane przez
administratora systemu za pomoc± polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# pppd
</PRE>
</CODE></BLOCKQUOTE>
<P><B>Upewnij siê</B>, ¿e w pliku <CODE>/etc/ppp/options</CODE> znajduje siê
opcja `<CODE>-detach</CODE>'. Nastêpnie dodaj do pliku <CODE>/etc/inittab</CODE>,
poni¿ej definicji <EM>getty</EM> nastêpuj±cy wiersz:
<P>
<BLOCKQUOTE><CODE>
<PRE>
pd:23:respawn:/usr/sbin/pppd
</PRE>
</CODE></BLOCKQUOTE>
<P>W ten sposób program <EM>init</EM> bêdzie uruchamia³ i monitorowa³ program
<EM>pppd</EM> i za ka¿dym razem, gdy pppd skoñczy pracê, bêdzie uruchamia³ go
ponownie.
<P>
<H2>6.23 Rose protocol (<CODE>AF_ROSE</CODE>)</H2>
<P>Urz±dzenia protoko³u Rose nosz± nazwy `<CODE>rs0</CODE>', `<CODE>rs1</CODE>', itd.
Dostêpne s± w j±drach w wersji <CODE>2.1.*</CODE>.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Networking options --->
[*] Amateur Radio AX.25 Level 2
<*> Amateur Radio X.25 PLP (Rose)
</PRE>
</CODE></BLOCKQUOTE>
<P>Protoko³y AX25, NetRom i Rose s± dok³adnie omówione w
<A HREF="AX25-HOWTO.html">AX25-HOWTO</A>.
S± wykorzystywane przez krótkofalowców (packet radio).
<P>Wiêkszo¶æ pracy zwi±zanej z implementacj± tych protoko³ów pod Linuksem wykona³
Jonathon Naylor, <CODE>jsn@cs.not.ac.uk</CODE>.
<P>
<H2>6.24 SAMBA - `NetBEUI', `NetBios' support.</H2>
<P>SAMBA jest implemnetacj± protoko³u SMB (Session Management
Block). Pozwala na korzystanie z dysków i drukarek komputera
pracuj±cego pod Linuksem, komputerom pracuj±cym pod systemami
firmy Microsoft lub pod systemem OS2
<P>SAMBA i jej konfigiracja jest szczegó³owo omówiona w
<A HREF="SMB-HOWTO.html">SMB-HOWTO</A>.
<P>
<H2>6.25 Klient protoko³u SLIP</H2>
<P>Urz±dzenia protoko³u SLIP s± nazywane `<CODE>sl0</CODE>', `<CODE>sl1</CODE>'
itd. Pierwsze skonfigurowane urz±dzenie otrzymuje numer `<CODE>0</CODE>',
pozosta³e otrzymuj± kolejne numery, w momencie ich konfiguracji.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
<*> SLIP (serial line) support
[ ] CSLIP compressed headers
[ ] Keepalive and linefill
[ ] Six bit SLIP encapsulation
</PRE>
</CODE></BLOCKQUOTE>
<P>Protokó³ SLIP (Serial Line Internet Protocol) pozwala na zestawienie
po³±czenia TCP/IP przez liniê szeregow±, np. po³±czenie modemowe przez
liniê telefoniczn± lub dzier¿awion±. Oczywi¶cie aby móc korzystaæ z
protoko³u SLIP nale¿y mieæ wpierw dostêp do <EM>serwera SLIP</EM>. Wiele
uniwersytetów i firm komercyjnych udostêpniaj± us³ugê SLIP.
<P>SLIP wykorzystuje porty szeregowe komputera do przesy³ania datagramów
IP. W tym celu musi przej±æ sterowanie portu szeregowego. Urz±dzenia
SLIP nosz± nazwy <EM>sl0</EM>, <EM>sl1</EM> itd. Jak to siê ma do urz±dzeñ
portów szeregowych? Oprogramowanie sieciowe korzysta z funkcji
<EM>ioctl</EM> (i/o control) za pomoc± których mo¿e za¿±daæ zamiany
urz±dzenia portu szeregowego w urz±dzenie SLIP. Dwa popularne programy
potrafi± to zrobiæ. Jeden z nich to <EM>dip</EM>, drugi <EM>slattach</EM>.
<P>
<H3>dip</H3>
<P><EM>dip</EM> (Dialup IP) to zmy¶lny program umo¿liwiaj±cy ustawienie
prêdko¶ci portów szeregowych, sterowanie modemem w celu wybrania
odpowiedniego numeru, zautomatyzowane wej¶cie do zdalnego systemu,
przesukiwanie i wybieranie informacji przesy³anych przez zdalny
serwer (np. przydzielonego nam na czas sesji adresu IP), korzystanie z
funkcji <EM>ioctl</EM> w celu przestawienia portu szeregowego w urz±dzenie
SLIP. Program <EM>dip</EM> posiada rozbudowany jêzyk przeznaczony do
pisania skryptów, dziêki czemu mo¿na bardzo ³atwo zautomatyzowaæ
procedurê zestawiania po³±czenia SLIP.
<P>Jest dostêpny pod adresem:
<A HREF="ftp://sunsite.unc.edu/pub/Linux/system/Network/serial/dip/dip337o-uri.tgz">sunsite.unc.edu</A>.
<P>Aby go zainstalowaæ spróbuj wydaæ nastêpuj±ce polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# cd /usr/src
# gzip -dc dip337o-uri.tgz | tar xvf -
# cd dip-3.3.7o
<je¶li to konieczne popraw plik Makefile>
# make install
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Plik <CODE>Makefile</CODE> zak³ada istnienie w twoim systemie grupy o nazwie
<EM>uucp</EM>, lecz mo¿esz to zmieniæ np na <EM>dip</EM>, lub <EM>slip</EM>
zale¿nie od twojej konfiguracji.
<P>
<H3>slattach</H3>
<P><EM>slattach</EM> w przeciwieñstwie do <EM>dip</EM> jest bardzo prostym
programem, bardzo ³atwym w u¿ytkowaniu, nie posiadaj±cym bogatych
opcji programu <EM>dip</EM>. Nie posiada mo¿liwo¶ci tworzenia skryptów,
jedyne co robi to konfiguracja urz±dzenia portu szeregowego, jako
urz±dzenia SLIP. Zak³ada, ¿e posiadasz wszystkie informacje niezbêdne
do zestawienia po³±czenia oraz, ¿e po³±czenie fizyczne miêdzy portami
jest ju¿ zestawione. <EM>slattch</EM> jest idealne do wykorzystania w
sta³ych po³±czeniach z serwerem, np. przez kabel ³±cz±cy bezpo¶rednio
dwa porty szeregowe lub przez linie dzier¿awion±.
<P>
<H3>Kiedy u¿ywaæ ka¿dego z tych programów ?</H3>
<P>Skorzysta³bym z programu <EM>dip</EM> zawsze wtedy, gdy ³±czy³byn komputer
z serwerem SLIP przez modem i liniê telefoniczn±. Skorzysta³bym z
programu <EM>slattach</EM> wtedy, gdy zestawia³bym po³±czenie przez liniê
dzier¿awion± lub kabel bezpo¶rednio miêdzy serwerem i moim komputerem
i gdy nie muszê wykonywaæ ¿adnych czynno¶ci do fizycznego zestawienia
po³±czenia miêdzy moim komputerem a serwerem. Patrz rozdzia³ 'Sta³e
po³±czenie SLIP'.
<P>Konfiguracja urz±dzenia SLIP jest zbli¿ona do konfiguracji urz±dzenia
karty ethernetowej. (przeczytaj rozdzia³ 'Konfiguracja karty
ethernetowej). Jednak¿e istniej± dwie zasadnicze ró¿nice:
<P>Po pierwsze SLIP w przeciwieñstwie do sieci ethernetowych ³±czy
bezpo¶rednio ze sob± tylko dwa komputery, po jednym na ka¿dym koñcu
po³±czenia. O ile pod³±czenie kabla sieci ethernet do komputera
oznacza jej natychmiastow± gotowo¶æ do pracy, o tyle w przypadku
protoko³u SLIP mo¿e byæ wymagana wcze¶niejsza inicjacja fizycznego
po³±czenia miêdzy komputerami.
<P>Je¶li korzystasz z programu <EM>dip</EM>, to zwykle inicjacja ³±cza odbywa
siê nie tu¿ po uruchomieniu systemu, lecz pó¼niej, gdy jeste¶ gotowy
do korzystania z po³±czenia. Mo¿na ca³± tê procedurê
zautomatyzowaæ. Je¶li korzystasz z programu <CODE>slattch</CODE> wtedy
prawdopodobnie zechcesz zmodyfikowaæ plik startowy <CODE>rc.inet1</CODE>. Jak
to zrobiæ powiemy za chwilê.
<P>Istniej± dwa podstawowe serwery udostêpniaj±ce SLIP. Ró¿ni± siê
sposobem przydzia³u adresu IP, mog± to robiæ statycznie (za ka¿dym
razem otrzymujesz ten sam adres IP) i dynamicznie (po nawi±zaniu
po³±czenia serwer podaje, jakiego adresu powiniene¶ u¿ywaæ). Niemal
ka¿dy serwer SLIP bedzie wymaga³ przedstawienia siê i podania has³a.
<EM>dip</EM> potrafi zautomatyzowaæ wszystkie te procedury.
<P>
<H3>Statyczny serwer SLIP z lini± modemow± i programem DIP.</H3>
<P>Statyczny serwer SLIP to skrót oznaczaj±cy serwer SLIP przydzielaj±cy
adresy IP w sposób statyczny. Otrzymany adres IP jest wy³±cznie twój.
Za ka¿dym razem, gdy przy³±czysz siê do serwera bêdziesz konfigurowa³
port SLIP swojego komputera tym samym adresem IP.
Serwer odpowie na po³±czenie rozpoczête przez twój modem,
prawdopodobnie poprosi o podanie identyfikatora i has³a, a nastêpnie po
przej¶ciu w tryb SLIP bêdzie przesy³a³ wszystkie datagramy adresowane
na twój adres IP przez nazwi±zane przez ciebie po³±czenie. Je¶li
korzystasz ze statycznego serwera SLIP, mo¿esz chcieæ dodaæ do pliku
<CODE>/etc/hosts</CODE> pozycjê z nazw± i adresem IP twojego
komputera. Powiniene¶ równie¿ skonfigurowaæ kilka innych plików,
miêdzy innymi <CODE>rc.inet2</CODE>, <CODE>host.conf</CODE>,
<CODE>resolv.conf</CODE>, <CODE>/etc/HOSTNAME</CODE> i <CODE>rc.local</CODE>.
Pamiêtaj, ¿e modyfikuj±c <CODE>rc.inet1</CODE> nie musisz podawaæ ¿adnych
poleceñ specyficznych dla po³±czenia SLIP, poniewa¿ to dopiero <EM>dip</EM>
wykona ca³± ciê¿k± robotê konfiguruj±c interfejs SLIP, po tym jak
nawi±¿e po³±czenie modemowe i zaloguje siê na serwer.
<P>Je¶li tak w³a¶nie pracuje serwer SLIP z którego korzystasz mo¿esz
przej¶æ do rozdzia³u 'Korzystanie z programu dip', tam dowiesz siê jak
poprawnie skonfigurowaæ ten program.
<P>
<H3>Dynamiczny serwer SLIP z lini± modemow± i programem DIP.</H3>
<P><EM>Dynamiczny</EM> serwer SLIP to skrót oznaczaj±cy serwer SLIP,
który z pewnej puli przydziela adresy IP w sposób dynamiczny (za
ka¿dym razem, gdy siê z nim po³±czysz mo¿esz otrzymaæ inny adres IP).
To znaczy, ¿e nie masz gwarancji, ¿e ³±cz±c siê otrzymasz konkretny
adres IP, mo¿e on byæ wykorzystywany przez kogo¶ innego, wtedy gdy nie
korzystasz z po³±czenia. Administrator sieci, który skonfigurowa³
serwer przydzieli³ mu pewn± pulê adresów IP z której mo¿e korzystaæ.
Obs³uguj±c kolejne przychodz±ce po³±czenie znajduje pierwszy
niewykorzystany w danym momencie adres IP, przeprowadza u¿ytkownika
przez procedurê weryfikacyjn± wy¶wietlaj±c na koniec informacje
zawieraj±c± adres IP, który zosta³ przydzielony temu u¿ytkownikowi na
czas trwania nawi±zanego w³a¶nie po³±czenia.
<P>Konfiguracja do korzystania z tego rodzaju serwera jest podobna do tej
dla serwera statycznego. Trzeba jedynie dodaæ fragment pobrania adresu
IP przydzielonego nam przez serwer na czas trwania po³±czenia, a
nastêpnie kontynuowaæ konfigurowanie SLIPa z tym w³a¶nie adresem.
<P>Ponownie, <EM>dip</EM> wykonuje tê ciê¿k± pracê, a jego nowsze wersje s± na
tyle sprytne, ¿e potrafi± nie tylko zalogowaæ ciê do systemu, ale
równie¿ potrafi± odczytaæ automatycznie adres IP wy¶wietlany przez
serwer, zachowuj±c go do pó¼niejszego wykorzystania przy
konfigurowaniu interfejsu SLIP.
<P>Je¶li tak w³a¶nie pracuje serwer SLIP z którego korzystasz mo¿esz
przej¶æ do rozdzia³u 'Korzystanie z programu dip', tam dowiesz siê jak
poprawnie skonfigurowaæ ten program.
<P>
<H3>Korzystanie z programu dip.</H3>
<P>Jak wyja¶nili¶my wcze¶niej <EM>dip</EM> jest potê¿nym programem, który
potrafi upro¶ciæ i zautomatyzowaæ proces ³±czenia siê z serwerem SLIP,
logowania siê na ten serwer, uruchamiania tam odpowiedniego
oprogramowania i konfigurowania lokalnych urz±dzeñ SLIP za pomoc±
odpowiednich poleceñ korzystaj±cych z programów <EM>ifconfig</EM> i <EM>route</EM>.
<P>Podstawowym sposobem korzystania z programu <EM>dip</EM> jest pisanie i
uruchamianie specjalnych skryptów, sk³adaj±cych siê z listy poleceñ
rozumianych przez program <EM>dip</EM>. Przyjrzyj siê plikowi
<CODE>sample.dip</CODE> znajduj±cemu siê w dystrybucji programu <EM>dip</EM>. Dip
jest potê¿nym programem posiadaj±cym wiele opcji, nie bedziemy ich tu
wszystkich przedstawiaæ, je¶li ciê to interesuje, przyjrzyj siê stronom
podrêcznika po¶wiêconym programowi dip, plikom README i innym plikom
przyk³adowym znajduj±cym siê w pakiecie dystrybucyjnym programu.
<P>Prawdopodobnie zauwa¿y³e¶, ¿e plik <CODE>sample.dip</CODE> zak³ada, ¿e
korzystasz ze statycznego serwera SLIP, tzn. ¿e wiesz jaki jest twój
adres IP, zanim po³±czysz siê z serwerem. W przypadku korzystania z
dynamicznego serwera SLIP nowsze wersje programu dip zosta³y
zaopatrzone w dodatkowe polecenie, które potrafi automatycznie
odczytaæ i skonfigurowæ lokalne urz±dzenie SLIP z adresem IP
przydzielonym przez serwer. Poni¿sza próbka jest zmodyfikowanym
plikiem <CODE>sample.dip</CODE> dostarczanym w pakiecie <EM>dip337j-uri.tgz</EM> i
w twoim przypadku prawdopodobnie jest dobrym punktem startowym.
<P>Mo¿esz go zachowaæ jako np. <CODE>/etc/dipscript</CODE> i dostosowaæ go do
swoich warunków.
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# sample.dip Dialup IP connection support program.
#
# This file (should show) shows how to use the DIP
# This file should work for Annex type dynamic servers, if you
# use a static address server then use the sample.dip file that
# comes as part of the dip337-uri.tgz package.
#
#
# Version: @(#)sample.dip 1.40 07/20/93
#
# Author: Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
#
main:
# Next, set up the other side's name and address.
# My dialin machine is called 'xs4all.hacktic.nl' (== 193.78.33.42)
get $remote xs4all.hacktic.nl
# Set netmask on sl0 to 255.255.255.0
netmask 255.255.255.0
# Set the desired serial port and speed.
port cua02
speed 38400
# Reset the modem and terminal line.
# This seems to cause trouble for some people!
reset
# Note! "Standard" pre-defined "errlevel" values:
# 0 - OK
# 1 - CONNECT
# 2 - ERROR
#
# You can change those grep'ping for "addchat()" in *.c...
# Prepare for dialing.
send ATQ0V1E1X4\r
wait OK 2
if $errlvl != 0 goto modem_trouble
dial 555-1234567
if $errlvl != 1 goto modem_trouble
# We are connected. Login to the system.
login:
sleep 2
wait ogin: 20
if $errlvl != 0 goto login_trouble
send MYLOGIN\n
wait ord: 20
if $errlvl != 0 goto password_error
send MYPASSWD\n
loggedin:
# We are now logged in.
wait SOMEPROMPT 30
if $errlvl != 0 goto prompt_error
# Command the server into SLIP mode
send SLIP\n
wait SLIP 30
if $errlvl != 0 goto prompt_error
# Get and Set your IP address from the server.
# Here we assume that after commanding the SLIP server into SLIP
# mode that it prints your IP address
get $locip remote 30
if $errlvl != 0 goto prompt_error
# Set up the SLIP operating parameters.
get $mtu 296
# Ensure "route add -net default xs4all.hacktic.nl" will be done
default
# Say hello and fire up!
done:
print CONNECTED $locip ---> $rmtip
mode CSLIP
goto exit
prompt_error:
print TIME-OUT waiting for sliplogin to fire up...
goto error
login_trouble:
print Trouble waiting for the Login: prompt...
goto error
password:error:
print Trouble waiting for the Password: prompt...
goto error
modem_trouble:
print Trouble occurred with the modem...
error:
print CONNECT FAILED to $remote
quit
exit:
exit
</PRE>
</CODE></BLOCKQUOTE>
<P>Powy¿szy przyk³ad zak³ada, ¿e ³±czysz siê z <EM>dynamicznym</EM> serwerem
SLIP. Je¶li ³±czysz siê z serwerem <EM>statycznym</EM> powiniene¶
skorzystaæ z pliku <CODE>sample.dip</CODE> dostarczanego razem z
<EM>dip337j-uri.tgz</EM>.
<P>Gdy <EM>dip</EM> otrzyma polecenie <EM>get $local</EM> przeszukuje
tekst przesy³any przez serwer SLIP w poszukiwaniu ci±gu znaków
wygl±daj±cego jako adres IP, tzn. ci±gi cyfr rozdzielone kropk± '.'.
Zosta³a ona wprowadzone dla osób korzystaj±cych z <EM>dynamicznych</EM>
serwerów SLIP, aby dip móg³ sam, automatycznie odczytaæ adres IP
przydzielony przez serwer.
<P>W powy¿szym przyk³adzie po zestawieniu po³±czenia SLIP zostanie
automatycznie dodana domy¶lna trasa skierowana w³a¶nie przez to
po³±czenie. Je¶li nie tego oczekujesz, mo¿esz np. posiadaæ inne
po³±czenie przez sieæ ethernetow±, przez które ma byæ skierowana
domy¶lna trasa, usuñ z powy¿szego pliku wiersz z poleceniem
<EM>default</EM>. Je¶li po zakoñczeniu dzia³ania tego skryptu wydasz
polecenie <EM>ifconfig</EM> zobaczysz, ¿e pojawi³o siê nowe urz±dzenie
<EM>sl0</EM>. To jest w³a¶nie urz±dzenie SLIP. W miarê potrzeb mo¿esz
zmieniæ konfiguracjê sieci rêcznie, po zakoñczeniu dzia³ania programu
<EM>dip</EM>, za pomoc± pogramów <EM>ifconfig</EM> i <EM>route</EM>.
<P>Nale¿y pamietaæ, ¿e <EM>dip</EM> pozwala na wybranie jednego z wielu ró¿nych
protoko³ów wykorzystywanych w poleceniu <CODE>mode</CODE>. Najczê¶ciej jest to
<EM>cSLIP</EM> oznaczaj±cy SLIP z kompresj± nag³ówków. Pamiêtaj, ¿e oba
koñce po³±czenia musz± pracowaæ w identycznym trybie. Je¶li zmienisz
jakie¶ ustawienia, musisz siê upewniæ, ¿e serwer sobie z nimi poradzi.
<P>Powy¿szy przyk³ad jest uniwersalny i powinien poradziæ sobie z
wiêkszo¶ci± b³êdów jakie mog± wyst±piæ. Wiêcej informacji znajdziesz na
stronie podrêcznika po¶wiêconej programowi <EM>dip</EM> (man dip).
Oczywi¶cie mo¿esz w taki sposób zmodyfikowaæ ten skrypt, aby w przypadku
wystapienia b³êdu próbowa³ powtórnie nawi±zaæ po³±czenie telefoniczne,
lub próbowa³ po³±czyæ siê z innymi serwerami, które udostêpniaj± ci
wejscie do Internetu.
<P>
<H3>Sta³e po³±czenie SLIP przez liniê dzier¿awion± -slattach. </H3>
<P>
Je¶li jeste¶ posiadaczem kabla ³±cz±cego dwa komputery,
lub szczê¶liwcem posiadaj±cym linie dzier¿awion± lub inne sta³e
po³±czenie szeregowe dwóch komputerów, wtedy nie musisz siê k³opotaæ
zestawiaj±c ³±cze szeregowe za pomoc± programu <EM>dip</EM>. <EM>slattach</EM>
jest bardzo ³atwym w uzywaniu narzêdziem umo¿liwiaj±cym skonfigurowaæ
zestawiane po³aczenie.
<P>Poniewa¿ bêdzie to po³±czenie sta³e, prawdopodobnie zechcesz dodaæ kilka
poleceñ do pliku <CODE>rc.inet1</CODE>. Podsumowuj±c, wszystko co potrzebujesz
w przypadku zestawiania po³±czenia przez liniê sta³±, jest poprawne
ustawienie prêdko¶ci portów szeregowych i prze³±czenie ich w tryb SLIP.
<EM>slattach</EM> pozwala wykonaæ to wszystko wydaj±c jedno polecenie. Dodaj
do pliku <CODE>rc.inet1</CODE> nastêpuj±ce polecenie:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
# Zestaw po³±czenie SLIP ze statycznym adresem IP
#
# configure /dev/cua0 for 19.2kbps and cslip
/sbin/slattach -p cslip -s 19200 /dev/cua0 &
/sbin/ifconfig sl0 IPA.IPA.IPA.IPA pointopoint IPR.IPR.IPR.IPR up
#
# Koniec
</PRE>
</CODE></BLOCKQUOTE>
<P>Gdzie:
<DL>
<DT><B>IPA.IPA.IPA.IPA</B><DD><P>twój adres IP
<DT><B>IPR.IPR.IPR.IPR</B><DD><P>adres IP po drugim koñcu po³±czenia SLIP
</DL>
<P><EM>slattach</EM> przyporz±dkowuje do urz±dzenia portu szeregowego
pierwsze wolne urz±dzenie slip. Rozpoczyna od <EM>sl0</EM>. To znaczy
pierwsze wywo³anie polecenia <CODE>slattach</CODE> przyporz±dkowuje portowi
szeregowemu urz±dzenie <EM>sl0</EM>, przy nastêpnym wywo³aniu bêdzie to
<EM>sl1</EM> itd.
<P><EM>slattach</EM> umo¿liwia skonfigurowanie wielu ró¿nych protoko³ów
(argument opcji <CODE>-p</CODE>). W twoim przypadku w zale¿no¶ci od tego czy
bêdziesz chcia³ korzystaæ z kompresji nag³ówków czy nie bêdziesz korzysta³ albo z
protoko³u <EM>cSLIP</EM> albo <EM>SLIP</EM>. Uwaga: oba koñce po³±czenia
musz± u¿ywaæ tego samego protoko³u.
<P>
<H2>6.26 Serwer SLIP.</H2>
<P>
Je¶li posiadasz komputer, byæ mo¿e przy³±czony do sieci, i chcesz, aby
udostêpnia³ innym przez modem serwisy internetowe, to musisz skonfigurowaæ go jako
serwer. Je¶li protoko³em, który chcesz u¿ywaæ jest SLIP, to istniej± trzy mo¿liwo¶ci
konfiguracji twojego komputera jako serwer. Osobi¶cie preferujê pierwsz± z
prezentowanych, <EM>sliplogin</EM>. Wydaje siê byæ najprostsz± i naj³atwiejsz±
do skonfigurowania i zrozumienia. Przedstawiê opis wszystkich trzech metod,
aby¶ móg³ samemu podj±æ decyzjê.
<P>
<H3>Serwer korzystaj±cy z programu <EM>sliplogin</EM>. </H3>
<P>
<EM>sliplogin</EM> to program zastêpuj±cy zwyk³± pow³okê (interpreter poleceñ)
u¿ytkownika, dla tych, którzy chc± korzystaæ z linii szeregowej w trybie SLIP.
Pozwala na skonfigurowanie twojego komputera zarówno jako <EM>statycznego
serwera SLIP</EM> (u¿ytkownicy za ka¿dym razem otrzymuj± ten sam adres IP), lub
<EM>dynamicznego serwera SLIP</EM> (adres IP jest przydzielony raczej do
linii szeregowej, a nie u¿ytkownika, wiêc u¿ytkownik nie ma pewno¶ci,
¿e za ka¿dym razem otrzyma ten sam adres IP).
<P>
U¿ytkownik musi wpierw przej¶æ przez standardow± procedurê wchodzenia do systemu
(logowanie siê) podaj±c swój identyfikator i has³o, lecz po wej¶ciu do
systemu, zmiast zwyk³ego interpretera poleceñ uruchamiany jest program
<EM>sliplogin</EM>, który przeszukuje swój plik konfiguracyjny (<CODE>/etc/slip.hosts</CODE>)
w poszukiwaniu pozycji odpowiadaj±cej identyfikatorowi u¿ytkownika. Po jej
znalezieniu, przestawia liniê w tryb 8mio bitowy, a nastêpnie korzystaj±c
z odpowiednich funkcji <EM>ioctl</EM> prze³±cza liniê w tryb SLIP. Po zakoñczeniu
tego etapu nastêpuje ostatnia faza, <EM>sliplogin</EM> uruchamia skrypt, którego
zadaniem jest skonfigurowanie interfejsu SLIP (ustawienie adresu IP, netmaski)
dodanie odpowiedniej trasy do tabeli trasowania (routingu) j±dra.
Skrypt ten nosi zwykle nazwê <CODE>/etc/slip.login</CODE> lecz podobnie jak w
przypadku <EM>getty</EM>, je¶li niektórzy u¿ytkownicy wymagaj± specjalnego traktowania
mo¿esz utworzyæ skrypt <CODE>/etc/slip.login.identyfikator_uzytkownika</CODE>,
który w takim przypadku zostanie uruchomiony w miejsce standardowego skryptu.
<P>
<P>
Aby <EM>sliplogin</EM> dzia³a³ poprawnie nale¿y zmodyfikowaæ trzy lub cztery
pliki. Omówiê szczegó³owo sk±d i jak zdobyæ odpowiednie oprogramowanie
i jak je poprawnie skonfigurowaæ. Wspomniane pliki to:
<P>
<UL>
<LI><CODE>/etc/passwd</CODE>, definiujacy u¿ytkownik³ów twojego systemu,</LI>
<LI><CODE>/etc/slip.hosts</CODE>, zawieraj±cy informacje o ka¿dym u¿ytkowniku
korzystaj±cym ze SLIPa,</LI>
<LI><CODE>/etc/slip.login</CODE>, odpowiedzialny z odpowiedni± konfiguracjê
systemu, po zalogowaniu siê u¿ytkownika,</LI>
<LI><CODE>/etc/slip.tty</CODE> wymagany tylko wtedy, gdy konfigurujesz <EM>dynamiczny
serwer SLIP</EM>, a który zawiera tabelê przydzielanych adresów IP,</LI>
<LI><CODE>/etc/slip.logout</CODE> zawieraj±cy polecenia jakie nale¿y wykonaæ po
zakoñczeniu pracy przez u¿ytkownika, lub po zerwaniu po³±czenia.</LI>
</UL>
<P>
<H3>Sk±d wzi±æ <EM>sliplogin</EM> </H3>
<P>
Byæ mo¿e pakiet <EM>sliplogin</EM> jest ju¿ zainstalowany na twoim komputerze,
jako czê¶æ dystrybucji, je¶li nie, <EM>sliplogin</EM> jest dostêpny pod adresem
<A HREF="ftp://sunsite.unc.edu/pub/linux/system/Network/serial/sliplogin-2.1.1.tar.gz">sunsite.unc.edu</A>.
Plik tar zawiera pliki ¼ród³owe, skompilowane pliki binarne i dokumentacjê.
<P>
Aby zapewniæ, ¿e <EM>sliplogin</EM> mo¿e byæ uruchamiany przez upowa¿nionych do
tego u¿ytkowników, powiniene¶ do pliku <CODE>/etc/group</CODE> dodaæ
pozycjê podobn± do poni¿szej:
<P>
<BLOCKQUOTE><CODE>
<PRE>
..
slip::13:radio,fred
..
</PRE>
</CODE></BLOCKQUOTE>
<P>
Podczas instalacji pakietu <EM>sliplogin</EM>, <CODE>Makefile</CODE> zmieni grupê do której
nale¿y program <EM>sliplogin</EM> na <CODE>slip</CODE>. W ten sposób, prócz w³a¶ciciela
bêd± go mogli uruchamiaæ tylko u¿ytkownicy nale¿±cy do grupy SLIP. W powy¿szym
przyk³adzie mog± to robiæ tylko u¿ytkownicy <CODE>radio</CODE> i <CODE>fred</CODE>.
<P>
Aby zainstalowaæ pliki binarne do katalogu <CODE>/sbin/</CODE>, a strony podrêcznika
do <CODE>/man/</CODE> nale¿y wykonoaæ nastêpuj±ce polecenia:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# cd /usr/src
# gzip -dc .../sliplogin-2.1.1.tar.gz | tar xvf -
# cd sliplogin-2.1.1
# <..Je¶li nie korzystasz z shadow pasword popraw Makefile..>
# make install
</PRE>
</CODE></BLOCKQUOTE>
<P>Je¶li przed instalacj± chcesz samemu skompilowaæ pliki binarne
przed <CODE>make install</CODE> wykonaj polecenie <CODE>make clean</CODE>. Je¶li chcesz
zainstalowaæ pliki binarne w innym miejscu, musisz
wcze¶niej zmieniæ plik <CODE>Makefile</CODE>.
<P>
Wiêcej informacji znajdziesz w plikach <CODE>README</CODE> wewn±trz pakietu.
<P>
<H3>Konfiguracja pliku <CODE>/etc/passwd</CODE>. </H3>
<P>Zwykle dla osób korzystaj±cych ze SLIPa tworzy siê oddzielne konta.
Powszechnie przyjêta konwencja mówi, ¿e jako pseudonim u¿ytkownika
nale¿y przyj±æ nazwê ³±cz±cego siê z nami komputera, poprzedzon±
wielk± liter± 'S'. Je¶li ³±cz±cy siê z nami komputer nosi nazwê
<CODE>radio</CODE>, mog³by¶ utworzyæ dla niego pozycjê w pliku <CODE>/etc/passwd</CODE>
wygl±dajac± mniej wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Sradio:FvKurok73:1427:1:radio SLIP login:/tmp:/sbin/sliplogin
</PRE>
</CODE></BLOCKQUOTE>
<P>Tak na prawdê nie ma znaczenia jaki jest identyfikator konta.
<P>
Uwaga: u¿ytkownik SLIPa nie potrzebuje w³asnego katalogu macierzystego,
poniewa¿ nie bêdzie korzysta³ z pow³oki interpretera poleceñ na naszym komputerze.
Dlatego dobrym wyborem w takim przypadku jest katalog <CODE>/tmp</CODE>.
Pamiêtaj, ¿e zamiast zwyk³ej pow³oki uruchamiany jest program <EM>sliplogin</EM>.
<P>
<H3>Konfiguracja pliku <CODE>/etc/slip.hosts</CODE> </H3>
<P>Plik <CODE>/etc/slip.hosts</CODE> jest przeszukiwany przez <EM>sliplogin</EM>
w poszukiwaniu szczegó³ów konfiguracyjnych dla u¿ytkownika, przez którego
zosta³ uruchomiony. W tym w³a¶nie pliku podaje siê adres IP i netmaskê
które bêd± przydzielone temu u¿ytkownikowi i wykorzystywane do konfiguracji.
Przyk³adowe dwie pozycje, jedn± dla statycznej konfiguracji dla komputera radio
i drug±, dynamiczna konfiguracja dla komputera <CODE>albert</CODE> mog³y by wygl±daæ
nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#
Sradio 44.136.8.99 44.136.8.100 255.255.255.0 normal -1
Salbert 44.136.8.99 DYNAMIC 255.255.255.0 compressed 60
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Poszczególne pola w wierszu pliku <CODE>/etc/slip.hosts</CODE> oznaczaj±:
<P>
<OL>
<LI>identyfikator u¿ytkownika;</LI>
<LI>adres IP serwera, tzn adres IP tego komputera;</LI>
<LI>adres IP przydzielony komputerowi po drugiej stronie po³±czenia.
Je¶li w tym polu wystêpuje s³owo <CODE>DYNAMIC</CODE> wtedy adres IP, zostanie
przydzielony na podstawie informacji zawartych w pliku <CODE>/etc/slip.tty</CODE>.
<B>Uwaga:</B> to udogodnienie pojawi³o siê dopiero w wersji 1.3 programu
sliplogin.</LI>
<LI>netmaska przydzielona ³±cz±cemu siê komputerowi, w notacji dziesiêtnej
z kropkami np. 255.255.255.0 netmaska klasy C;</LI>
<LI>tryb pracy SLIP pozwalaj±cy na w³±czenie/wy³±czenie kompresji lub
innych udogodnieñ;</LI>
<LI>parametr czasowy okre¶lajacy jak d³ugo linia mo¿e pozostaæ w
stanie oczekiwania na przes³anie informacji (brak otrzymanych
datagramów), zanim nast±pi automatyczne roz³±czenie. Wielko¶æ ujemna
wy³±cza to udogodnienie.</LI>
<LI>parametry opcjonalne. </LI>
</OL>
<P>Uwaga: W polach 2 i 3 mo¿na podawaæ zarówna nazwy komputerów,
jak i adresy IP. Je¶li podasz nazwê komputera, sprawd¼, czy system
potrafi znale¼æ jego adres IP, w przeciwnym razie wykonanie skryptu
zakoñczy siê niepowodzeniem. Mo¿esz to sprawdziæ próbuj±c po³±czyæ siê
z nim za pomoc± programu telnet. Je¶li zobaczysz komunikat
`<EM>Trying nnn.nnn.nnn...</EM>' to znaczy, ¿e twój komputer potrafi
znale¼æ adres IP komputera o podanej przez ciebie nazwie. Je¶li
zobaczysz komunikat <EM>Unknown host</EM>', to znaczy, ¿e jednak nie potrafi.
Je¶li nie potrafi musisz podawaæ adres IP tego komputera lub sprwad¼
konfiguracjê DNS swojego komputera.
<P>
Najczê¶ciej wykorzysytwane tryby pracy SLIP to:
<P>
<DL>
<DT><B>normal </B><DD><P>zwyk³y, nieskompresowny SLIP.
<DT><B>compressed </B><DD><P>kompresja nag³ówków van Jacobsena (cSLIP)
</DL>
<P>Oczywi¶cie s± to dwie wzajemnie wykluczaj±ce siê opcje. Wiêcej
informacji na temat dostêpnych opcji znajdziesz na stronie podrêcznika
po¶wiêconej programowi sliplogin.
<P>
<H3>Konfiguracja pliku <CODE>/etc/slip.login</CODE>. </H3>
<P>
Po przeszukaniu przez <EM>sliplogin</EM> pliku <CODE>/etc/slip.hosts</CODE>
i znalezieniu opowiednich pozycji, zostanie uruchomiony skrypt
<CODE>/etc/sli.login</CODE>, który w rzeczywisto¶ci wykonuje ca³a pracê
zwi±zan± z konfiguracja interfejsów sieciowych, korzystaj±c
z przekazanych mu informacji o adresie IP i netmasce sieci.
<P>Przyk³adowy plik <CODE>/etc/slip.login</CODE> dostarczany w pakiecie
<EM>sliplogin</EM> wygl±da nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
#!/bin/sh -
#
# @(#)slip.login 5.1 (Berkeley) 7/1/90
#
# generic login file for a SLIP line. sliplogin invokes this with
# the parameters:
# $1 $2 $3 $4, $5, $6 ...
# SLIPunit ttyspeed pid the arguments from the slip.host entry
#
/sbin/ifconfig $1 $5 pointopoint $6 mtu 1500 -trailers up
/sbin/route add $6
arp -s $6 <hw_addr> pub
exit 0
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Jak widaæ, powy¿szy skrypt po prostu korzysta z programu <EM>ifconfig</EM> i
<EM>route</EM>. Konfiguruje urz±dzenie SLIP zgodnie z podanymi mu
adresem IP i netmask±, nastêpnie modyfikuje tabele trasowania w j±drze.
Wykonuje te same polecenia, które nale¿y wykonaæ rêcznie korzystaj±c
ze <EM>slattach</EM>.
<P>
<P>Zwróæ uwagê na u¿ycie <EM>Proxy ARP</EM> w celu zapewnienia komunikacji
miêdzy komputerami znajduj±cymi siê na tym samym segmencie sieci co
nasz serwer, a komputerem ³±cz±cym siê przez liniê szeregow±. Pole
<CODE><hw_addr></CODE> powinno zawieraæ adres sprzêtowy karty
ethernetowej serwera. Je¶li serwer nie jest przy³±czony do sieci
ethernetowej mo¿esz pomin±æ ten wiersz ca³kowicie.
<P>
<H3>Konfiguracja pliku <CODE>/etc/slip.logout</CODE>.</H3>
<P>Kiedy nastêpuje przerwanie po³±czenie chcesz byæ pewny, ¿e port
szeregowy jest przywracany do swego normalnego stanu i jest gotowy do
obs³ugi kolejnego po³±czenia. Do tego celu s³u¿y skrypt
<CODE>/etc/slip.logout</CODE>. Jest bardzo prosty i jest wywo³ywany z tymi
samymi argumentami co <CODE>/etc/slip.login</CODE>.
<P>
<BLOCKQUOTE><CODE>
<PRE>
#!/bin/sh -
#
# slip.logout
#
/sbin/ifconfig $1 down
arp -d $6
exit 0
#
</PRE>
</CODE></BLOCKQUOTE>
<P>Wykonywane przez niego czynno¶ci to: wy³±czenie interfejsu slip,
spowoduje automatyczne usuniêcie z tabeli trasowania wprowadzonej tam podczas
zestawiania po³±czenie pozycji; usuniêcie z tabeli <CODE>arp</CODE>
wprowadzonej tam rêcznie pozycji. Nie potrzebujesz tego polecenia,
je¶li twój serwer nie jest przy³±czony do sieci ethernetowej.
<P>
<H3>Konfiguracja pliku <CODE>/etc/slip.tty</CODE>.</H3>
<P>Je¶li korzystasz z dynamicznego przydzia³u adresów IP (choæ jeden
komputer w pliku <CODE>/etc/slip.hosts</CODE> jest skonfigurowany z opcj±
<CODE>DYNAMIC</CODE>) to musisz równie¿ skonfigurowaæ plik
<CODE>/etc/slip.tty</CODE> informuj±c system jakie adresy IP s±
przydzielone do ka¿dego z wykorzystywanych portów szeregowych. Plik
ten jest potrzebny tylko wtedy, gdy twój serwer bêdzie przydziela³
adresy IP u¿ytkownikom w sposób dynamiczny.
<P>Plik zawiera tabelê, która ka¿demu wykorzystywanemu urz±dzeniu
<EM>tty</EM> przyporz±dkowuje adres IP jaki ma zostaæ przydzielony
komputerowi ³±cz±cemu siê przez to urz±dzenie <EM>tty</EM>.
<P>Format niniejszego pliku jest nastêpuj±cy:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# slip.tty tty -> adres IP
# format: /dev/tty?? xxx.xxx.xxx.xxx
#
/dev/ttyS0 192.168.0.100
/dev/ttyS1 192.168.0.101
#
</PRE>
</CODE></BLOCKQUOTE>
<P>
<P>Pozycje w powy¿szym przyk³adzie oznaczaj±, ¿e wszyscy, którzy po³±cz±
siê przez port <CODE>/dev/ttuS0</CODE> i jako swoj adres maj± w pliku
<CODE>/etc/slip.hosts</CODE> s³owo <CODE>DYNAMIC</CODE> otrzymaj± adres <CODE>192.168.0.100</CODE>.
<P>W ten sposób potrzebujesz jedynie jednego adresu IP na ka¿dy
wykorzystywany port dla wszystkich u¿ytkowników, którzy nie potrzebuj±
dedykowanego, sta³ego adresu IP. Dziêki temu liczba adresów potrzebna
do obs³ugi wielu u¿ytkowników jest bardzo ma³a.
<P>
<H3>Serwer SLIP korzystaj±cy z programu <EM>dip</EM>.</H3>
<P>Czê¶æ z prezentowanej poni¿ej informacji pochodzi ze stron podrêcznika
dotycz±cych programu <EM>dip</EM>. Jest tam pokrótce opisane jak
wykorzystaæ <EM>dip</EM> jako serwer SLIP. Proszê równie¿ zwróciæ uwagê,
¿e podane informacje dotycz± wersji <EM>dip337o-uri.tgz</EM> i
prawdopodobnie nie maj± zastosowania do innych wersji programu.
<P><EM>dip</EM> posiada tryb pracy, w którym automatycznie wyszukuje pozycjê
dotycz±c± u¿ytkownika, który go wywo³a³ i konfiguruje liniê szeregow±
jako po³±czenie SLIP wed³ug parametrów jakie znalaz³ w pliku
<CODE>/etc/diphosts</CODE>. Ten tryb pracy jest w³±czany wtedy, gdy
<EM>dip</EM> zostanie uruchominy jako program o nazwie <EM>diplogin</EM>.
To jest w³a¶nie sposób wykrzystania <EM>dip</EM>a do stworzenia serwera
SLIP. Nale¿y utworzyæ specjalne konta, z programem <EM>diplogin</EM> jako
pow³ok± u¿ytkownika.
<P>Pierwsze co musisz zrobiæ, to nastêpuj±ce dowi±zanie symboliczne:
<P>
<BLOCKQUOTE><CODE>
<PRE>
# ln -sf /usr/sbin/dip /usr/sbin/diplogin
</PRE>
</CODE></BLOCKQUOTE>
<P>Nastêpnie nale¿y dodaæ odpowiednie pozycje do pliku
<CODE>/etc/passwd</CODE> i <CODE>/etc/diphosts</CODE>.
<P>Aby skonfigurowaæ Linuksa jako serwer SLIP wykorzystuj±c do tego
program <EM>dip</EM> wymaga utworzenia specjalnych kont do obs³ugi SLIPa z
pow³ok± u¿ytkownika w postaci programu <EM>dip</EM> jako
<EM>diplogin</EM>. Sugerowana konwencja nadawania nazw tym kontom zaleca,
aby pseudonim u¿ytkownika rozpoczyna³ siê wielk± liter± 'S', np. `Sfredm'.
<P>Przyk³adowa pozycja pliku <CODE>/etc/passwd</CODE> konta SLIP mo¿e
wygl±daæ nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Sfredm:ij/SMxiTlGVCo:1004:10:Fred:/tmp:/usr/sbin/diplogin
^^ ^^ ^^ ^^ ^^ ^^ ^^
| | | | | | \__ diplogin jako pow³oka u¿ytkownika
| | | | | \_______ katalog domowy
| | | | \____________ pe³na nazwa u¿ytkownika
| | | \_________________ numer grupy (GID)
| | \_____________________ numer u¿ytkownika (UID)
| \_______________________________ zakodowane haslo
\__________________________________________ pseudonim u¿ytkownika
</PRE>
</CODE></BLOCKQUOTE>
<P>Po zalogowaniu siê u¿ytkownika (je¶li zostanie poprawnie zweryfikowany)
program login uruchomi polecenie <EM>diplogin</EM>. <EM>dip</EM> wywo³any jako
<EM>diplogin</EM> zak³ada, ¿e zosta³ uruchomiony jako pow³oka
u¿ytkownika. Piersze co robi, to korzysta z funkcji <EM>getuid()</EM>
pobieraj±c pseudonim wywo³uj±cego go u¿ytkownika. Nastêpnie
przeszukuje <CODE>/etc/diphosts</CODE> w poszukiwaniu pierwszej pozycji,
która pasuje do zdobytego identyfikatora lub wykorzystywanego
urz±dzenia <EM>tty</EM>, a nastêpnie odpowiednio siê
konfiguruje. Decyduj±c czy u¿ytkownik powinien mieæ w³asn± pozycjê w
pliku <CODE>/etc/diphosts</CODE>, czy powinien korzystaæ z konfiguracji
domy¶lnej, mo¿esz budowaæ serwer, który korzysta zarówno z
dynamicznego i statycznego przydzia³u adresów IP.
<P><EM>dip</EM> automatycznie doda pozycjê <EM>Proxy-ARP</EM> je¶li zostanie
wywo³any jako <EM>diplogin</EM>. Nie musisz siê martwiæ rêcznym dodawaniem
tych pozycji.
<P>
<H3>Konfiguracja pliku <CODE>/etc/diphosts</CODE></H3>
<P>
<P><CODE>/etc/diphosts</CODE> jest wykorzystywany przez <EM>dip</EM> do
wyszukiwania konfiguracji dla ³±cz±cych siê komputerów. Mog± to byæ
pozycje dotycz±ce zarówno komputerów ³±cz±cych siê z twoim Linuksem,
lecz równie dobrze mog± to byæ pozycje dotycz±ce komputerów, z którymi
³±czy siê twój Linux.
<P>Ogólny format pliku <CODE>/etc/diphosts</CODE> wygl±da nastêpuj±co:
<P>
<BLOCKQUOTE><CODE>
<PRE>
..
Suwalt::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006
ttyS1::145.71.34.3:145.71.34.2:255.255.255.0:Dynamic ttyS1:CSLIP,296
..
</PRE>
</CODE></BLOCKQUOTE>
<P>Poszczególne pola oznaczaj±:
<OL>
<LI><CODE>pseudonim u¿ytkownika</CODE>: identyfikator zwracany przez
getpwuid(getuid()) lub nazwa terminala</LI>
<LI><CODE>niewykorzystane</CODE>: zgodno¶æ z formatem passwd</LI>
<LI><CODE>adres zdalny</CODE>: nazwa (adres IP) ³acz±cego siê z nami komputera</LI>
<LI><CODE>adres lokalny</CODE>: nazwa (adres IP) naszego serwera</LI>
<LI><CODE>netmaska</CODE>: netmaska w notacji dziesiêtnej</LI>
<LI><CODE>komentarz</CODE>: mo¿esz tu wstawiæ co chcesz</LI>
<LI><CODE>protokó³</CODE>: Slip, CSlip itp.</LI>
<LI><CODE>MTU</CODE>: liczba</LI>
</OL>
<P>Przyk³ady pozycji pliku <CODE>/etc/net/diphosts</CODE> dla komputerów
³±cz±cych siê z nami:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:SLIP,296
</PRE>
</CODE></BLOCKQUOTE>
<P>definuj±cej po³±czenie SLIP miêdzy naszym serwerem, a komputerem,
który otrzyma adres 145.71.34.1, parametr MTU po³±czenia bêdzie
wynosi³ 296, lub
<P>
<BLOCKQUOTE><CODE>
<PRE>
Sfredm::145.71.34.1:145.71.34.2:255.255.255.0:SLIP uwalt:CSLIP,1006
</PRE>
</CODE></BLOCKQUOTE>
<P>definiuj±cej po³±czenie cSLIP z komputerem, który otrzyma adres
145.71.34.1. parametr MRU po³±czenia wynosi³ 1008.
<P>Dlatego wszyscy u¿ytkownicy którym zezwolisz na przydzielany statycznie
adres IP powinni byæ wymienieni w pliku /etc/diphosts. Jeli chcesz aby
uzytkownicy ³±cz±cy siê na pewien port mieli przydzielane numery w
sposób dynamiczny musisz umie¶ciæ wpis dla wspomnianego portu i usun±æ
wszystkie wpisy indywidualnych u¿ytkowników. Upewnij siê aby
skonfigurowaæ co najmniej jeden wpis dla ka¿dego z urz±dzeñ tty
wykorzystywanego przez twoich u¿ytkowników w celu zapewnienia im
poprawnej konfiguracji niezale¿nie od modemu z którym siê po³±cz±.
<P>Kiedy u¿ytkownik siê loguje, widzi standardow± zachêtê do podania
swojego identyfikatora SLIP i has³a. Jeli po wprowadzeniu ¿±danych
informacji zostanie zweryfikowany poprawnie, nie zobaczy ¿adnych
specjalnych komunikatów. Powinien wtedy prze³±czyæ siê po swojej stronie
w tryb SLIP i mieæ poprawne po³±czenie wed³ug konfiguracji zapisanej w
pliku diphosts.
<P>
<H3>Serwer SLIP korzystaj±cy z pakietu <EM>dSLIP</EM>.</H3>
<P>Matt Dillon <CODE><dillon@apollo.west.oic.com></CODE> stworzy³ pakiet,
który s³u¿y nie tylko do inicjowania po³±czenia z serwerem, ale równie
dobrze mo¿e obs³ugiwaæ po³±czenia przychodz±ce. Jest to kombinacja
ma³ych programów i skryptów zarz±dzaj±cych dla ciebie
po³±czeniem. Musisz mieæ zainstalowan± pow³okê <EM>tcsh</EM> poniewa¿
przynajmniej jeden ze skryptów jej wymaga. Matt dostarcza binarn±
kopiê programu <EM>expect</EM>, poniewa¿ wykorzystuje go inny ze
skryptów. Prawdopodobnie zmuszenie pakietu do pracy bêdzie od ciebie
wymaga³o trochê do¶wiadczenia w obchodzeniu siê z programem
<EM>expect</EM>, lecz niech ciê to nie odstrêcza.
<P>Matt napisa³ dobry zestaw instrukcji instalacyjnych zgromadzonych w
pliku README. Nie bêdê ich tutaj powtarza³.
<P>Pakiet <EM>dSLIP</EM> mo¿esz pobraæ bezpo¶rednio ze ¼ród³a:
<B>apollo.west.oic.com</B>
<P>
<BLOCKQUOTE><CODE>
<PRE>
/pub/linux/dillon_src/dSLIP203.tgz
</PRE>
</CODE></BLOCKQUOTE>
<P>lub z:
<P><B>sunsite.unc.edu</B>
<P>
<BLOCKQUOTE><CODE>
<PRE>
/pub/Linux/system/Network/serial/dSLIP203.tgz
</PRE>
</CODE></BLOCKQUOTE>
<P>Przeczytaj plik <CODE>README</CODE> i dodaj odpowiednie pozycje do pliku
<CODE>/etc/passwd</CODE> i <CODE>/etc/group</CODE> <B>zanim</B> wydasz polecenie
<CODE>make install</CODE>.
<P>
<H2>6.27 Obs³uga protoko³u STRIP (Starmode Radio IP)</H2>
<P>Urz±dzenia STRIP nosz± nazwy `<CODE>st0</CODE>', `<CODE>st1</CODE>', itd.
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
....
[*] Radio network interfaces
< > STRIP (Metricom starmode radio IP)
</PRE>
</CODE></BLOCKQUOTE>
<P>STRIP to protokó³ zaprojektowany specjalnie dla radiowych modemów
Metricom na uniwersystecie w Stanford w ramach projektu badawczego
nosz±cego nazwê
<A HREF="http://mosquitonet.Stanford.EDU/mosquitonet.html">MosquitoNet Project</A>.
Zajdziesz tam mnóstwo ciekawych informacji, nawet je¶li nie jeste¶
bezpo¶rednio zainteresowany projektem.
<P>Modemy Metricom przy³±cza siê przez port szeregowy komputera,
posiadaj± szerokie spektrum technologiczne i s± zdolne do pracy z
prêdko¶ci± zbli¿on± do 100kbps. Informacje na temat samych modemów
Metricom jest dostêpna tutaj:
<A HREF="http://www.metricom.com/">Metricom Web Server</A>.
<P>W chwili obecnej standardowe narz±dzia sieciowe nie obs³uguj± sterownika
STRIP. Musisz zdobyæ specjalistyczne narzêdzia dostêpne na serwerze
www projektu MosquitoNet. Szczegó³y na temat niezbêdnego
oprogramowania znajdziesz tutaj:
<A HREF="http://mosquitonet.Stanford.EDU/strip.html">MosquitoNet STRIP Page</A>.
<P>Konfiguracja sieci pracuj±cych ze sterownikiem STRIP polega na
wykorzystaniu zmodyfikowanego programu <EM>slattach</EM>, które ustawia
tryb pracy linii szeregowej na STRIP, a nastêpnie na konfiguracji
powsta³ego urz±dzenia `<CODE>st[0-9]</CODE>' w taki sam sposób, jak gdyby by³a
to zwyk³a karta ethernetowa. Z jednym wyj±tkiem, z przyczyn
technicznych STRIP nie obs³uguje protoko³u ARP, dlatego musisz rêcznie
skonfigurowaæ tabelê ARP dla wszystkich komputerów w twojej podsieci.
Co nie powinno sprawiæ wiêkszego k³opotu.
<P>
<H2>6.28 Token Ring</H2>
<P>Urz±dzenia Token Ring nosz± nazwy `<CODE>tr0</CODE>', `<CODE>tr1</CODE>' itd.
Token Ring jest standardem sieci LAN opracowanym przez IBM, który
unika kolizji wprowadzaj±c mechanizm pozwalaj±cy na transmisjê danych
w jednej chwili tylko jednej stacji przy³±czonej do sieci. "Token" w
danej chwili mo¿e nale¿eæ tylko do jednej stacji i to w³a¶nie ta
stacja, która go posiada jest uprawniona do nadawania informacji. Po
zakoñczonej transmisji przekazuje "Token" nastêpnej stacji. Przechodzi
kolejno pomiêdzy wszystkimi aktywnymi koñcówkami sieci. St±d nazwa
"Token Ring".
<P><B>Opcje konfiguracji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
....
[*] Token Ring driver support
< > IBM Tropic chipset based adaptor support
</PRE>
</CODE></BLOCKQUOTE>
<P>Konfiguracja urz±dzeñ token ring jest identyczna, jak konfiguracja
urz±dzeñ ethernetowych, z dok³adno¶ci± do nazwy urz±dzenia
podlegaj±cego konfiguracji.
<P>
<H2>6.29 X.25</H2>
<P>X.25 to obwodowy protokó³ komutacji pakietów zdefiniwany w
<CODE>C.C.I.T.T.</CODE> (organizacji standaryzacyjnej uznawanej przez firmy
telekomunikacyjne wiêkszo¶ci krajów ¶wiata. Ca³y czas trwaj± pracê nad
implementacj± X25 u LAPB i najnowsze wersje j±dra <CODE>2.1.*</CODE> zawieraj±
kod odzwierciedlaj±cy aktualny stan prac.
<P>Jonathon Naylor <CODE>jsn@cs.nott.ac.uk</CODE> przewodzi grupie
rozwijaj±cej to oprogramowanie i opiekuje siê list± utworzon± do
dyskusji na tematy dotycz±ce X25 i Linuksa. Aby siê na ni± zapisaæ
nale¿y na adres <CODE>majordomo@vger.rutgers.edu</CODE> napisaæ list
o tre¶ci "<CODE>subscribe linux-x25</CODE>".
<P>Wczesne wersje narzêdzi konfiguracyjnych mo¿na uzyskac z archiwum ftp
<A HREF="ftp://ftp.cs.nott.ac.uk/jsn/">ftp.cs.nott.ac.uk</A>.
<P>
<H2>6.30 WaveLan Card</H2>
<P>Urz±dzenia Wavelan nosz± nazwy `<CODE>eth0</CODE>', `<CODE>eth1</CODE>', itd.
<P><B>Opcje kompilacji j±dra</B>:
<P>
<BLOCKQUOTE><CODE>
<PRE>
Network device support --->
[*] Network device support
....
[*] Radio network interfaces
....
<*> WaveLAN support
</PRE>
</CODE></BLOCKQUOTE>
<P>Karty WaveLan to szerokopasmowe sieciowe karty bezprzewodowe. S±
bardzo podobne do kart ethernetowych i praktycznie w wiêkszo¶ci s±
konfigurowane w taki sam sposób.
<P>Wiêcej informacji na temat kart WaveLan znajdziesz na stronie
<A HREF="http://www.wavelan.com/">Wavelan.com</A>.
<P>
<H2><A NAME="s7">7. Kable i okablowanie</A></H2>
<P>Ci z was, którzy posiadaj± odpowiednie narzêdzia mog± chcieæ zrobiæ
w³asne kable do po³±czenia ze sob± dwóch Linuxów. Poni¿sze schematy
powinny wam w tym pomóc.
<P>
<H2>7.1 Szeregowy kabek bezmodemowy (Serial NULL Modem cable)</H2>
<P>Nie wszystkie kable bezmodemowe s± takie same. Du¿o kabli
bezmodemowych oszukuje twój komputer, tak aby my¶la³, ¿e wszystkie
potrzebne sygna³y s± obecne i zamienia ze sob± kana³y nadawania i
odbioru danych. Taki kabel bêdzie dzia³a³ poprawnie, ale musisz
stosowaæ programowe sterowanie przep³ywem danych (XON/XOFF), które
jest znacznie mniej wydajne od sterowania sprzêtowego. Poni¿szy
schemat przedstawia kabel umo¿liwiajacy transmisjê ze sprzêtowym
sterowaniem przep³ywem danych (RTC/CTS).
<P>
<BLOCKQUOTE><CODE>
<PRE>
Pin Name Pin Pin
Tx Data 2 ----------------------------- 3
Rx Data 3 ----------------------------- 2
RTS 4 ----------------------------- 5
CTS 5 ----------------------------- 4
Ground 7 ----------------------------- 7
DTR 20 -\--------------------------- 8
DSR 6 -/
RLSD/DCD 8 ---------------------------/- 20
\- 6
</PRE>
</CODE></BLOCKQUOTE>
<P>
<H2>7.2 Kabel portu równoleg³ego (kabel PLIP)</H2>
<P>Je¶li zamierzasz korzystaæ z protoko³u PLIP, to kabel wykonany
wg. poni¿szego schematu bêdzie dzia³a³ niezale¿nie od rodzaju
posiadanego portu równoleg³ego.
<P>
<BLOCKQUOTE><CODE>
<PRE>
Pin Name pin pin
STROBE 1*
D0->ERROR 2 ----------- 15
D1->SLCT 3 ----------- 13
D2->PAPOUT 4 ----------- 12
D3->ACK 5 ----------- 10
D4->BUSY 6 ----------- 11
D5 7*
D6 8*
D7 9*
ACK->D3 10 ----------- 5
BUSY->D4 11 ----------- 6
PAPOUT->D2 12 ----------- 4
SLCT->D1 13 ----------- 3
FEED 14*
ERROR->D0 15 ----------- 2
INIT 16*
SLCTIN 17*
GROUND 25 ----------- 25
</PRE>
</CODE></BLOCKQUOTE>
<P>Uwagi:
<UL>
<LI>Nie przy³±czaj nigdzie igie³ oznaczonych gwiazdk± `*'.</LI>
<LI>Dodatkowe uziemienie znajduje siê na ig³ach 18,19,20,21,22,23 i 24.</LI>
<LI>Je¶li u¿ywany przez ciebie kabel posiada metalowy ekran, to
powinien on byæ po³±czony do metalowej wtyczki DB-25, ale <B>tylko z
jednej strony</B>.</LI>
</UL>
<P><B>Ostrze¿enie: kabel ze ¼le wykonanymi po³±czeniami mo¿e fizycznie
zniszczyæ kartê kontrolora twojego komputera.</B>. B±d¼ bardzo
ostro¿ny i dwukrotnie sprawdzaj ka¿de po³±czenie, aby nie naraziæ siê
na niepotrzebny ból g³owy lub atak serca.
<P>
<H2>7.3 Okablowanie ethernetowe 10base2 (cienki koncentryk) </H2>
<P>10base2 jest standardem okablowania ethernetowego wykorzystuj±cego
52omowy kabel koncentryczny o ¶rednicy ok 5mm. £±cz±c ze sob±
komputery za pomoc± okablowania 10base2 nale¿y pamiêtaæ o kilku
zasadach. Po pierwsze musisz mieæ terminatory na <B>obu koñcach</B>
kabla. Terminator to opornik o oporni¶ci 52 omy, zapewniaj±cy absorbjê
sygna³u i zapobiegaj±cy jego odbiciom w momencie osi±gniêcia koñca
kabla. Bez za³o¿onych terminatorów, mo¿e siê okazaæ, ¿e sieæ nie jest
pewna lub w ogóle nie nadaje siê do pracy. Zwykle poszczególne
komputery pod³±cza siê do kabla z pomoc± 'trójników'. Dlatego tak
zbudowana sieæ wygl±da mniej wiêcej tak:
<P>
<BLOCKQUOTE><CODE>
<PRE>
|==========T=============T=============T==========T==========|
| | | |
| | | |
----- ----- ----- -----
| | | | | | | |
----- ----- ----- -----
</PRE>
</CODE></BLOCKQUOTE>
<P>gdzie `<CODE>|</CODE>' oznacza terminator na ka¿dym zakoñczeniu kabla,
`<CODE>======</CODE>' oznacza kabel koncentryczny, a
`<CODE>T</CODE>' oznaczaj± trójniki. Kabel ³±cz±cy trójnik z komputerem
powinien byæ jak najkrótszy, najlepiej, gdy trójnik jest wpiêty
bezpo¶rednio na kartê ethernetow± komputera.
<P>
<H2>7.4 Skrêtka (Twisted Pair Ethernet Cable)</H2>
<P>Je¶li chcesz po³±czyæ ze sob± tylko dwie karty ethernetowe przez
skrêtkê, to nie potrzebujesz ¿adnego koncentratora (hub'a). Schemat
wykonania potrzebnego kabla znajdziesz w
<A HREF="Ethernet-HOWTO.html">Ethernet-HOWTO</A><P>
<H2><A NAME="s8">8. Spis stosowanych terminów</A></H2>
<P>Poni¿sza lista zawiera najwa¿niejsze z terminów wykorzystywanych w tym
dokumencie.
<P>
<DL>
<DT><B>ARP</B><DD><P>Skrót pochodz±cy od nazwy <EM>Address Resolution
Protocol</EM>, okre¶la sposób przyporz±dkowywania adresów IP adresom
sprzêtowym kart ethernetowych.
<P>
<DT><B>ATM</B><DD><P>Skrót pochodz±cy od nazwy <EM>Asynchronous Transfer
Mode</EM>. Sieci ATM przesy³±j± dane w pakietach o ustalonej
d³ugo¶ci. ATM jest technologi± sieci pakietowych z komutacj± kana³ów.
<P>
<DT><B>klient</B><DD><P>Jest to zwykle oprogramowanie znajduj±ce siê po tej
samej stronie po³±czenia co u¿ytkownik. S± oczywi¶cie wyj±tki od tej
regu³y, np. w przypadku X11 to w³a¶nie serwer jest po stronie
u¿ytkownika, a klient jest to aplikacja wykonuj±ca siê na zdalnej
maszynie. Klient to oprogramowanie lub koñcówka systemu korzystaj±ca z
us³ug oferowanych przez serwer. W przypadku po³±czeñ <EM>peer to peer</EM>
(ka¿dy z ka¿dym) jakimi s± <EM>slip</EM> lub <EM>ppp</EM>, za klienta przyjmuje
siê ten koniec po³±czenia, który je zainicjowa³, a drugi koniec nosi
nazwê serwera.
<P>
<DT><B>datagram</B><DD><P>Datagram jest pakietem informacji, który prócz
danych posiada równie¿ nag³ówki zawieraj±ce adresy nadawcy i
adresata. Jest podstawow± jednostk± przesy³ania informacji w sieci
IP. Czêsto jest zastêpowany s³owem 'pakiet'.
<P>
<DT><B>DLCI</B><DD><P>DLCI oznacza skrót Data Link Connection Identifier,
jest stosowany do jednoznacznej identyfikacji wirtualnego po³±czenia
punkt-punkt przez Frame Relay. DLCI s± zwykle przydzielane przez
dostawcê us³ugi Frame Relay.
<P>
<DT><B>Frame Relay</B><DD><P>Frame Relay oznacza technologiê sieciow±
przeznaczon± przede wszystkim do przenoszenia ruchu charaktyryzuj±cego
siê nieregularnym natê¿eniem lub o sporadycznej charakterysyce. Koszty
sieci s± redukowane przez wspó³dzielenie no¶no¶ci sieci przez wielu
u¿ytkowników, przy za³o¿eniu, ¿e ka¿dy z nich generuje najwiêkszy ruch
o innej porze.
<P>
<DT><B>Adres sprzêtowy</B><DD><P>Numer który jednoznacznie identyfikuje
komputer na poziomie wartstwy fizycznej sieci (na poziomie warstwy
no¶nika). Przyk³adem takich adresów jest <EM>adres karty ethernetowej</EM>
lub <EM>adres AX.25</EM>.
<P>
<DT><B>ISDN</B><DD><P>ISDN oznacza skrót <EM>Integrated Services Dedicated
Network</EM>. ISDN umo¿liwia ujednolicony sposób dostarczania
u¿ytkownikom informacji g³osowej lub cyfrowej. Technicznie ISDN jest
sieci± danych z komutacj± kana³ów.
<P>
<DT><B>ISP</B><DD><P>Jest to skrót Internet Service Provider (dostawca
internetu). S± to organizacje lub firmy, które umo¿liwiaj± ludziom
dostêp do Internetu,
<P>
<DT><B>adres IP</B><DD><P>Jest to numer jednoznacznie identyfikuj±cy komputer
w sieci TCP/IP. Adres sk³ada siê z 4rech bajtów i zwykle jest
przedstawiany w tzw notacji dziesiêtnej, czyli takiej, w której ka¿dy
bajt jest reprezentowany przez liczbê w systemie dziesiêtnym, przy
czym poszczególne bajty s± rozdzielone znakiem '.'.
<P>
<DT><B>MSS</B><DD><P>Maximum Segment Size (<EM>MSS</EM>) oznacza maksymalny
rozmiar porcji danych, która mo¿e zostaæ przes³ana za jednym razem.
Aby zapobiec lokalnej fragmentacji pakietów MSS powinno siê równaæ
MTU-nag³ówek IP.
[od korektorki: oryginalny tekst jest skrótem my¶lowym: 'equal MTU - IP
header' wed³ug mnie powinno byæ: 'powinno siê równaæ ró¿nicy: wielko¶æ
MTU-wielko¶æ nag³ówka IP' (nag³ówek IP to zwykle 40 bajtów)].
<P>
<DT><B>MTU</B><DD><P>Maximum Transmission Unit (<EM>MTU</EM>) to parametr,
który okre¶la maksymalny rozmiar datagramu, jaki mo¿e zostaæ przes³any
przez interfejs, bez konieczno¶ci podzia³u go na mniejsze kawa³ki. MTU
powinno byæ wiêksze ni¿ najwiêkszy datagram jaki ma byæ przesy³any w
jednym kawa³ku. Pamietaj, ¿e ten parametr steruje jedynie lokaln±
fragmentacj± pakietów. Mo¿e siê zdarzyæ, ¿e które¶ z po³±czeñ le¿±cych
na trasie do celu bêdzie mia³o mniejsze MTU, a wtedy pakiet zostanie
podzielony na kawa³ki w tym w±skim garde. Standartowymi wielko¶ciami
s± 1500 dla kart ethernetowych, 576 dla interfejsu SLIP.
<P>
<DT><B>trasa</B><DD><P><EM>trasa</EM> osnacza ¶cie¿kê jak± przebywaj±
datagramy wêdruj±c od nadawcy do odbiorcy.
<P>
<DT><B>serwer</B><DD><P>Oprogramowanie lub system po przeciwnej stronie
po³±czenia w stosunku do pozycji u¿ytkownika. Serwer udostêpnia pewne
us³ugi jednemu lub wiêcej klientom. Mog± to byæ us³ugi typu <EM>ftp</EM>,
<EM>nfs</EM> lub <EM>dns</EM>. W przypaku po³±czeñ typu <EM>peer-to-peer</EM>
(ka¿dy z ka¿dym) za serwer przyjmuje siê ten koniec po³±czenia, który
odpowiada na wezwanie, koniec rozpoczynaj±cy sesjê nosi nazwê klienta.
<P>
<DT><B>window</B><DD><P><EM>Okienko</EM> to najwiêksza liczba bajtów jak± w
danej chwili odbiorca jest w stanie przyj±c.
</DL>
<P>
<H2><A NAME="s9">9. Linux u dostawców Internetu ?</A></H2>
<P>Je¶li jeste¶ zainteresowany wykorzystaniem Linuksa jako dostawca
Internetu polecam stronê
<A HREF="http://www.anime.net/linuxisp/">Linux ISP homepage</A>. Zawiera listê odno¶ników do informacji, które
mog± ciê zainteresowaæ.
<P>
<H2><A NAME="s10">10. Podziêkowania</A></H2>
<P>Chcia³bym podziekowaæ nastêpuj±cym ludziom, za ich wk³ad w powstanie
tego dokumentu (kolejno¶æ nie ma ¿adnego znaczenia): Axel Boldt, Arnt
Gulbrandsen, Gary Allpike, Cees de Groot, Alan Cox, Jonathon Naylor.
<P>
<P>
<H2><A NAME="s11">11. Copyright.</A></H2>
<P>NET-3-HOWTO, informacja na temat instalacji i konfiguracji
oprogramowania sieciowego pod Linuksem. Copyright (c) 1997 Terry
Dawson.
<P>To jest darmowe oprogramowanie, mo¿esz je rozpowszechniaæ i
modyfikowaæ na zasadach zgodnych z licencj± GNU General Public License
wydan± przez Freee Software Foundation w wersji 2 (lub jak wolisz)
pó¼niejszej.
<P>Ten program jest rozpowszechniany w nadziei, ¿e bedzie u¿yteczny, lecz
BEZ ¯ADNYCH GWARANCJI; nawet bez gwarancji zdatno¶ci HANDLOWEJ lub
U¯YTECZNO¦CI W KONKRETNYM ZASTOSOWANIU. Wiecej szczegó³ów w tek¶cie
GNU General Public License.
<P>Wraz z tym programem powiniene¶ otrzymaæ kopiê Licencji GNU General
Public License, je¶li nie napisz do:
<P>Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
<P>
<H2><A NAME="s12">12. Od t³umacza</A></H2>
<P>To t³umaczenie zawiera mnóstwo ró¿nego rodzaju b³êdów.
Postanowi³em je udostêpniæ w takim stanie, poniewa¿ nie mam czasu
na dok³adne sprawdzenie tego dokumentu (a jest tego trochê), a
szkoda mi trzymaæ to na dysku, czekaj±c na Woln±
Chwile (TM), która byæ mo¿e nigdy nie nadejdzie. Dlatego
bedê wdziêczny za ka¿d±, nawet najdrobniejsz± uwagê.
<P>Najnowsz± wersjê tego t³umaczenia znajdziesz tutaj:
<A HREF="http://www.ippt.gov.pl/pub/Linux/JTZ/html/NET-3-HOWTO.pl.html">http://www.ippt.gov.pl/pub/Linux/JTZ/html/NET-3-HOWTO.pl.html</A>.
<P>piotr.pogorzelski@ippt.gov.pl
<P>
<P>
<H2><A NAME="s13">13. Od korektorki</A></H2>
<P>Korekta, to by³o wy³apanie czê¶ci literówek i z³o¶liwo¶ci klawiatury oraz
kilku niedot³umaczonych linijek tekstu. Pewnie jest tego jeszcze trochê
dla nastêpnej siwiej±cej blondynki, która poczuje chêæ siê douczyæ ;-)
<P>30.11.2001 Basia G³owacka jastra@gdansk.sprint.pl
<P>
</BODY>
</HTML>
|