Red Hat Enterprise Linux 7

Networking Guide

Configuration and Administration of Networking for Red Hat Enterprise Linux 7

Mirek Jahoda

Red Hat Customer Content Services

Jana Heves

Red Hat Customer Content Services

Stephen Wadeley

Red Hat Customer Content Services

Christian Huffman

Red Hat Customer Content Services

Abstract

The Red Hat Enterprise Linux 7 Networking Guide documents relevant information regarding the configuration and administration of network interfaces, networks and network services in Red Hat Enterprise Linux 7. It is oriented towards system administrators with a basic understanding of Linux and networking.
This book is based on the Red Hat Enterprise Linux 6 Deployment Guide. The chapters related to networking were taken from the Deployment Guide to form the foundation for this book.

Note

To expand your expertise, you might also be interested in the Red Hat System Administration I (RH124) training course.
I. IP Networking
1. Introduction to Red Hat Enterprise Linux Networking
1.1. How this Book is Structured
1.2. IP Networks versus non-IP Networks
1.3. Introduction to NetworkManager
1.4. Installing NetworkManager
1.4.1. The NetworkManager Daemon
1.4.2. Interacting with NetworkManager
1.5. Network Configuration Using a Text User Interface (nmtui)
1.6. Network Configuration Using NetworkManager's CLI (nmcli)
1.7. Network Configuration Using the Command-Line Interface (CLI)
1.8. NetworkManager and the Network Scripts
1.9. Network Configuration Using sysconfig Files
1.10. Additional Resources
1.10.1. Installed Documentation
2. Configure IP Networking
2.1. Static and Dynamic Interface Settings
2.1.1. When to Use Static Network Interface Settings
2.1.2. When to Use Dynamic Interface Settings
2.1.3. Selecting Network Configuration Methods
2.2. Using the Text User Interface, nmtui
2.3. Using the NetworkManager Command Line Tool, nmcli
2.3.1. Understanding the nmcli Options
2.3.2. Connecting to a Network Using nmcli
2.3.3. Configuring Static Routes Using nmcli
2.4. Using the Command Line Interface (CLI)
2.4.1. Configuring a Network Interface Using ifcfg Files
2.4.2. Configuring a Network Interface Using ip Commands
2.4.3. Static Routes and the Default Gateway
2.4.4. Configuring Static Routes in ifcfg files
2.4.5. Configuring a VPN
2.5. Using NetworkManager with the GNOME Graphical User Interface
2.5.1. Connecting to a Network Using a GUI
2.5.2. Configuring New and Editing Existing Connections
2.5.3. Connecting to a Network Automatically
2.5.4. System-wide and Private Connection Profiles
2.5.5. Configuring a Wired (Ethernet) Connection
2.5.6. Configuring a Wi-Fi Connection
2.5.7. Establishing a VPN Connection
2.5.8. Establishing a Mobile Broadband Connection
2.5.9. Establishing a DSL Connection
2.5.10. Configuring Connection Settings
2.6. Additional Resources
2.6.1. Installed Documentation
2.6.2. Online Documentation
3. Configure Host Names
3.1. Understanding Host Names
3.1.1. Recommended Naming Practices
3.2. Configuring Host Names Using Text User Interface, nmtui
3.3. Configuring Host Names Using hostnamectl
3.3.1. View All the Host Names
3.3.2. Set All the Host Names
3.3.3. Set a Particular Host Name
3.3.4. Clear a Particular Host Name
3.3.5. Changing Host Names Remotely
3.4. Configuring Host Names Using nmcli
3.5. Additional Resources
3.5.1. Installed Documentation
4. Configure Network Bonding
4.1. Understanding the Default Behavior of Master and Slave Interfaces
4.2. Configure Bonding Using the Text User Interface, nmtui
4.3. Using the NetworkManager Command Line Tool, nmcli
4.4. Using the Command Line Interface (CLI)
4.4.1. Check if Bonding Kernel Module is Installed
4.4.2. Create a Channel Bonding Interface
4.4.3. Creating SLAVE Interfaces
4.4.4. Activating a Channel Bond
4.4.5. Creating Multiple Bonds
4.5. Using Channel Bonding
4.5.1. Bonding Module Directives
4.6. Creating a Bond Connection Using a GUI
4.6.1. Establishing a Bond Connection
4.7. Additional Resources
4.7.1. Installed Documentation
4.7.2. Online Documentation
5. Configure Network Teaming
5.1. Understanding Network Teaming
5.2. Understanding the Default Behavior of Master and Slave Interfaces
5.3. Comparison of Network Teaming to Bonding
5.4. Understanding the Network Teaming Daemon and the "Runners"
5.5. Install the Network Teaming Daemon
5.6. Converting a Bond to a Team
5.7. Selecting Interfaces to Use as Ports for a Network Team
5.8. Selecting Network Team Configuration Methods
5.9. Configure a Network Team Using the Text User Interface, nmtui
5.10. Configure a Network Team Using the Command Line
5.10.1. Configure Network Teaming Using nmcli
5.10.2. Creating a Network Team Using teamd
5.10.3. Creating a Network Team Using ifcfg Files
5.10.4. Add a Port to a Network Team Using iputils
5.10.5. Listing the ports of a Team Using teamnl
5.10.6. Configuring Options of a Team Using teamnl
5.10.7. Add an Address to a Network Team Using iputils
5.10.8. Bring up an Interface to a Network Team Using iputils
5.10.9. Viewing the Active Port Options of a Team Using teamnl
5.10.10. Setting the Active Port Options of a Team Using teamnl
5.11. Controlling teamd with teamdctl
5.11.1. Add a Port to a Network Team
5.11.2. Remove a Port From a Network Team
5.11.3. Apply a Configuration to a Port in a Network Team
5.11.4. View the Configuration of a Port in a Network Team
5.12. Configure teamd Runners
5.12.1. Configure the broadcast Runner
5.12.2. Configure the random Runner
5.12.3. Configure the roundrobin Runner
5.12.4. Configure the activebackup Runner
5.12.5. Configure the loadbalance Runner
5.12.6. Configure the LACP (802.3ad) Runner
5.12.7. Configure Monitoring of the Link State
5.12.8. Configure Port Selection Override
5.12.9. Configure BPF-based Tx Port Selectors
5.13. Creating a Network Team Using a GUI
5.13.1. Establishing a Team Connection
5.14. Additional Resources
5.14.1. Installed Documentation
5.14.2. Online Documentation
6. Configure Network Bridging
6.1. Configure Bridging Using the Text User Interface, nmtui
6.2. Using the NetworkManager Command Line Tool, nmcli
6.3. Using the Command Line Interface (CLI)
6.3.1. Check if Bridging Kernel Module is Installed
6.3.2. Create a Network Bridge
6.3.3. Network Bridge with Bond
6.4. Configure Network Bridging Using a GUI
6.4.1. Establishing a Bridge Connection
6.5. Additional Resources
6.5.1. Installed Documentation
7. Configure 802.1Q VLAN tagging
7.1. Selecting VLAN Interface Configuration Methods
7.2. Configure 802.1Q VLAN tagging Using the Text User Interface, nmtui
7.3. Configure 802.1Q VLAN Tagging Using the Command Line Tool, nmcli
7.4. Configure 802.1Q VLAN Tagging Using the Command Line
7.4.1. Setting Up 802.1Q VLAN Tagging Using ifcfg Files
7.4.2. Configure 802.1Q VLAN Tagging Using ip Commands
7.5. Configure 802.1Q VLAN Tagging Using a GUI
7.5.1. Establishing a VLAN Connection
7.6. Additional Resources
7.6.1. Installed Documentation
8. Consistent Network Device Naming
8.1. Naming Schemes Hierarchy
8.2. Understanding the Device Renaming Procedure
8.3. Understanding the Predictable Network Interface Device Names
8.4. Naming Scheme for Network Devices Available for Linux on System z
8.5. Naming Scheme for VLAN Interfaces
8.6. Consistent Network Device Naming Using biosdevname
8.6.1. System Requirements
8.6.2. Enabling and Disabling the Feature
8.7. Notes for Administrators
8.8. Controlling the Selection of Network Device Names
8.9. Disabling Consistent Network Device Naming
8.10. Troubleshooting Network Device Naming
8.11. Additional Resources
8.11.1. Installed Documentation
8.11.2. Online Documentation
II. InfiniBand and RDMA Networking
9. Configure InfiniBand and RDMA Networks
9.1. Understanding InfiniBand and RDMA technologies
9.2. InfiniBand and RDMA related software packages
9.3. Configuring the Base RDMA Subsystem
9.3.1. The RDMA package Installation
9.3.2. Configuration of the rdma.conf file
9.3.3. Usage of 70-persistent-ipoib.rules
9.3.4. Relaxing memlock restrictions for users
9.3.5. Configuring Mellanox cards for Ethernet operation
9.4. Configuring the Subnet Manager
9.4.1. Determining Necessity
9.4.2. Configuring the opensm master configuration file
9.4.3. Configuring the opensm startup options
9.4.4. Creating a P_Key definition
9.4.5. Enabling opensm
9.5. Testing Early InfiniBand RDMA operation
9.6. Configuring IPoIB
9.6.1. Understanding the role of IPoIB
9.6.2. Understanding IPoIB communication modes
9.6.3. Understanding IPoIB hardware addresses
9.6.4. Understanding InfiniBand P_Key subnets
9.7. Configure InfiniBand Using the Text User Interface, nmtui
9.8. Configure IPoIB using the command-line tool, nmcli
9.9. Configure IPoIB Using the command line
9.10. Testing an RDMA network after IPoIB is configured
9.11. Configure IPoIB Using a GUI
9.11.1. Configuring the InfiniBand Tab
9.12. Additional Resources
9.12.1. Installed Documentation
9.12.2. Online Documentation
III. Servers
10. DHCP Servers
10.1. Why Use DHCP?
10.2. Configuring a DHCP Server
10.2.1. Configuration File
10.2.2. Lease Database
10.2.3. Starting and Stopping the Server
10.3. DHCP Relay Agent
10.3.1. Configure dhcrelay as a DHCPv4 and BOOTP relay agent
10.3.2. Configure dhcrelay as a DHCPv6 relay agent
10.4. Configuring a Multihomed DHCP Server
10.4.1. Host Configuration
10.5. DHCP for IPv6 (DHCPv6)
10.6. Additional Resources
10.6.1. Installed Documentation
11. DNS Servers
11.1. Introduction to DNS
11.1.1. Nameserver Zones
11.1.2. Nameserver Types
11.1.3. BIND as a Nameserver
11.2. BIND
11.2.1. Empty Zones
11.2.2. Configuring the named Service
11.2.3. Editing Zone Files
11.2.4. Using the rndc Utility
11.2.5. Using the dig Utility
11.2.6. Advanced Features of BIND
11.2.7. Common Mistakes to Avoid
11.2.8. Additional Resources
12. Squid
12.1. Introduction to Squid
12.2. Installing and Running Squid
12.3. Squid configuration
12.3.1. Basic Configuration and /etc/squid/squid.conf
12.3.2. Configuring Squid as an HTTP proxy server
12.4. Squid Authentication
12.4.1. Authentication with LDAP
12.4.2. Authentication with Kerberos
12.5. Using Squid for Restricting Access
12.5.1. Restricting Access by Blocking a Port
12.5.2. Restricting Access by Blocking Specific Sites or Addresses
12.6. Additional Resources: Installed Documentation
A. Revision History
A.1. Acknowledgments
Index