223 lines
4.6 KiB
Markdown
223 lines
4.6 KiB
Markdown
# Linux Network Troubleshooting Guide
|
|
|
|
## 1. Basic Network Configuration Check:
|
|
|
|
- Check IP address and network interface status:
|
|
```
|
|
ip addr show
|
|
```
|
|
This command displays all network interfaces, their IP addresses, and status.
|
|
|
|
- Verify default gateway:
|
|
```
|
|
ip route show
|
|
```
|
|
Ensures your system knows how to route traffic outside the local network.
|
|
|
|
- Check DNS configuration:
|
|
```
|
|
cat /etc/resolv.conf
|
|
```
|
|
Displays the DNS servers your system is using.
|
|
|
|
## 2. Connectivity Tests:
|
|
|
|
- Ping test:
|
|
```
|
|
ping -c 4 8.8.8.8
|
|
```
|
|
Tests basic connectivity to Google's DNS server (or any other IP).
|
|
|
|
- Traceroute:
|
|
```
|
|
traceroute google.com
|
|
```
|
|
Shows the path packets take to reach a destination.
|
|
|
|
- DNS resolution test:
|
|
```
|
|
nslookup google.com
|
|
```
|
|
or
|
|
```
|
|
dig google.com
|
|
```
|
|
These test DNS resolution capabilities.
|
|
|
|
## 3. Advanced Diagnostic Tools:
|
|
|
|
- netstat or ss:
|
|
```
|
|
netstat -tuln
|
|
```
|
|
or
|
|
```
|
|
ss -tuln
|
|
```
|
|
Display active network connections and listening ports.
|
|
|
|
- tcpdump:
|
|
```
|
|
sudo tcpdump -i eth0
|
|
```
|
|
Captures and displays packet data on a specified interface.
|
|
|
|
- nmap:
|
|
```
|
|
nmap -p- localhost
|
|
```
|
|
Scans for open ports on the local machine (or any specified target).
|
|
|
|
## 4. Firewall Configuration:
|
|
|
|
- Check iptables rules:
|
|
```
|
|
sudo iptables -L -v -n
|
|
```
|
|
Displays current firewall rules.
|
|
|
|
- Temporarily disable firewall (for testing):
|
|
```
|
|
sudo systemctl stop firewalld # for systems using firewalld
|
|
```
|
|
or
|
|
```
|
|
sudo ufw disable # for systems using ufw
|
|
```
|
|
|
|
## 5. Network Service Diagnostics:
|
|
|
|
- Check service status:
|
|
```
|
|
systemctl status networking
|
|
```
|
|
or
|
|
```
|
|
systemctl status NetworkManager
|
|
```
|
|
|
|
- Restart network service:
|
|
```
|
|
sudo systemctl restart networking
|
|
```
|
|
or
|
|
```
|
|
sudo systemctl restart NetworkManager
|
|
```
|
|
|
|
## 6. Network Interface Configuration:
|
|
|
|
- Edit network interface configuration:
|
|
```
|
|
sudo nano /etc/network/interfaces # for Debian-based systems
|
|
```
|
|
or
|
|
```
|
|
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 # for Red Hat-based systems
|
|
```
|
|
|
|
- Restart specific network interface:
|
|
```
|
|
sudo ifdown eth0 && sudo ifup eth0
|
|
```
|
|
or
|
|
```
|
|
sudo ip link set eth0 down && sudo ip link set eth0 up
|
|
```
|
|
|
|
## 7. Wireless Network Troubleshooting:
|
|
|
|
- List available wireless networks:
|
|
```
|
|
sudo iwlist wlan0 scan
|
|
```
|
|
|
|
- Check wireless interface details:
|
|
```
|
|
iwconfig
|
|
```
|
|
|
|
- Monitor wireless connection in real-time:
|
|
```
|
|
watch -n 1 iwconfig
|
|
```
|
|
|
|
## 8. Advanced Network Analysis:
|
|
|
|
- Wireshark: GUI-based packet analyzer
|
|
Install with:
|
|
```
|
|
sudo apt-get install wireshark # on Debian-based systems
|
|
```
|
|
or
|
|
```
|
|
sudo yum install wireshark # on Red Hat-based systems
|
|
```
|
|
|
|
- iftop: Displays bandwidth usage on an interface
|
|
```
|
|
sudo iftop -i eth0
|
|
```
|
|
|
|
- nethogs: Groups bandwidth by process
|
|
```
|
|
sudo nethogs eth0
|
|
```
|
|
|
|
## 9. Performance Testing:
|
|
|
|
- iperf: Network performance measurement tool
|
|
```
|
|
iperf -s # on server
|
|
iperf -c server_ip # on client
|
|
```
|
|
|
|
- speedtest-cli: Command-line interface for testing internet speed
|
|
```
|
|
speedtest-cli
|
|
```
|
|
|
|
## 10. Log Analysis:
|
|
|
|
- System logs:
|
|
```
|
|
sudo tail -f /var/log/syslog # on Debian-based systems
|
|
```
|
|
or
|
|
```
|
|
sudo tail -f /var/log/messages # on Red Hat-based systems
|
|
```
|
|
or
|
|
```
|
|
sudo journalctl -b0
|
|
```
|
|
or
|
|
```
|
|
sudo dmesg -k
|
|
```
|
|
|
|
- Network-specific logs:
|
|
```
|
|
sudo tail -f /var/log/daemon.log
|
|
```
|
|
|
|
## 11. Network Configuration Backup and Restore:
|
|
|
|
- Backup network configuration:
|
|
```
|
|
sudo tar -czvf network_config_backup.tar.gz /etc/network
|
|
```
|
|
|
|
- Restore network configuration:
|
|
```
|
|
sudo tar -xzvf network_config_backup.tar.gz -C /
|
|
```
|
|
|
|
## 12. Troubleshooting Specific Issues:
|
|
|
|
- High latency: Use ping and traceroute to identify where delays occur.
|
|
- Packet loss: Use mtr (My TraceRoute) for a combination of ping and traceroute.
|
|
- DNS issues: Check /etc/hosts file and DNS server configurations.
|
|
- IP conflicts: Use arping to detect duplicate IP addresses on the network.
|
|
|