home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd2.bin / docu / ascii / suselxen / slxen-05.txt < prev    next >
Text File  |  2000-03-11  |  36KB  |  867 lines

  1.        Part II
  2.  
  3. Network configuration
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.                          131
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.                                                                                 Chapter 5
  22.                                                   Networking Linux
  23.  
  24. Preliminary Words. . .
  25. In this age of communication, the number of computers connected to one
  26. another is already so large that a standalone machine that is not networked at
  27. least some of the time, is quite a rarity. Linux is in its element in the Internet,
  28. and offers you all the resources necessary to connect to multiple networks.
  29. This chapter presents an overview of the tools needed for installing and main-
  30. taining your network connections. The most important configuration files will
  31. be discussed, together with some of the more important tools.
  32. First, we will show you how a Linux machine can be integrated into an
  33. existing  LAN and how you can create a network of Linux machines. Then,
  34. connecting to other hosts via modem is explained. We show you how to
  35. make an Internet connection using PPP. A longer section is dedicated to ISDN
  36. configuration. Then the configuration of mail and news systems is discussed,
  37. and the chapter ends with the description of a fax system in Linux.
  38. Almost everything to do with networks can be adjusted in YaST (see Sec-
  39. tion 3.6 page 89 and Section 17.6 page 400); since configuring a network can
  40. become very complex, however, only the basic mechanisms and the relevant
  41. files for configuring the network will be discussed.
  42.  
  43. Good Neighborhoods-Connecting to a LAN
  44. Connecting a Linux machine to other UNIX machines (this can include other
  45. Linux machines as well, of course) via a LAN is not a problem. Certain
  46. pre-requirements need to be fulfilled, but these do not restrict the use of a
  47. Linux machine in a networking environment.
  48.  
  49. Requirements and Preliminary Work
  50. Linux supports almost every type of network card (Ethernet, Arcnet, To-
  51. ken Ring) and is familiar with almost every known networking protocol
  52. (TCP/IP, AppleTalk, IPX). Taking every possible configuration into consid-
  53. eration would go far beyond the scope of this chapter. We will discuss
  54. the most general case (integrating Linux into a TCP/IP network via an eth-
  55. ernet card). The latest information about other networks can be found in
  56. Documentation in your kernel source directory. The kernel's help func-
  57. tion (when you configure it) supplies you with very useful additional infor-
  58. mation.
  59.  
  60.                                                                                        133
  61.  
  62.  
  63.  
  64. 5. Networking Linux
  65.  
  66.                The following requirements have to be met:
  67.                 * Your machine has to have a supported network card; you can see if your
  68.                   card has been started correctly with the following command:
  69.                        earth:/ # cat /proc/net/dev
  70.  
  71.                   There should be a line beginning with eth0:.
  72.  
  73.                 If kernel support for network cards is by means of modules, (see Sec-
  74.                 tion 13.2 page 318-as is the general case for SuSE kernels) the name
  75.                 of the module has to be entered in /etc/modules.conf. For your first
  76.                 ethernet card, this might look like:
  77.                 alias eth0 tulip
  78.                 This is done automatically if you selected the network module in Linuxrc
  79.                 during installation. It can also be done at a later time using YaST (see
  80.                 Section 3.6.1 page 89).
  81.  
  82.                If these requirements are fulfilled, there are some things to be considered
  83.                before you start configuring your machine:
  84.  
  85.  
  86.                  Host name           The name of your machine on the network. Host-
  87.                                      name should not exceed 8 characters and should not
  88.                                      already be used on the local net.
  89.                  Domain name         The name of the domain your machine belongs
  90.                                      to. Domains help to structure big networks (such
  91.                                      as the Internet). A host is addressed via its fully
  92.                                      qualified name, which consists of a hostname, do-
  93.                                      main name and top level domain.          For exam-
  94.                                      ple, earth.cosmos.com addresses the computer
  95.                                      earth in the domain cosmos.com. The top
  96.                                      level domain may contain up to 4 letters. The pat-
  97.                                      tern for a fully qualified domain name is computer-
  98.                                      name.domainname.top level domain.
  99.  
  100.  
  101.                                     Table 5.1: continued overleaf. . . ...
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. 134
  115.  
  116.  
  117.  
  118.                                                                            5. Networking Linux
  119.  
  120.  
  121. IP address          The address of your machine in the network. Ev-
  122.                     ery machine has at least one IP address for each
  123.                     network interface (e.g. a network or ISDN card),
  124.                     which is unique. This address consists of a sequence
  125.                     of 4 bytes, normally separated by full stops (e. g.,
  126.                     193.141.17.1).
  127.                     If you choose an IP address, you should consider
  128.                     whether you plan to connect to the Internet in the
  129.                     near future. If so, it is recommended that you use
  130.                     registered IP addresses from the very start.
  131.                     If you only have a private local network, there are
  132.                     some address ranges defined by the pseudo-standard
  133.                     RFC1597 which ensures that even if one of these ad-
  134.                     dresses "escapes" to the Internet, it won't hurt any-
  135.                     body or cause any damage.
  136.                      10.0.0.0              10.255.255.255     (Class A)
  137.                       172.16.0.0           172.31.255.255     (Class B)
  138.                       192.168.0.0          192.168.255.255    (Class C)
  139.  
  140.                     Some IP addresses are not intended for computers,
  141.                     but have special functions. For example, the address
  142.                     192.168.0.0 represents the network itself, and
  143.                     192.168.0.255 is the broadcast address which
  144.                     belongs to it.
  145. Gateway address If there is a gateway computer on your network (that
  146.                     is, a machine that is connected to more than one net-
  147.                     work and which transports packets from one network
  148.                     to the other), you can enter the appropriate address
  149.                     while configuring your network.
  150. Netmask             By means of the netmask, it is clear which network
  151.                     the machine belongs to. The IP address is added to
  152.                     the netmask via a logical AND. Thus, the host part is
  153.                     cut out and leaves the network's address as a result.
  154. Address of the Name servers provide a DNS (Domain Name Ser-
  155. name server         vice) which converts host names into IP addresses.
  156.                     Thus the computer name earthis assigned the IP
  157.                     address 192.168.0.20.
  158.                     If there is a reachable name server on the net and
  159.                     you want to use it by default, its IP address should
  160.                     be entered when you configure the network.
  161.  
  162.  
  163.                Table 5.1: Values for network configuration
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.                                                                                           135
  171.  
  172.  
  173.  
  174. 5. Networking Linux
  175.  
  176.                5.1 Configuration Using YaST
  177.                If all the preliminary requirements from Section 5 page 133, are fulfilled, you
  178.                can start configuring your network via YaST.
  179.  
  180.                1. Log in as `root'.
  181.                2. Start YaST and change to `System administration', `Net-
  182.                   work configuration', `Basic network configuration'.
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.                                  Figure 5.1: Configure network using YaST
  199.  
  200.                3. Now select a free number, e. g. 0.
  201.                             
  202.                4. Press  F5  and select `Ethernet'. Leave this mask by pressing `Con-
  203.                   tinue'.    
  204.                5. Now press  F6  (`IP addresses') and enter the IP address of your
  205.                   machine (e. g. 192.168.0.20). Then you should enter the netmask.
  206.                   For a class C network (up to 254 machines in one subnet) this typically is
  207.                   255.255.255.0. If there is no gateway on your network you should
  208.                   leave this entry blank.
  209.                6. Leave this entry by hitting `Continue'.
  210.                                                  
  211.                7. Activate the network with  F4  
  212.                                                   .
  213.                                                                                 
  214.                8. Pressing  F10  lets you save your network configuration,  Esc  leaves the
  215.                   mask without changes.
  216.                9. `Change hostname' lets you assign or change the host name. You
  217.                   also need to enter the domain the host belongs to.
  218.               10. `Configure network services' enables you to configure
  219.                   whether the inetd, portmapper, or the NFS server should be started.
  220.                   And you may enter the name that is posted to news articles on USENET.
  221.                    * inetd is needed to invoke certain services on demand, such as telnet,
  222.                        finger, ftp and more. The inetd should always be started, as otherwise
  223.                        some services are not available. On systems where security is an issue,
  224.                        please follow the guidelines in Section 18.2.2 page 421.
  225.  
  226. 136
  227.  
  228.  
  229.  
  230.                               5.2. Manual Network Configuration-Where Do I Find What?
  231.  
  232.     * If you want to use this machine either as an NFS or NIS server you
  233.        will need to start the portmapper (portmapper) at boot up. If you have
  234.        decided on starting the portmapper, you are asked whether you want to
  235.        start the NFS server as well.
  236. 11. `Configure nameservers' lets you assign one or more name-
  237.     servers. Up to three IP addresses may be entered.
  238. 12. `Configure sendmail' allows you to install a basic configuration
  239.     for sendmail. A detailed reference on sendmail configuration is located in
  240.     Section 6.8 page 176.
  241.  
  242. Moreover there are a couple of settings in /etc/rc.config which you
  243. might find useful in setting up your network. YaST provides an easy frontend
  244. to edit this file (see Section 17.6 page 400).
  245. The basic network configuration should now be complete. YaST then
  246. launches SuSEconfig and adds the changes to the respective files (see Sec-
  247. tion 5.2). For the changes to take effect, it is necessary to restart the daemons.
  248. This might be achieved by entering:
  249.     earth:  # rcnetwork restart
  250. (see Chapter 17 page 395).
  251.  
  252. 5.2 Manual Network Configuration-Where Do I Find
  253.        What?
  254. You should use YaST to configure your network, but since, unfortunately, it
  255. doesn't cover all parts of network configuration, there may be some work to
  256. be done by hand.
  257. Generally, all settings should be made in /etc/rc.config. If you do
  258. change this file using YaST, you don't have to bother. If you change this file
  259. manually, don't forget to launch SuSEconfig each time you've changed it, in
  260. order for the configuration changes to take effect!
  261.  
  262. 5.2.1 Configuration Files
  263. This section gives you an overview of the most important configuration files
  264. for your network and roughly explains their functions and format.
  265.  
  266. /etc/rc.config
  267.     In this central configuration file, almost everything concerning your net-
  268.     work can be set. After changing it with YaST and launching SuSEconfig,
  269.     most of the necessary configuration files will be generated automatically.
  270.     Even boot scripts are built via settings in this file.
  271. /etc/hosts
  272.     Here, machines are assigned IP addresses (see File contents 5.2.1 on the
  273.     next page). If no nameserver is used, every machine you want to be able
  274.     to reach has to be set ¡ one line per machine. This line consists of the IP
  275.     address, the fully qualified hostname (full name), and the unofficial name
  276.     (nickname). The IP address has to be at the beginning of the line, entries
  277.     are separated by blanks, or tab-stops. Comments are started with a `#'.
  278.  
  279.                                                                                       137
  280.  
  281.  
  282.  
  283. 5. Networking Linux
  284.  
  285.                ## hosts              This file describes a number of hostname-to-address
  286.                #                     mappings for the TCP/IP subsystem. It is mostly
  287.                #                     used at boot time, when no nameservers are running.
  288.                #                     On small systems, this file can be used instead of a
  289.                #                     "named" nameserver. Just add the names, addresses
  290.                #                     and any aliases to this file...
  291.                #127.0.0.1            localhost
  292.                193.141.17.1          gauss.suse.de gauss
  293.                193.141.17.42 sofa.suse.de sofa
  294.                # End of hosts
  295.  
  296.                                         File contents 5.2.1: /etc/hosts
  297.  
  298.                /etc/networks
  299.                     Here, network names are converted to network addresses. The format of
  300.                     this file resembles the hosts file. Here, however, network names are put
  301.                     in front of the addresses (see File contents 5.2.2).
  302.  
  303.                ## networks This file describes a number of netname-to-address
  304.                #                    mappings for the TCP/IP subsystem. It is mostly
  305.                #                    used at boot time, when no nameservers are running.
  306.                #loopback            127.0.0.0
  307.                localnet             193.141.17.0
  308.                # End of networks.
  309.  
  310.                                       File contents 5.2.2: /etc/networks
  311.  
  312.                /etc/host.conf
  313.                     This file is for resolving hostnames. Hostnames (or networks) are entered
  314.                     here; resolving itself is done by the resolver library. Comments begin
  315.                     with a `#'. The following parameters can be set:
  316.  
  317.  
  318.                     order bind hosts             Order in which services for resolving a host-
  319.                                                  name are called. Possible arguments are:
  320.                                                  bind: using a nameserver
  321.                                                  hosts: searching /etc/hosts
  322.                     multi on off                 Determines if a machine in /etc/hosts is
  323.                                                  allowed to have multiple IP addresses.
  324.                     nospoof on
  325.                     alert on off                 Just influences the spoofing of the name-
  326.                                                  server, without any other consequences.
  327.  
  328.  
  329.                                         Table 5.2: continued overleaf. . . ...
  330.  
  331.  
  332.  
  333.  
  334. 138
  335.  
  336.  
  337.  
  338.                               5.2. Manual Network Configuration-Where Do I Find What?
  339.  
  340.  
  341.     trim <domainname> The given domain name is cut off from its
  342.                                    hostname before being resolved (provided
  343.                                    this machine name contains the given do-
  344.                                    main name). This might come in handy if in
  345.                                    /etc/hosts there are only local domains
  346.                                    which should be recognized even with the
  347.                                    full domain name attached.
  348.  
  349.  
  350.                 Table 5.2: Parameters for /etc/host.conf
  351.  
  352.  
  353.    An example for /etc/host.conf can be seen in file contents 5.2.3Con-
  354.    figuration Filestable.5.2, page 139.
  355.  
  356. ## /etc/host.conf
  357. ## We have named running
  358. order hosts bind
  359. # Allow multiple addrs
  360. multi on
  361. # End of host.conf
  362.  
  363.                    File contents 5.2.3: /etc/host.conf
  364.  
  365. /etc/nsswitch.conf
  366.    With the GNU C library 2.0, SuSE Linux now makes use of the
  367.    "Name Service Switch" (NSS) (see manpage for nsswitch.conf
  368.    (man 5 nsswitch.conf). More detailed information can be found
  369.    in The GNU C Library Reference Manual, in the chapter "System
  370.    Databases and Name Service Switch" 1).
  371.    The file /etc/nsswitch.conf lets you set the order in which certain
  372.    information is requested. There is an example for nsswitch.conf in
  373.    File contents 5.2.4 on the next page. Comments are marked with a `#'.
  374.    An entry in the so called "database" hosts means that after /etc/
  375.    hosts (files) is run, a DNS request (see package named) is sent.
  376.    The "databases" that are available under NSS are listed in Table 5.3 on
  377.    the following page. For future releases the parameters automount,
  378.    bootparams, netmasks and publickey should be available.
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386. 1 package libcinfo, series doc.
  387.  
  388.                                                                                  139
  389.  
  390.  
  391.  
  392. 5. Networking Linux
  393.  
  394.                ## /etc/nsswitch.conf
  395.                #passwd:         compat
  396.                group:           compat
  397.  
  398.                hosts:           files dns
  399.                networks:        files dns
  400.  
  401.                services:        db files
  402.                protocols: db files
  403.  
  404.                netgroup:        files
  405.  
  406.  
  407.                               File contents 5.2.4: /etc/nsswitch.conf
  408.  
  409.  
  410.                   aliases          Mail aliases, used by sendmail(8); see manpage
  411.                                    for aliases (man 5 aliases).
  412.                   ethers           Ethernet addresses.
  413.                   group            For user groups, used by getgrent(3) see man-
  414.                                    page for group (man 5 group).
  415.                   hosts            Hostnames     and       IP    addresses,    used    by
  416.                                    gethostbyname(3) and similar functions.
  417.                   netgroup         Valid list of hosts and users in the current net-
  418.                                    work for setting user permissions; see manpage for
  419.                                    netgroup (man 5 netgroup).
  420.                   networks         Network names and addresses,                used by
  421.                                    getnetent(3).
  422.                   passwd           User passwords used by getpwent(3); see man-
  423.                                    page for passwd (man 5 passwd).
  424.                   protocols Network protocols, used by getprotoent(3) see
  425.                                    manpage for protocols (man 5 protocols).
  426.                   rpc              "Remote Procedure Call" names and addresses, used
  427.                                    by getrpcbyname(3) and similar functions.
  428.                   services         Network services, used by getservent(3).
  429.                   shadow           "Shadow" passwords of the users, used by
  430.                                    getspnam(3);           see manpage for shadow
  431.                                    (man 5 shadow).
  432.  
  433.  
  434.                        Table 5.3: Via /etc/nsswitch.conf available "data bases"
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442. 140
  443.  
  444.  
  445.  
  446.                                      5.2. Manual Network Configuration-Where Do I Find What?
  447.  
  448.     All configuration possibilities of NSS "databases" are listed in Table 5.4.
  449.  
  450.  
  451.     files                directly access files, e. g. /etc/aliases.
  452.     db                   access via a database.
  453.     nis                  see Section 5.4 page 144.
  454.     nisplus
  455.     dns                  Only available with hosts and networks as ex-
  456.                          tension.
  457.     compat               Only available with passwd, shadow and group
  458.                          as extension.
  459.     additionally         it is possible to trigger different reactions on dif-
  460.                          ferent lookup results.             Details in manpage for
  461.                          nsswitch.conf (man 5 nsswitch.conf)
  462.  
  463.  
  464.                 Table 5.4: Possible settings of the NSS-"data base"
  465.  
  466.  
  467. /etc/resolv.conf
  468.     As with /etc/host.conf, this file plays a vital role in resolving ma-
  469.     chine names by means of the resolver library.
  470.     The domain for a given machine is specified here (keyword search),
  471.     together with the address of the nameserver. There can be several entries
  472.     for domain names in here.2 If a not fully-qualified name is resolved,
  473.     entries in search are appended one after the other, to create a fully
  474.     qualified name.
  475.     Several nameservers can be given here, each on a line of its own; these
  476.     entries have to start with nameserver. Comments are entered as usual
  477.     using `#'.
  478.  
  479. # /etc/resolv.conf
  480. ## Our domain
  481. search suse.de
  482. ## We use Gauss (193.141.17.1) as nameserver
  483. nameserver 193.141.17.1
  484. # End of resolv.conf
  485.  
  486.                      File contents 5.2.5: /etc/resolv.conf
  487.  
  488.     YaST (see Section 5.1 page 136) enters the specified nameserver here
  489.     automatically!
  490. /etc/HOSTNAME
  491.     The complete name of the machine is entered here, along with its domain
  492.     name (this is called the fully qualified domain name). This file is read
  493.     by a couple of scripts at startup. It should only contain one line with the
  494. 2 The more entries there are the longer it will take to resolve a name!
  495.  
  496.                                                                                         141
  497.  
  498.  
  499.  
  500. 5. Networking Linux
  501.  
  502.                   machine's name! The file is also automatically generated via settings in
  503.                   /etc/rc.config.
  504.  
  505.                5.2.2 Startup Scripts
  506.                Besides the configuration files described above, there are a couple of scripts
  507.                that start networking programs at startup. These scripts are run as soon as the
  508.                machine switches to one of the multiuser runlevels.
  509.  
  510.  
  511.                  /sbin/init.d/network               This script is responsible for config-
  512.                                                     uring your (network) hard- and soft-
  513.                                                     ware at boot time; it also evaluates
  514.                                                     the IP address, network address, net-
  515.                                                     mask, and gateway given in /etc/
  516.                                                     rc.config (created by YaST; see
  517.                                                     Section 5.1 page 136).
  518.                  /sbin/init.d/inetd                 Starts inetd if defined in /etc/rc.
  519.                                                     config. This is necessary if you
  520.                                                     want to login to this machine via a net-
  521.                                                     work.
  522.                  /sbin/init.d/rpc                   Starts the various RPC servers which
  523.                                                     are needed if filesystems are exported
  524.                                                     to other machines via NFS (NFS
  525.                                                     server).
  526.                  /sbin/init.d/sendmail Controls sendmail process according
  527.                                                     to settings in /etc/rc.config.
  528.  
  529.  
  530.                                    Table 5.5: The network startup scripts
  531.  
  532.  
  533.                5.3 Routing Under SuSE Linux
  534.  
  535.                Preliminaries
  536.  
  537.                Setting the routing table on SuSE Linux is not done by means of variables
  538.                in the central configuration file /etc/rc.config, but through a special
  539.                script in /sbin/init.d. and another configuration file in /etc.
  540.                After the network has been initialized by the boot scripts in /sbin/init.
  541.                d/network, i4l_hardware and possible additional boot scripts, /etc/
  542.                route.conf is searched by /sbin/init.d/route to build a routing
  543.                table. This table is then configured for the system.
  544.                Any static routes that are needed may be added to /etc/route.conf:
  545.                routes to a host, routes to a host via a gateway and routes to a network.
  546.                Another possibility is to use the program routed, but configuring this is more
  547.                complicated. For more information, please see the routed manpage.
  548.  
  549. 142
  550.  
  551.  
  552.  
  553.                                                                5.3. Routing Under SuSE Linux
  554.  
  555. How to Use /etc/route.conf
  556.  
  557. The rules that apply to /etc/route.conf are adapted from the output
  558. of route. If route is called without parameters, the routing table in use
  559. is displayed. Apart from Flags, Metric, Ref and Use, the entries in
  560. /etc/route.conf are identical.
  561. These are the rules that apply to /etc/route.conf:
  562.  
  563.  * Lines beginning with # or blank lines are ignored. An entry consists of
  564.    one line and from 2 to 4 columns.
  565.  * The first column gives the target of a route. Here, the IP address of a host,
  566.    a network, or a reachable nameserver may be given. Even the full name
  567.    is allowed (Fully Qualified Domain Name).
  568.  * The keyword default is reserved for the default gateway. Please do not
  569.    use 0.0.0.0 as the target for routing entries.
  570.  * The second column either contains a separator (0.0.0.0) or the IP ad-
  571.    dress (or the FQDN) of a host. This host may be the default gateway or a
  572.    gateway behind a host or network.
  573.  * The third column is for entering the netmask of networks or hosts behind
  574.    a gateway. For hosts behind a gateway this is 255.255.255.255.
  575.  * The last column is only important for networks (loopback, Ethernet,
  576.    ISDN, PPP, dummy device, etc.) connected to the local machine. Here,
  577.    the device has to be specified.
  578.  
  579. A simple example of /etc/route.conf is shown in figure 5.3.1. If new
  580. entries are added to /etc/route.conf, just enter:
  581.    root@earth:/ > /sbin/init.d/route stop
  582.    root@earth:/ > /sbin/init.d/route start
  583. to run the routing table with the new entries.
  584.  
  585. # Destination            Dummy/Gateway            Netmask                  Device
  586. ## Net devices
  587. #127.0.0.0               0.0.0.0                  255.255.255.0            lo
  588. 204.127.235.0            0.0.0.0                  255.255.255.0            eth0
  589. ## Gateway
  590. #default                 204.127.235.41
  591. ## Host behind Gateway
  592. #207.68.156.51           207.68.145.45            255.255.255.255
  593. ## Net behind a Gateway
  594. #192.168.0.0             207.68.156.51            255.255.0.0
  595.  
  596.        File contents 5.3.1: Simple example of /etc/route.conf
  597.  
  598.  
  599.                                                                                         143
  600.  
  601.  
  602.  
  603. 5. Networking Linux
  604.  
  605.                5.4 NIS, Yellow Pages on a LAN
  606.  
  607.                5.4.1 What is NIS?
  608.                As soon as multiple UNIX systems in a network want to access common re-
  609.                sources, you have to make sure, for example, that all user and group identities
  610.                are the same for all machines in that network. The network should be trans-
  611.                parent to the user: whatever machine a user is working on, he will always find
  612.                himself in exactly the same environment. This is made possible by means of
  613.                NIS and NFS services. NFS distributes filesystems over a network, and is
  614.                discussed in Section 5.5 on the next page.
  615.                NIS (Network Information Service)3 is a database service which enables ac-
  616.                cess to /etc/passwd, /etc/shadow and /etc/group across a net-
  617.                work. NIS can be used for other, more specialized tasks (such as for /etc/
  618.                hosts or /etc/services), but we will spare you the details here.
  619.  
  620.                5.4.2 Installing an NIS Client
  621.                SuSE Linux contains all the packages needed to install a NIS client. These
  622.                tools are bundled in package ypclient, series n. To install an NIS client,
  623.                proceed as follows:
  624.                 * Adjust the NIS domain at startup by setting YP DOMAINNAME in
  625.                     /etc/rc.config.             When switching to a (networking) runlevel,
  626.                     /sbin/init.d/network evaluates these settings and assigns the
  627.                     domain name accordingly.
  628.                     The NIS domain name should not be confused with the DNS domain
  629.                     name ; they have nothing to do with one another, even though they might
  630.                     have the same name!
  631.                 * Assign the NIS server. The NIS server is set via /etc/rc.config in
  632.                     the variable YP SERVER . SuSEconfig then writes the correct values to
  633.                     /etc/yp.conf (see file contents 5.4.1). If you have set up this variable
  634.                     using YaST, this step is performed automatically.
  635.                     This file must contain a line starting with ypserver, followed by the
  636.                     name of the NIS server.
  637.  
  638.                ## yp.conf
  639.                ## Legal entries are:
  640.                ## ypserver <servername>                         Define which host to contact
  641.                #                                                for YP service.
  642.                #ypserver                galois.suse.de
  643.                # End of yp.conf
  644.  
  645.                                       File contents 5.4.1: /etc/yp.conf
  646.  
  647.                3 NIS is commonly referred to as YP. This comes from "yellow pages", the "yellow pages" on
  648.                the net.
  649.  
  650. 144
  651.  
  652.  
  653.  
  654.                                                                           5.5. NFS-Distributed Filesystems
  655.  
  656.  * Ensure that the RPC portmapper is started. NIS utilizes RPC (Remote
  657.     Procedure Calls). Therefore the RPC portmapper needs to be running.
  658.     This server is started by /sbin/init.d/rpc and is performed auto-
  659.     matically if you have configured it in /etc/rc.config.
  660.  * Complete the entries in /etc/passwd and /etc/group.
  661.     In order for a request to be sent to the NIS server, after the local files have
  662.     been searched, a line containing only a `+' has to be added to the relevant
  663.     files. NIS allows you to set a multitude of other options, such as netgroups
  664.     or local overwriting of NIS entries. The corresponding README files
  665.     have more information on these settings.4
  666.  * Start ypbind. The final step in activating the NIS server is to launch
  667.     ypbind. This is what actually starts the NIS client.5 This program is
  668.     launched automatically if you have configured your network with YaST.
  669.  * To activate your changes, either restart your system or enter:
  670.  
  671.          earth:  # rcnetwork restart
  672.          earth:  # rcypclient restart
  673. 5.4.3 NIS Master and Slave Server
  674. For this feature you need to install package ypserver, series n. The proce-
  675. dure is explained in /usr/doc/packages/yp/HOWTO.
  676.  
  677. 5.5 NFS-Distributed Filesystems
  678. As mentioned above in Section 5.4 on the facing page, NFS (together with
  679. NIS) makes a network transparent to the user. By means of NFS it is possible
  680. to distribute filesystems over the network. It doesn't matter at which terminal
  681. a user is logged in. He will always find himself in the same environment.
  682. As with NIS, NFS is an asymmetric service. There are NFS servers and NFS
  683. clients. A machine can be both-it can supply filesystems over the network
  684. (export) and mount filesystems from other hosts (import). Generally, these are
  685. servers with a very large hard drive capacity, whose filesystems are mounted
  686. by other clients.
  687.  
  688. 5.5.1 Importing Filesystems
  689. To import filesystems from an NFS server, the only requirement is that the
  690. RPC portmapper is already running. How to start this server has already
  691. been covered in connection with NIS (see page Section 5.4.2). If this is the
  692. case, other filesystems can be mounted (as long as they are exported by the
  693. server) just as easily as local filesystems, using the program mount with the
  694. following syntax:
  695. mount -t nfs <host>:<remote path> <local path>
  696. If user directories from the machine Gauss.suse.de, for example, are to
  697. be imported, the following command can be used:
  698.     earth:/ # mount -t nfs helios:/home /home
  699. 4 /usr/doc/packages/ypclient/yp-clients-2.2.
  700. 5 Strictly speaking, this is no longer necessary, but it guarantees a reconnection if, for example,
  701. the NIS server has been booted.
  702.  
  703.                                                                                                        145
  704.  
  705.  
  706.  
  707. 5. Networking Linux
  708.  
  709.                5.5.2 Exporting Filesystems
  710.                A machine that exports filesystems is called a NFS server. On a NFS server,
  711.                there are a couple of tools that need to be started:
  712.                 * RPC portmapper (rpc.portmap)
  713.                 * RPC mount-daemon (rpc.mountd)
  714.                 * RPC NFS-daemon (rpc.nfsd)
  715.                These are started by /sbin/init.d/rpc at startup. (see above)
  716.                The configuration file /etc/exports decides which directories should be
  717.                exported to which machines. For each directory to be exported, one line
  718.                is needed to specify which machines may access that directory, and with
  719.                what permissions; all sub-directories of this directory will automatically be
  720.                exported as well. All authorized machines are usually denoted with their full
  721.                name (including domain name), but it is possible to use wildcards like `*'
  722.                or `?' as well. If no machine is specified here, any machine is allowed to
  723.                import this filesystem with the given permissions.
  724.                Permissions of the filesystem to be exported are denoted in brackets after the
  725.                machine name. The most important options are:
  726.  
  727.  
  728.  
  729.                  ro                    Filesystem is exported with read-only permission (de-
  730.                                        fault).
  731.                  rw                    Filesystem is exported with read-write permission.
  732.                  root squash           This makes sure that the user `root' of the given
  733.                                        machine doesn't have `root' specific permissions on
  734.                                        this filesystem. This is achieved by assigning user-ID
  735.                                        65534 to users with user-ID 0 (root). This user-ID
  736.                                        should be set to `nobody'
  737.                  no root squash Doesn't assign user-ID 0 to user-ID 65534 (default).
  738.                  link relative         Converts absolute links (those beginning with `/') to
  739.                                        a sequence of `../'. This is only useful if the whole
  740.                                        filesystem of a machine is mounted (default).
  741.                  link absolute         Symbolic links remain untouched.
  742.                  map identity          User-ID's are exactly the same on both client and
  743.                                        server (default).
  744.                  map-daemon            Client and server don't have matching user-IDs. This
  745.                                        tells nfsd to create a conversion table for user-IDs.
  746.                                        ugidd is required for this to work.
  747.  
  748.  
  749.                                   Table 5.6: Permissions for exported filesystems
  750.  
  751.  
  752.                Your exports file might look like File contents 5.5.1 on the facing page.
  753.                File /etc/exports is read by mountd. So if you have changed anything
  754.                in this file, make sure you restart mountd and nfsd for your changes to take
  755.  
  756. 146
  757.  
  758.  
  759.  
  760.                                                         5.5. NFS-Distributed Filesystems
  761.  
  762. ## /etc/exports
  763. #/home                  helios(rw)     venus(rw)
  764. /usr/X11                helios(ro)     venus(ro)
  765. /usr/lib/texmf          helios(ro)     venus(rw)
  766. /                       earth(ro,root_squash)
  767. /home/ftp               (ro)
  768. # End of exports
  769.  
  770.                    File contents 5.5.1: /etc/exports
  771.  
  772. effect. This can easily be done by:
  773.      earth:  # rcnfsserver restart
  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.                                                                                     147
  812.  
  813.  
  814.  
  815. 5. Networking Linux
  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. 148
  864.  
  865.  
  866.  
  867.