Linux UDP转发:三步简单搞定
创始人
2026-05-09 18:21:33

UDP转发常用于DNS、游戏语音等场景。相比TCP,配置稍微特殊一点,但也不复杂。

一、开启IP转发(1条命令)

bash

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf && sysctl -p

二、添加UDP转发规则(2条iptables)

假设要把外网的UDP 53端口(DNS)转发到内网 192.168.1.100:53:

bash

# 1. 改目标地址(DNAT)

iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to-destination 192.168.1.100:53

# 2. 改源地址(SNAT),让响应能回来

iptables -t nat -A POSTROUTING -p udp -d 192.168.1.100 --dport 53 -j MASQUERADE

# 3. 放行转发(可选,如果默认FORWARD是DROP则需要)

iptables -A FORWARD -p udp --dport 53 -j ACCEPT

三、保存规则(防止重启丢失)

bash

# Ubuntu/Debian

apt install iptables-persistent && iptables-save > /etc/iptables/rules.v4

# CentOS

service iptables save

一键脚本(复制粘贴即可)

bash

#!/bin/bash

# 用法:./udp_forward.sh 本地端口 目标IP 目标端口

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A PREROUTING -p udp --dport $1 -j DNAT --to-destination $2:$3

iptables -t nat -A POSTROUTING -p udp -d $2 --dport $3 -j MASQUERADE

iptables -A FORWARD -p udp --dport $3 -j ACCEPT

echo "UDP转发已配置:端口$1 → $2:$3"

不想敲命令?用图形化工具

如果你更喜欢可视化界面管理转发规则,可以试试这款工具:80km无痕网关

支持UDP/TCP转发,Web界面操作,几分钟就能配好。

验证是否生效

bash

# 查看规则

iptables -t nat -L -n -v | grep udp

# 抓包测试(在服务器上)

tcpdump -i eth0 -n udp port 53

搞定!UDP转发就这么简单。

相关内容

热门资讯

毕业边创业:AI销售训练7个月... 一名创始人在完成学业的同时,无融资做 AI 语音销售角色扮演工具。团队成员自报七个月约 260 名付...
合百集团招标结果:合肥百大集团... 证券之星消息,根据天眼查APP-财产线索数据整理,合肥百货大楼集团股份有限公司7月29日发布《合肥百...
突发!OpenAI下一代AI攻... OpenAI还有大招! 奥特曼刚演示的内部模型Astra,一口气在10个数学难题取得重大突破! 这...
结构化信任:AI时代的品牌商业... GEO生态革命真正改变的,不只是品牌传播方式,而是商业价值生成方式。未来品牌竞争的核心,不只是争夺流...
中印尼青年共话AI发展机遇与挑... 作为2026中国-东盟教育交流周重点活动之一,2026中国-东盟青年共同体论坛近日在贵州省贵阳市举行...