Linux 网络配置命令
配置IP地址和网络接口
-
ip
命令- 配置IP地址:
ip addr add 192.168.1.100/24 dev eth0
- 移除IP地址:
ip addr del 192.168.1.100/24 dev eth0
- 显示所有网络接口的IP地址:
ip addr show
- 配置IP地址:
-
ifconfig
命令(已过时,推荐使用ip
命令)- 配置IP地址:
ifconfig eth0 192.168.1.100 netmask 255.255.255.0
- 激活网络接口:
ifconfig eth0 up
- 禁用网络接口:
ifconfig eth0 down
- 配置IP地址:
配置路由表
-
ip route
命令- 添加默认网关:
ip route add default via 192.168.1.1
- 添加静态路由:
ip route add 192.168.2.0/24 via 192.168.1.1
- 删除静态路由:
ip route del 192.168.2.0/24
- 显示路由表:
ip route show
- 添加默认网关:
-
route
命令(已过时,推荐使用ip
命令)- 添加默认网关:
route add default gw 192.168.1.1
- 添加静态路由:
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1
- 删除静态路由:
route del -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1
- 显示路由表:
route -n
- 添加默认网关:
配置路由转发
- 启用IP转发
- 临时启用:
echo 1 > /proc/sys/net/ipv4/ip_forward
- 永久启用(编辑
/etc/sysctl.conf
):echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf sysctl -p
- 临时启用:
配置防火墙
-
iptables
命令- 查看当前防火墙规则:
iptables -L
- 允许特定端口(如80端口):
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- 禁止特定端口(如80端口):
iptables -A INPUT -p tcp --dport 80 -j DROP
- 保存防火墙规则(根据系统不同命令有所不同):
service iptables save # 或者 iptables-save > /etc/iptables/rules.v4
- 查看当前防火墙规则:
-
firewalld
命令(现代系统中iptables
的替代品)- 启用
firewalld
:systemctl start firewalld systemctl enable firewalld
- 查看当前区域和规则:
firewall-cmd --get-active-zones firewall-cmd --list-all
- 允许特定端口(如80端口):
firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --reload
- 禁止特定端口(如80端口):
firewall-cmd --zone=public --remove-port=80/tcp --permanent firewall-cmd --reload
- 启用
配置DNS
- 配置
/etc/resolv.conf
- 手动编辑文件:
nano /etc/resolv.conf
- 添加DNS服务器:
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
- 手动编辑文件:
测试网络连接
-
ping
命令- 测试连接:
ping 8.8.8.8
- 测试连接:
-
traceroute
命令- 跟踪路由:
traceroute 8.8.8.8
- 跟踪路由:
-
netstat
命令(部分功能被ss
命令替代)- 显示所有连接和监听端口:
netstat -tuln
- 显示所有连接和监听端口:
-
ss
命令- 显示所有连接和监听端口:
ss -tuln
- 显示所有连接和监听端口: