| [a9e389d] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?> | 
|---|
|  | 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" | 
|---|
|  | 3 | "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ | 
|---|
|  | 4 | <!ENTITY % general-entities SYSTEM "../../general.ent"> | 
|---|
|  | 5 | %general-entities; | 
|---|
|  | 6 | ]> | 
|---|
|  | 7 |  | 
|---|
|  | 8 | <sect1 id="ch-scripts-network"> | 
|---|
|  | 9 | <?dbhtml filename="network.html"?> | 
|---|
|  | 10 |  | 
|---|
|  | 11 | <title>Configuring the network Script</title> | 
|---|
|  | 12 |  | 
|---|
|  | 13 | <indexterm zone="ch-scripts-network"> | 
|---|
|  | 14 | <primary sortas="d-network">network</primary> | 
|---|
|  | 15 | <secondary>configuring</secondary></indexterm> | 
|---|
|  | 16 |  | 
|---|
|  | 17 | <para>This section only applies if a network card is to be | 
|---|
|  | 18 | configured.</para> | 
|---|
|  | 19 |  | 
|---|
|  | 20 | <para>If a network card will not be used, there is likely no need to | 
|---|
|  | 21 | create any configuration files relating to network cards. If that is | 
|---|
|  | 22 | the case, remove the <filename class="symlink">network</filename> | 
|---|
|  | 23 | symlinks from all run-level directories (<filename | 
|---|
|  | 24 | class="directory">/etc/rc.d/rc*.d</filename>).</para> | 
|---|
|  | 25 |  | 
|---|
|  | 26 | <sect2> | 
|---|
|  | 27 | <title>Creating Network Interface Configuration Files</title> | 
|---|
|  | 28 |  | 
|---|
|  | 29 | <para>Which interfaces are brought up and down by the network script | 
|---|
|  | 30 | depends on the files and directories in the <filename | 
|---|
|  | 31 | class="directory">/etc/sysconfig/network-devices</filename> hierarchy. | 
|---|
|  | 32 | This directory should contain a sub-directory for each interface to be | 
|---|
|  | 33 | configured, such as <filename>ifconfig.xyz</filename>, where | 
|---|
|  | 34 | <quote>xyz</quote> is a network interface name. Inside this directory | 
|---|
|  | 35 | would be files defining the attributes to this interface, such as its IP | 
|---|
|  | 36 | address(es), subnet masks, and so forth.</para> | 
|---|
|  | 37 |  | 
|---|
|  | 38 | <para>The following command creates a sample <filename>ipv4</filename> | 
|---|
|  | 39 | file for the <emphasis>eth0</emphasis> device:</para> | 
|---|
|  | 40 |  | 
|---|
|  | 41 | <screen><userinput>cd /etc/sysconfig/network-devices && | 
|---|
|  | 42 | mkdir -v ifconfig.eth0 && | 
|---|
|  | 43 | cat > ifconfig.eth0/ipv4 << "EOF" | 
|---|
|  | 44 | <literal>ONBOOT=yes | 
|---|
|  | 45 | SERVICE=ipv4-static | 
|---|
|  | 46 | IP=192.168.1.1 | 
|---|
|  | 47 | GATEWAY=192.168.1.2 | 
|---|
|  | 48 | PREFIX=24 | 
|---|
|  | 49 | BROADCAST=192.168.1.255</literal> | 
|---|
|  | 50 | EOF</userinput></screen> | 
|---|
|  | 51 |  | 
|---|
|  | 52 | <para>The values of these variables must be changed in every file to match | 
|---|
|  | 53 | the proper setup. If the <envar>ONBOOT</envar> variable is set to | 
|---|
|  | 54 | <quote>yes</quote> the network script will bring up the Network Interface | 
|---|
|  | 55 | Card (NIC) during booting of the system. If set to anything but | 
|---|
|  | 56 | <quote>yes</quote> the NIC will be ignored by the network script and not | 
|---|
|  | 57 | be brought up.</para> | 
|---|
|  | 58 |  | 
|---|
|  | 59 | <para>The <envar>SERVICE</envar> variable defines the method used for | 
|---|
|  | 60 | obtaining the IP address. The CLFS-Bootscripts package has a modular IP | 
|---|
|  | 61 | assignment format, and creating additional files in the <filename | 
|---|
|  | 62 | class="directory">/etc/sysconfig/network-devices/services</filename> | 
|---|
|  | 63 | directory allows other IP assignment methods. This is commonly used for | 
|---|
|  | 64 | Dynamic Host Configuration Protocol (DHCP), which is addressed in the | 
|---|
|  | 65 | BLFS book.</para> | 
|---|
|  | 66 |  | 
|---|
|  | 67 | <para>The <envar>GATEWAY</envar> variable should contain the default | 
|---|
|  | 68 | gateway IP address, if one is present. If not, then comment out the | 
|---|
|  | 69 | variable entirely.</para> | 
|---|
|  | 70 |  | 
|---|
|  | 71 | <para>The <envar>PREFIX</envar> variable needs to contain the number of | 
|---|
|  | 72 | bits used in the subnet. Each octet in an IP address is 8 bits. If the | 
|---|
|  | 73 | subnet's netmask is 255.255.255.0, then it is using the first three octets | 
|---|
|  | 74 | (24 bits) to specify the network number. If the netmask is 255.255.255.240, | 
|---|
|  | 75 | it would be using the first 28 bits.  Prefixes longer than 24 bits are | 
|---|
|  | 76 | commonly used by DSL and cable-based Internet Service Providers (ISPs). | 
|---|
|  | 77 | In this example (PREFIX=24), the netmask is 255.255.255.0. Adjust the | 
|---|
|  | 78 | <envar>PREFIX</envar> variable according to your specific subnet.</para> | 
|---|
|  | 79 |  | 
|---|
|  | 80 | </sect2> | 
|---|
|  | 81 |  | 
|---|
|  | 82 | <sect2 id="resolv.conf"> | 
|---|
|  | 83 | <title>Creating the /etc/resolv.conf File</title> | 
|---|
|  | 84 |  | 
|---|
|  | 85 | <indexterm zone="resolv.conf"> | 
|---|
|  | 86 | <primary sortas="e-/etc/resolv.conf">/etc/resolv.conf</primary> | 
|---|
|  | 87 | </indexterm> | 
|---|
|  | 88 |  | 
|---|
|  | 89 | <para>If the system is going to be connected to the Internet, it will | 
|---|
|  | 90 | need some means of Domain Name Service (DNS) name resolution to | 
|---|
|  | 91 | resolve Internet domain names to IP addresses, and vice versa. This is | 
|---|
|  | 92 | best achieved by placing the IP address of the DNS server, available | 
|---|
|  | 93 | from the ISP or network administrator, into | 
|---|
|  | 94 | <filename>/etc/resolv.conf</filename>. Create the file by running the | 
|---|
|  | 95 | following:</para> | 
|---|
|  | 96 |  | 
|---|
|  | 97 | <screen><userinput>cat > /etc/resolv.conf << "EOF" | 
|---|
|  | 98 | <literal># Begin /etc/resolv.conf | 
|---|
|  | 99 |  | 
|---|
|  | 100 | domain <replaceable>[Your Domain Name]</replaceable> | 
|---|
|  | 101 | nameserver <replaceable>[IP address of your primary nameserver]</replaceable> | 
|---|
|  | 102 | nameserver <replaceable>[IP address of your secondary nameserver]</replaceable> | 
|---|
|  | 103 |  | 
|---|
|  | 104 | # End /etc/resolv.conf</literal> | 
|---|
|  | 105 | EOF</userinput></screen> | 
|---|
|  | 106 |  | 
|---|
|  | 107 | <para>Replace <replaceable>[IP address of the nameserver]</replaceable> | 
|---|
|  | 108 | with the IP address of the DNS most appropriate for the setup. There will | 
|---|
|  | 109 | often be more than one entry (requirements demand secondary servers for | 
|---|
|  | 110 | fallback capability). If you only need or want one DNS server, remove the | 
|---|
|  | 111 | second <emphasis>nameserver</emphasis> line from the file. The IP address | 
|---|
|  | 112 | may also be a router on the local network.</para> | 
|---|
|  | 113 |  | 
|---|
|  | 114 | </sect2> | 
|---|
|  | 115 |  | 
|---|
|  | 116 | </sect1> | 
|---|