Linux 網路管理
在 Linux 系統中,網路管理是伺服器運行與維護的重要部分。本篇將介紹 Linux 的網路設定、網路監控與診斷工具,並提供一些進階的操作技巧。
目錄
查看網路介面資訊
ip
指令(現代用法)
ip addr show
列出所有網路介面的 IP 地址。
ip link show
列出所有網路介面與其狀態。
ifconfig
(舊式指令,但仍可能適用)
ifconfig
顯示所有網卡的 IP 設定與網卡狀態。
如未安裝,請安裝 net-tools:
sudo apt install net-tools # Ubuntu/Debian
sudo yum install net-tools # CentOS/RHEL
nmcli
(NetworkManager CLI)
nmcli device status
顯示所有網路裝置的狀態。
配置 IP 地址
使用 ip
指令手動設定 IP
sudo ip addr add 192.168.1.100/24 dev eth0
為 eth0
介面設定靜態 IP。
移除 IP
sudo ip addr del 192.168.1.100/24 dev eth0
配置預設閘道
sudo ip route add default via 192.168.1.1
使用 nmcli
設定靜態 IP
sudo nmcli con mod eth0 ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.method manual
sudo nmcli con up eth0
檢查 DNS 設定
cat /etc/resolv.conf
修改 DNS 設定:
sudo echo "nameserver 8.8.8.8" >> /etc/resolv.conf
網路診斷工具
ping
- 測試連線狀態
ping -c 4 google.com
traceroute
- 追蹤路由
traceroute google.com
若 traceroute
未安裝,可使用:
sudo apt install traceroute # Ubuntu/Debian
sudo yum install traceroute # CentOS/RHEL
netstat
或 ss
- 檢查連線狀態
netstat -tulnp # 舊方法
ss -tulnp # 現代方法
tcpdump
- 網路封包分析
sudo tcpdump -i eth0
nmap
- 掃描開放的網路端口
sudo nmap -sS 192.168.1.1/24
如未安裝,請執行:
sudo apt install nmap # Ubuntu/Debian
sudo yum install nmap # CentOS/RHEL
防火牆與存取控制
ufw
(Ubuntu 防火牆管理)
啟用防火牆:
sudo ufw enable
允許 SSH 連線:
sudo ufw allow 22/tcp
拒絕所有輸入連線:
sudo ufw default deny incoming
檢查防火牆狀態:
sudo ufw status verbose
firewalld
(CentOS/RHEL 防火牆管理)
啟用 firewalld
:
sudo systemctl start firewalld
允許 HTTP 服務:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload
列出所有規則:
sudo firewall-cmd --list-all
網路服務管理
systemd-networkd
服務管理
啟動 systemd-networkd
:
sudo systemctl enable systemd-networkd --now
檢查網路狀態:
networkctl status
dhclient
- 重新獲取 DHCP IP
sudo dhclient -r eth0
sudo dhclient eth0
hostnamectl
- 設定主機名稱
檢查主機名稱:
hostnamectl status
變更主機名稱:
sudo hostnamectl set-hostname my-server
結語
本篇介紹了 Linux 網路管理的基本與進階操作,包括 IP 配置、網路診斷、防火牆管理等。透過這些知識,您可以更有效地管理 Linux 伺服器的網路環境,確保系統的連線穩定與安全。