LWM-Linux/04 - Networking in Linux/Basic Network Configuration.md

177 lines
3.6 KiB
Markdown
Raw Normal View History

# Linux Basic Network Configuration
## 1. Network Interfaces
Linux uses network interfaces to communicate with networks. Common interfaces include:
- eth0, eth1, etc.: Ethernet interfaces
- wlan0, wlan1, etc.: Wireless interfaces
- lo: Loopback interface
To list network interfaces:
```
ip link show
```
or
```
ifconfig -a
```
## 2. IP Address Configuration
### Temporary IP configuration:
- To set an IP address temporarily:
```
sudo ip addr add 192.168.1.100/24 dev eth0
```
- To remove an IP address:
```
sudo ip addr del 192.168.1.100/24 dev eth0
```
### Permanent IP configuration:
Edit the network configuration file (location varies by distribution):
- Ubuntu/Debian: /etc/network/interfaces
- CentOS/RHEL: /etc/sysconfig/network-scripts/ifcfg-eth0
Example configuration:
```
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
```
## 3. DHCP Configuration
For dynamic IP assignment, use DHCP:
```
auto eth0
iface eth0 inet dhcp
```
## 4. Network Manager
Many modern Linux distributions use Network Manager for easier network configuration. You can use the command-line tool 'nmcli' or GUI tools to manage connections.
## 5. Hostname Configuration
Set the hostname:
```
sudo hostnamectl set-hostname new-hostname
```
Update /etc/hosts file to include the new hostname.
## 6. DNS Configuration
Edit /etc/resolv.conf to set DNS servers:
```
nameserver 8.8.8.8
nameserver 8.8.4.4
```
Note: This file may be overwritten by DHCP. For permanent changes, configure your network manager or DHCP client.
## 7. Routing
View routing table:
```
ip route show
```
Add a static route:
```
sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0
```
## 8. Firewall Configuration
Most Linux distributions use iptables or nftables. Ubuntu uses ufw (Uncomplicated Firewall) as a frontend.
Enable UFW:
```
sudo ufw enable
```
Allow incoming SSH:
```
sudo ufw allow ssh
```
## 9. Network Diagnostics
- ping: Test connectivity
- traceroute: Trace packet route
- netstat or ss: Display network connections
- tcpdump: Capture and analyze network traffic
## 10. Network Service Management
Start/stop network service:
```
sudo systemctl start networking
sudo systemctl stop networking
```
Enable/disable network service at boot:
```
sudo systemctl enable networking
sudo systemctl disable networking
```
## 11. Wireless Network Configuration
Use 'iwconfig' to configure wireless interfaces:
```
sudo iwconfig wlan0 essid "NetworkName" key s:password
```
For WPA networks, use 'wpa_supplicant'.
## 12. Network Bonding
Combine multiple network interfaces for redundancy or increased throughput. Edit /etc/network/interfaces:
```
auto bond0
iface bond0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
bond-slaves eth0 eth1
bond-mode active-backup
bond-miimon 100
bond-primary eth0
```
- [(1) The Ultimate Guide to Linux Mint Network Configuration.](https://www.fosslinux.com/105545/the-ultimate-guide-to-linux-mint-network-configuration.htm.)
- [(2) How to set up an Internet Connection in Linux Mint?.](https://unix.stackexchange.com/questions/132747/how-to-set-up-an-internet-connection-in-linux-mint.)
- [(3) How to Share Files and Folders on a Linux Mint Network.](https://www.fosslinux.com/103443/how-to-easily-share-files-and-folders-on-a-linux-mint-network.htm.)
- [(4) Linux Mint - Community.](https://community.linuxmint.com/tutorial/view/1966.)
- [(5) Configure Network in Debian / Ubuntu / LinuxMint - ITzGeek.](https://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/configure-network-in-ubuntu-14-04-linux-mint.html.)