Linux 路由器配置基础
Linux 凭借其稳定性、灵活性和免费开源的特性,常被用作企业或家庭网络中的路由器,通过简单的配置,Linux 系统可以实现数据包转发、网络地址转换(NAT)、防火墙控制等功能,本文将详细介绍 Linux 路由器的配置步骤,包括系统准备、网络配置、IP 转发启用、NAT 设置以及防火墙配置等关键环节。

系统准备与环境搭建
在开始配置之前,需确保 Linux 系统已安装并更新至最新版本,推荐使用 Ubuntu Server、CentOS 或 Debian 等服务器版操作系统,这些系统自带命令行工具,便于高效配置,通过 ip addr 查看系统网卡信息,通常至少需要两块网卡:一块连接外网(如 eth0),另一块连接内网(如 eth1),若为虚拟机,可通过网络适配器配置桥接或 NAT 模式实现内外网连接。
安装必要的网络工具,如 net-tools(提供 ifconfig、route 等命令)和 iptables(防火墙与 NAT 工具),以 Ubuntu 为例,执行以下命令:
sudo apt update && sudo apt install net-tools iptables -y
网络接口配置
网络接口是路由器与内外网通信的桥梁,需为内外网接口分配 IP 地址,并确保子网不冲突,以 eth0(外网)和 eth1(内网)为例,使用 ip addr 命令配置静态 IP:
sudo ip addr add 192.168.1.1/24 dev eth0 # 外网接口,假设运营商分配的网段 sudo ip addr add 192.168.100.1/24 dev eth1 # 内网接口,内网网段 sudo ip link set eth0 up sudo ip link set eth1 up
为使配置永久生效,需修改网络配置文件,在 Ubuntu 中,编辑 /etc/netplan/01-netcfg.yaml;在 CentOS 中,编辑 /etc/sysconfig/network-scripts/ifcfg-eth0 和 ifcfg-eth1,设置 BOOTPROTO=static 并指定 IP、子网掩码和网关。
启用 IP 转发功能
Linux 默认禁止系统作为路由器转发数据包,需手动开启内核参数,通过以下命令临时启用:
sudo sysctl -w net.ipv4.ip_forward=1
为永久生效,编辑 /etc/sysctl.conf 文件,添加或取消注释以下行:
net.ipv4.ip_forward=1
保存后执行 sudo sysctl -p 加载配置。

配置 NAT 实现共享上网
NAT(网络地址转换)允许多台内网设备通过单个公网 IP 访问互联网,使用 iptables 的 nat 表配置 SNAT(源地址转换)或 MASQUERADE(动态地址转换),以 MASQUERADE 为例,适用于动态公网 IP:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
若公网 IP 固定,可使用 SNAT:
sudo iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.1.100
保存 iptables 规则,防止重启失效,Ubuntu 中使用 iptables-persistent:
sudo apt install iptables-persistent -y sudo netfilter-persistent save
配置防火墙与端口转发
防火墙是保障网络安全的重要组件,通过 iptables 设置默认策略,仅允许必要端口通过:
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT
放行内网设备访问外网的规则:
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT sudo iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
若需将内网服务映射到公网(如 Web 服务器),可配置端口转发,将公网 8080 端口转发至内网 168.100.10 的 80 端口:
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.100.10:80
动态路由与 DHCP 服务(可选)
若网络规模较大,可启用动态路由协议(如 OSPF 或 BGP),但家庭或小型企业通常使用静态路由即可,对于内网设备,可配置 DHCP 服务自动分配 IP,以 Ubuntu 为例,安装 isc-dhcp-server:

sudo apt install isc-dhcp-server -y
编辑 /etc/dhcp/dhcpd.conf,配置内网网段:
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.100 192.168.100.200;
option routers 192.168.100.1;
option domain-name-servers 8.8.8.8;
}
启动服务并设置为开机自启:
sudo systemctl enable isc-dhcp-server sudo systemctl start isc-dhcp-server
测试与故障排查
配置完成后,需测试路由器功能,从内网设备 ping 公网 IP(如 8.8.8),检查是否能正常通信;使用 traceroute 命令查看数据包路径是否经过 Linux 路由器,若无法上网,检查:
- 网卡 IP 配置是否正确;
- IP 转发是否启用;
- NAT 规则是否生效(
sudo iptables -t nat -L -v); - 防火墙是否拦截流量(
sudo iptables -L -v)。
通过以上步骤,即可搭建一台功能完善的 Linux 路由器,根据实际需求,可进一步优化防火墙规则、添加 QoS 限速或配置 VPN 服务,提升网络的安全性与灵活性。




















