Ubuntu 18.04双网卡实战:5分钟搞定内网穿透+NAT转发(含DHCP自动分配)
Ubuntu 18.04双网卡配置全指南从内网穿透到自动化管理在实验室环境或小型办公网络中经常需要一台主机同时连接内外网。Ubuntu 18.04作为长期支持版本其网络功能稳定可靠特别适合作为网关设备。本文将手把手教你如何配置双网卡实现内网穿透、NAT转发并扩展DHCP自动分配功能让你的网络管理更加高效。1. 环境准备与基础配置1.1 硬件与系统要求在开始之前请确保你的Ubuntu 18.04主机满足以下条件双物理网卡一个用于连接外网如公司/家庭路由器一个用于连接内网设备root权限所有操作都需要管理员权限稳定的网络环境建议在物理机上操作虚拟机可能需要额外桥接配置首先确认网卡信息ip link show典型输出如下1: lo: LOOPBACK,UP,LOWER_UP mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp3s0: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff 3: enx00e04c68066f: BROADCAST,MULTICAST,UP,LOWER_UP mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 00:e0:4c:68:06:6f brd ff:ff:ff:ff:ff:ff1.2 网络接口配置编辑网络配置文件/etc/network/interfacesauto enp3s0 iface enp3s0 inet dhcp auto enx00e04c68066f iface enx00e04c68066f inet static address 192.168.1.1 netmask 255.255.255.0 # gateway留空避免路由冲突应用配置并重启网络服务systemctl restart networking注意Ubuntu 18.04默认使用netplan如需传统ifupdown方式需安装ifupdown包2. 内核转发与NAT配置2.1 启用IP转发永久启用内核转发echo net.ipv4.ip_forward1 /etc/sysctl.conf sysctl -p验证是否生效cat /proc/sys/net/ipv4/ip_forward # 应输出12.2 iptables NAT规则设置MASQUERADE规则实现地址转换iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE iptables -A FORWARD -i enx00e04c68066f -o enp3s0 -j ACCEPT iptables -A FORWARD -i enp3s0 -o enx00e04c68066f -m state --state RELATED,ESTABLISHED -j ACCEPT保存规则使其重启后依然有效apt install iptables-persistent netfilter-persistent save3. DHCP服务器部署3.1 安装与基础配置安装ISC DHCP服务器apt install isc-dhcp-server -y配置监听接口echo INTERFACESv4enx00e04c68066f /etc/default/isc-dhcp-server3.2 DHCP作用域设置编辑/etc/dhcp/dhcpd.confsubnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 86400; max-lease-time 172800; }启动服务systemctl restart isc-dhcp-server systemctl enable isc-dhcp-server4. 高级功能与故障排查4.1 端口转发配置如果需要从外网访问内网服务添加DNAT规则iptables -t nat -A PREROUTING -i enp3s0 -p tcp --dport 8080 -j DNAT --to-destination 192.168.1.100:80 iptables -A FORWARD -i enp3s0 -o enx00e04c68066f -p tcp --dport 80 -d 192.168.1.100 -j ACCEPT4.2 常见问题解决DHCP服务无法启动检查/var/log/syslog中的错误信息确认接口名称拼写正确确保IP地址范围不与静态分配冲突NAT不工作确认ip_forward已启用检查iptables规则是否正确加载测试基础连通性ping -I enx00e04c68066f 192.168.1.100网络性能优化# 增加连接跟踪表大小 echo net.netfilter.nf_conntrack_max65536 /etc/sysctl.conf # 启用TCP窗口缩放 echo net.ipv4.tcp_window_scaling1 /etc/sysctl.conf sysctl -p5. 自动化维护方案5.1 使用systemd定时检查服务创建服务监控脚本/usr/local/bin/check_gateway.sh#!/bin/bash # 检查DHCP服务 if ! systemctl is-active --quiet isc-dhcp-server; then systemctl restart isc-dhcp-server logger DHCP服务已重启 fi # 检查NAT规则 if ! iptables -t nat -C POSTROUTING -o enp3s0 -j MASQUERADE 2/dev/null; then iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE logger NAT规则已恢复 fi设置定时任务chmod x /usr/local/bin/check_gateway.sh (crontab -l 2/dev/null; echo */5 * * * * /usr/local/bin/check_gateway.sh) | crontab -5.2 网络流量监控安装vnstat进行流量统计apt install vnstat vnstat -u -i enp3s0 vnstat -u -i enx00e04c68066f查看实时流量vnstat -l -i enp3s0在实际部署中这套配置已经稳定运行了超过200天处理了实验室15台设备的同时上网需求。关键是要定期检查日志特别是在系统更新后某些配置可能会被覆盖。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2453918.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!