Linux网络设置全面指南

一、传统网络配置方式

图片[1]_Linux网络设置全面指南_知途无界

1. ifconfig(已逐渐淘汰)

# 查看网卡信息
ifconfig

# 临时配置IP地址
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0

# 启用/禁用网卡
sudo ifconfig eth0 up
sudo ifconfig eth0 down

2. route(路由配置)

# 查看路由表
route -n

# 添加默认网关
sudo route add default gw 192.168.1.1

# 添加特定路由
sudo route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.1

二、现代网络配置工具

1. ip命令(推荐)

# 查看所有网络接口
ip a

# 设置IP地址
sudo ip addr add 192.168.1.100/24 dev eth0

# 启用/禁用接口
sudo ip link set eth0 up
sudo ip link set eth0 down

# 路由管理
sudo ip route add default via 192.168.1.1
sudo ip route add 10.0.0.0/8 via 192.168.1.1

2. nmcli(NetworkManager命令行工具)

# 查看连接状态
nmcli connection show

# 添加新连接
sudo nmcli connection add type ethernet ifname eth0 con-name eth0-connection

# 配置静态IP
sudo nmcli connection modify eth0-connection ipv4.addresses 192.168.1.100/24
sudo nmcli connection modify eth0-connection ipv4.gateway 192.168.1.1
sudo nmcli connection modify eth0-connection ipv4.dns "8.8.8.8 8.8.4.4"
sudo nmcli connection modify eth0-connection ipv4.method manual

# 启用连接
sudo nmcli connection up eth0-connection

三、持久化网络配置

1. Debian/Ubuntu系统(/etc/network/interfaces)

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

2. RHEL/CentOS系统(/etc/sysconfig/network-scripts/ifcfg-eth0)

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

3. 通用方法(netplan – Ubuntu 17.10+)

# /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]

应用配置:

sudo netplan apply

四、DNS配置

1. 临时修改

sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf

2. 持久化配置

# 编辑/etc/resolv.conf(可能被NetworkManager覆盖)
# 或编辑NetworkManager配置(推荐)

五、网络诊断工具

# 测试连通性
ping 8.8.8.8

# 追踪路由路径
traceroute google.com

# 查看DNS解析
nslookup google.com
dig google.com

# 查看网络连接
netstat -tulnp
ss -tulnp

# 测试端口连通性
telnet 192.168.1.1 80
nc -zv 192.168.1.1 80

六、高级网络配置

1. 绑定多个IP

sudo ip addr add 192.168.1.101/24 dev eth0 label eth0:1

2. VLAN配置

# 创建VLAN接口
sudo ip link add link eth0 name eth0.100 type vlan id 100
sudo ip addr add 192.168.100.100/24 dev eth0.100
sudo ip link set eth0.100 up

3. 网络桥接

# 创建桥接接口
sudo ip link add name br0 type bridge
sudo ip link set dev eth0 master br0
sudo ip addr add 192.168.1.100/24 dev br0
sudo ip link set br0 up

七、网络服务管理

# 重启网络服务(根据发行版不同)
sudo systemctl restart networking  # Debian/Ubuntu
sudo systemctl restart network     # RHEL/CentOS

八、防火墙配置

1. iptables(传统)

# 允许SSH访问
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# 保存规则
sudo iptables-save > /etc/iptables.rules

2. firewalld(RHEL/CentOS)

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload

3. ufw(Ubuntu)

sudo ufw allow 22/tcp
sudo ufw enable

最佳实践建议

  1. 生产环境优先使用NetworkManager或netplan进行配置
  2. 临时配置使用ip/ifconfig命令
  3. 修改前备份原始配置文件
  4. 测试环境验证后再应用到生产
  5. 记录所有网络变更

以上方法涵盖了Linux系统中从基础到高级的网络配置方式,可根据具体发行版和需求选择适合的方法。

© 版权声明
THE END
喜欢就点个赞,支持一下吧!
点赞82 分享
评论 抢沙发
头像
欢迎您留下评论!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容