天仙blog

利用海纳思实现udpxy

1.光猫设置
我的光猫是移动H2-3e,将光猫的lan3通过vlan绑定到IPTV和网络,我网络的VLAN ID是101,IPTV是102,于是绑定时添加101/101,102/102
2.NAS设置
NAS 里面主要是网络的设置,

# 产生 eth0.102
vconfig add eth0 102
# 拉起接口
ip link set eth0.102 up
#获取ipv4
dhclient -v eth0.102 &

vconfig 方法会有警告提示,所以自动化脚本换了

自动化的脚本,只需要处理102这个iptv的vlan id 就可以了

1.生成可用脚本

cat > /usr/local/bin/vlan102.sh <<'EOF'
#!/bin/sh
# VLAN 102 自启动脚本(通用 Linux)
IF=eth0.102
VID=102
PIDF=/var/run/dhclient.${IF}.pid

case "$1" in
  start)
        ip link show "$IF" >/dev/null 2>&1 && {
            ip link set "$IF" down
            ip link delete "$IF"
        }
        ip link add link eth0 name "$IF" type vlan id "$VID"
        ip link set "$IF" up
        dhclient -nw -pf "$PIDF" "$IF"
        echo "VLAN 102 interface started."
        ;;
  stop)
        [ -f "$PIDF" ] && kill $(cat "$PIDF") 2>/dev/null
        ip link set "$IF" down 2>/dev/null
        ip link delete "$IF" 2>/dev/null
        echo "VLAN 102 interface stopped."
        ;;
  *)
        echo "Usage: $0 {start|stop}"
        exit 1
esac
EOF

2.赋可执行权限
chmod +x /usr/local/bin/vlan102.sh

3.开机自启
cat > /etc/systemd/system/vlan102.service <<'EOF'
[Unit]
Description=VLAN 102 interface
After=network-pre.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/bin/vlan102.sh start
ExecStop=/usr/local/bin/vlan102.sh stop
StandardOutput=journal

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable --now vlan102.service

4.确认状态(可选)
systemctl status vlan102.service

5.手动测试(可选)
/usr/local/bin/vlan102.sh start   # 立即拉起
/usr/local/bin/vlan102.sh stop    # 关闭清理

3.NAS里安装udpxy,通过docker安装,我安装的是docker.1ms.run/lordpedal/udpxy:latest,
4.udpxy配置,启动参数添加-m eth0.102

admin
admin
这个人很神秘

您是本站第2071名访客 今日有0篇新文章/评论