Modules, network interface configuration and routes
Linux TCP/IP Network Configuration Files:
File | Description |
---|---|
/etc/resolve.conf |
List DNS servers for internet domain name resolution. Manual page for: /etc/resolv.conf |
/etc/hosts |
Lists hosts to be resolved locally (not by DNS). Manual page for: /etc/hosts |
/etc/nsswitch.conf |
List order of host name search. Typically look at local files, then NIS server, then DNS server. Manual page for: /etc/nsswitch.conf |
Red Hat/Fedora/CentOS: /etc/sysconfig/network | Specify network configuration. eg. Static IP, DHCP, NIS, etc. |
Red Hat/Fedora/CentOS: /etc/sysconfig/network-scripts/ifcfg-device | Specify TCP network information. |
Ubuntu/Debian: /etc/network/interfaces | Specify network configuration and devices. eg. Static IP and info, DHCP, etc. |
Fedora / Red Hat Network Configuration Files:
-
/etc/sysconfig/network
Red Hat network configuration file used by the system during the boot process.
-
File: /etc/sysconfig/network-scripts/ifcfg-eth0
Configuration settings for your first ethernet port (0). Your second port is eth1. -
File:
- /etc/modprobe.conf (kernel 2.6)
- /etc/modules.conf (kernel 2.4)
- (or for older systems: /etc/conf.modules)
-
alias eth0 eepro100
Fedora / Red Hat Network GUI Configuration Tools: |
The following GUI tools edit the system configuration files. There is no difference in the configuration developed with the GUI tools and that developed by editing system configuration files directly.
TCP/IP ethernet configuration:
|
|
Assigning an IP address: |
Computers may be assiged a static IP address or assigned one dynamically. Typically a server will require a static IP while a workstation will use DHCP (dynamic IP assignment). The Linux server requires a static IP so that those who wish to use its resources can find the system. It is more easily found if the IP address does not change and is static. This is not important for the Linux client workstation and thus it is easier to use an automated Dynamic Host Configuration Protocol (DHCP) for IP address assignment.
Static IP address assignment:
Choose one of the following methods:
-
Command Line:
/sbin/ifconfig eth0 192.168.10.12 netmask 255.255.255.0 broadcast 192.168.10.255
Network address by convention would be the lowest: 192.168.10.0
Broadcast address by convention would be the highest: 192.168.10.255
The gateway can be anything, but following convention: 192.168.10.1Note: the highest and lowest addresses are based on the netmask. The previous example is based on a netmask of 255.255.255.0
-
Red Hat / Fedora GUI tools:
-
/usr/bin/neat Gnome GUI network administration tool. Handles all interfaces. Configure for Static IP or DHCP client.
(First available with Red Hat 7.2.) - /usr/bin/netcfg (Handles all interfaces) (last available in Red Hat 7.1)
-
/usr/bin/neat Gnome GUI network administration tool. Handles all interfaces. Configure for Static IP or DHCP client.
-
Red Hat / Fedora Console tools:
- /usr/sbin/system-config-network-tui (Text User Interface)
- /usr/sbin/netconfig (Only seems to work for the first network interface eth0 but not eth1,...)
- Directly edit configuration files/scripts. See format below.
The ifconfig command does NOT store this information permanently. Upon reboot this information is lost. Manually add the network configuration to /etc/sysconfig/network-scripts/ifcfg-eth0 (Red Hat/Fedora/CentOS) for the first NIC, ifcfg-eth1 for the second, etc, or /etc/network/interfaces (Ubuntu) as shown below. Any other commands you may want to add to the system boot sequence can be added to the end of the file /etc/rc.d/rc.local. The commands netcfg and netconfig make permanent changes to system network configuration files located in /etc/sysconfig/network-scripts/, so that this information is retained and used upon system boot.
The IANA has allocated IP addresses in the range of 192.168.0.0 to 192.168.255.255 for private networks.
Helpful tools:
- Network Calculators: Subnet mask calculator, node calculator, mask inverter, ...
- IP subnet calculator
Command line IP Configuration: ifconfig |
ifconfig interface [aftype] options | address ...
where:
- interface: eth0, eth1, eth2 represent the computer ethernet interfaces
- aftype: inet (TCP/IP, default), inet6 (IPv6), ax25 (AMPR Packet Radio), ddp (Appletalk Phase 2), ipx (Novell IPX) or netrom (AMPR Packet radio)
Options:
-
Option Description up Activate the interface. Implied if IP addresses are specified. down Shut down interface arp Enable ARP protocol on this interface. Allow ARP to detect the addresses of computer hosts attached to the network. -arp Disable ARP protocol on this interface promisc Enable promiscuous mode. Receive all packets on the network not just those destined for this interface. -promisc Disable promiscuous mode. mtu ## Specify the Maximum Transfer Unit (MTU) of the interface. The MTU is the maximum number of octets the interface is able to handle in a single transaction. Defaults: Ethernet: 1500 SLIP: 296 broadcast XXX.XXX.XXX.XXX Set the network broadcast address for this interface. netmask XXX.XXX.XXX.XXX Set the IP network mask for this interface.
Ubuntu / Debian IP Configuration Files: |
File: /etc/network/interfaces
-
Static IP example:
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 208.88.34.106 netmask 255.255.255.248 broadcast 208.88.34.111 network 208.88.34.104 gateway 208.88.34.110
Dynamic IP (DHCP) example:
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet dhcp auto eth2 iface eth2 inet dhcp auto ath0 iface ath0 inet dhcp auto wlan0 iface wlan0 inet dhcp
- lo: Loopback interface (network within your system without slowing down for the real ethernet based network)
- eth0: First ethernet interface card
- wlan0: First wireless network interface
Also see "man interfaces"
Ubuntu GUI Network Tools:
-
/usr/bin/gnome-nettool (apt-get install gnome-nettool)
-
/usr/bin/network-admin (apt-get install gnome-network-admin)
Red Hat / Fedora Core IP Configuration Files: |
The Red Hat configuration tools store the configuration information in the file /etc/sysconfig/network.
They will also allow one to configure routing information.
-
File: /etc/sysconfig/network
Static IP address Configuration: (Configure gateway address)
-
NETWORKING=yes HOSTNAME=my-hostname - Hostname is defined here and by command hostname FORWARD_IPV4=true - True for NAT firewall gateways and linux routers. False for everyone else - desktops and servers. GATEWAY="XXX.XXX.XXX.YYY" - Used if your network is connected to another network or the internet. Static IP configuration. Gateway not defined here for DHCP client.
-