03_网关ip和端口映射(路由器转发)操作和原理

网关ip和端口映射(路由器转发)操作和原理

  • IP 与端口映射配置全指南:2 种方案搞定外网访问内网
  • 一、先搞懂:为什么需要 IP 与端口映射?
  • 二、方案一:路由器端口映射(适合有公网 IP,长期稳定用)
    • 步骤 1:提前准备 3 个关键信息
    • 步骤 2:登录路由器管理界面
    • 步骤 3:配置端口转发规则(核心步骤)
    • 步骤 4:固定内网 IP(避免映射失效)
    • 步骤 5:测试是否生效
  • 三、方案二:内网穿透工具(适合无公网 IP,临时 / 便捷用)
    • 步骤 1:准备工具
    • 步骤 2:配置服务器端(公网服务器)
    • 步骤 3:配置客户端(内网设备)
    • 步骤 4:测试访问
  • 四、配置避坑:4 个关键注意事项
  • 五、总结:如何选择方案?

IP 与端口映射配置全指南:2 种方案搞定外网访问内网

日常使用中,想从公司访问家里的 NAS 查文件、在外网测试本地开发的项目、远程查看家中的监控摄像头?这些需求的核心,其实都需要「IP 与端口映射」技术 —— 简单说,就是让外网设备能精准找到内网里的目标设备,建立访问通道。

一、先搞懂:为什么需要 IP 与端口映射?

在配置前,先快速理解核心逻辑:
我们的家用 / 公司网络属于「内网」,设备(电脑、NAS 等)只有「私有 IP」(如 192.168.1.100),这类 IP 仅在内部有效,外网完全 “看不见”;而整个内网只有路由器有一个「公网 IP」(如 202.100.5.8),相当于小区的 “大门地址”。
IP 与端口映射的作用,就是给这个 “小区大门” 加一个 “指引牌”:当外网设备访问「公网 IP + 指定端口」时,路由器或工具会自动把请求转发到内网的「目标 IP + 服务端口」—— 就像快递员按指引牌,把包裹从小区大门精准送到你家。

二、方案一:路由器端口映射(适合有公网 IP,长期稳定用)

如果你的路由器有公网 IP(可在路由器 “WAN 口状态” 查看,非 10.x.x.x/100.x.x.x 开头),优先选这种方案,速度快、无额外成本。

步骤 1:提前准备 3 个关键信息

内网目标设备 IP:比如要转发到的 NAS / 电脑 IP(例:192.168.1.105,可在设备 “网络设置” 或路由器 “已连接设备” 中查看);
目标服务端口:设备上运行的服务端口(例:Web 服务用 80,远程桌面用 3389,自定义服务用 8080);
路由器管理信息:管理 IP(常见 192.168.1.1/192.168.0.1,路由器背面标签有标注)、管理员账号密码。

步骤 2:登录路由器管理界面

用电脑 / 手机连接路由器 WiFi 或有线网络;
打开浏览器,输入路由器管理 IP,输入账号密码登录(首次登录建议修改默认密码,提升安全性)。

步骤 3:配置端口转发规则(核心步骤)

不同品牌路由器入口名称略有差异,但逻辑一致,以 TP-Link、小米、华为为例:
找到设置入口:通常在「高级设置→端口转发」「应用管理→虚拟服务器」或「NAT 转发」中;
新建转发规则,按表格填写参数(以 “外网访问内网 NAS 的 Web 服务” 为例):

参数填写说明示例值
规则名称自定义(方便区分)家用 NAS 访问
外部端口外网访问用的端口(避免 1-1024 系统端口)8080
内部 IP 地址内网目标设备的 IP(必须准确)192.168.1.105
内部端口目标设备的服务端口(可与外部端口一致)80
协议类型按服务选择(Web 用 TCP,监控可能用 UDP)TCP
状态勾选 “启用”启用

点击「保存」或「应用」,部分路由器需重启后生效。

步骤 4:固定内网 IP(避免映射失效)

内网设备 IP 可能因重启变化,导致映射规则失效,需绑定固定 IP:
进入路由器「DHCP 服务器→静态 IP 分配」或「地址保留」;
找到目标设备的 MAC 地址(在 “已连接设备” 中查看,格式如 AA:BB:CC:DD:EE:FF);
将 MAC 地址与目标 IP(如 192.168.1.105)绑定,保存后设备重启会固定使用该 IP。

步骤 5:测试是否生效

用手机关闭 WiFi,切换到 4G/5G 外网;
打开浏览器,输入「公网 IP: 外部端口」(例:202.100.5.8:8080);
若能打开 NAS 的 Web 界面,说明配置成功;若失败,先检查下一节的 “避坑要点”。

三、方案二:内网穿透工具(适合无公网 IP,临时 / 便捷用)

如果你的宽带没有公网 IP(如运营商给的是 10.x.x.x 内网 IP),或无法修改路由器配置(公司 / 校园网),就用内网穿透工具。这里以免费开源的「FRP」为例(操作稍复杂,但灵活;P2Link、花生壳等工具操作更简单,逻辑类似)。

步骤 1:准备工具

一台有公网 IP 的服务器:可在阿里云、腾讯云买最低配的云服务器(学生机年付仅几十元);
FRP 工具:从GitHub 下载,根据服务器(Linux/Windows)和内网设备系统选择对应版本。

步骤 2:配置服务器端(公网服务器)

1.解压 FRP 压缩包,找到服务器端文件:Linux 是「frps」和「frps.ini」,Windows 是「frps.exe」和「frps.ini」;
2.编辑「frps.ini」配置文件(核心参数如下):

[common]
bind_port = 7000  # FRP服务的端口(需在服务器防火墙开放)
vhost_http_port = 8080  # 外网访问用的端口

3.启动服务器端:
Linux:在终端运行 ./frps -c ./frps.ini
Windows:双击「frps.exe」,或在命令行输入 frps.exe -c frps.ini

步骤 3:配置客户端(内网设备)

1.在内网设备(如电脑)上解压 FRP,找到客户端文件:Linux 是「frpc」和「frpc.ini」,Windows 是「frpc.exe」和「frpc.ini」;
2.编辑「frpc.ini」配置文件(替换成你的实际信息):

[common]
server_addr = 123.123.123.123  # 你的公网服务器IP
server_port = 7000  # 与服务器端的bind_port一致[web]  # 自定义名称,区分不同服务
type = tcp  # 协议类型
local_ip = 127.0.0.1  # 本地设备填127.0.0.1,其他设备填其内网IP
local_port = 80  # 内网服务的端口(如Web服务80端口)
remote_port = 8080  # 与服务器端的vhost_http_port一致

3.启动客户端:
Linux:终端运行 ./frpc -c ./frpc.ini
Windows:双击「frpc.exe」,或命令行输入 frpc.exe -c frpc.ini

步骤 4:测试访问

外网设备打开浏览器,输入「公网服务器 IP:8080」(例:123.123.123.123:8080),即可访问内网设备的服务。

四、配置避坑:4 个关键注意事项

1.防火墙拦截是最常见问题:
路由器防火墙:在「防火墙设置」中开放配置的 “外部端口”;
设备防火墙:Windows 在「高级安全防火墙→入站规则」开放 “内部端口”,Linux 用 iptables -A INPUT -p tcp --dport 80 -j ACCEPT 开放端口。
2.端口冲突别忽略:
外部端口不能被其他服务占用(如 80 可能被路由器管理界面占用,可换 8080、8888 等)。
3.区分 “真 / 假公网 IP”:
若路由器 WAN 口 IP 是 10.x.x.x 或 100.x.x.x,属于 “运营商大内网 IP”,此时路由器端口转发无效,必须用内网穿透。
4.动态公网 IP 需配合 DDNS:
若公网 IP 会定期变化,在路由器「DDNS 设置」中绑定域名(如阿里云、腾讯云域名),用域名代替 IP 访问(例:yourname.3322.org:8080)。

五、总结:如何选择方案?

场景推荐方案优势
有公网 IP、长期稳定使用路由器端口映射速度快、无额外成本
无公网 IP、临时访问内网穿透工具无需改路由器、灵活
公司 / 校园网(禁改路由)内网穿透工具规避权限限制

无论选择哪种方案,核心都是 “精准转发”—— 只要确认 IP、端口、协议三个参数无误,再避开防火墙和端口冲突的坑,就能轻松实现外网访问内网。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/95398.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/95398.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「数据获取」《安徽建设统计年鉴》(2002-2007)(2004、2006缺失)(获取方式看绑定的资源)

01、数据简介《安徽建设统计年鉴》是一部全方位反映安徽省建设事业发展变迁的重要统计资料著作。该书系统收集并精心整理了 2006 年度安徽省城乡建设领域的核心统计数据,涵盖城乡建设固定资产投资、建筑业发展态势、城镇建设推进情况等多个关键方面,为政…

Python/JS/Go/Java同步学习(第一篇)格式化/隐藏参数一锅端 四语言输出流参数宇宙(附源码/截图/参数表/避坑指南/老板沉默术)

🤝 免骂声明: 本文四语言输出流参数经本蜀黎实战整理,旨在提供快速参考指南📝因各语言版本迭代及不同系统环境差异,偶尔可能出现整理不全面之处,实属正常✅欢迎理性交流补充,喷子勿喷——毕竟你…

人工智能助力流感疫苗选择:MIT 团队推出 VaxSeer 系统

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

使用 qmake 生成 Makefile,Makefile 转换为 Qt 的 .pro 文件

使用 qmake 生成 Makefile 的完整指南 qmake 是 Qt 提供的构建工具,用于从 .pro 项目文件生成 Makefile。以下是详细的使用方法: 基本使用方法 1. 从 .pro 文件生成 Makefile bash qmake -o Makefile your_project.pro2. 直接运行 qmake(自动…

利用DeepSeek编写验证xlsx格式文件中是否启用sharedStrings.xml对读写效率影响python程序

让他分别用100*10000个单元格有100、1000、10000个不同的1-200字符长的大写英文字母字符串测试. 一开始DeepSeek没有找到启用sharedStrings.xml的写xlsx模块,我自己找了pyxlsbwriter的例子告诉他才改好的。 import os import time import random import string impo…

【C++框架#2】gflags 和 gtest 安装使用

spdlog 安装和使用 1. 概述 介绍:spdlog 是一个高性能、超快速、零配置的 C 日志库,它旨在提供简洁的 API 和丰富的功能,同时保持高性能的日志记录。它支持多种输出目标、格式化选项、线程安全以及异步日志记录。 github 链接:htt…

平衡掌控者-游戏数值战斗设计

一、有效生命值1、计算公式有效生命生命值/(1-伤害减免率)/(1-闪避率)2、前摇和后摇对数值来说,战斗由两大模块组成,一个是战斗公式生效前的战斗攻击流程,一个是战斗公式与自身流程。比如说&…

使用DataLoader加载本地数据 食物分类案例

目录 一.食物分类案例 1..整合训练集测试集文档 2.导入相关的库 3.设置图片数据的格式转换 3.数据处理 4.数据打包 5.定义卷积神经网络 6.创建模型 7.训练和测试方法定义 8.损失函数和优化器 9.训练模型,测试准确率 10.测试模型 之前我们DataLoader加载…

从零开始的python学习——函数(2)

ʕ • ᴥ • ʔ づ♡ど 🎉 欢迎点赞支持🎉 个人主页:励志不掉头发的内向程序员; 专栏主页:python学习专栏; 文章目录 前言 一、变量作用域 二、函数执行过程 三、链式调用 四、嵌套调用 五、函数递归 六、…

RAG 的完整流程是怎么样的?

RAG(检索增强生成)的完整流程可分为5个核心阶段:数据准备:清洗文档、分块处理(如PDF转文本切片);向量化:使用嵌入模型(如BERT、BGE)将文本转为向量&#xff1…

研发文档版本混乱的根本原因是什么,怎么办

研发文档版本混乱的根本原因通常包括缺乏统一的版本控制制度、团队协作不畅、文档管理工具使用不当以及项目需求频繁变化等因素。这些问题使得研发团队在日常工作中容易出现文档版本混乱的情况,导致信息的不一致性、沟通不畅以及开发进度的延误。为了解决这一问题&a…

ChartView的基本使用

Qt ChartView(准确类名 QChartView)是 Qt Charts 模块里最常用的图表显示控件。一句话概括:“它把 QChart 画出来,并自带缩放、平移、抗锯齿等交互能力”。QML ChartView 简介(一句话先记住:ChartView 是 Q…

系统扩展策略

1、核心指导思想:扩展立方体 在讨论具体策略前,先了解著名的扩展立方体(Scale Cube),它定义了三种扩展维度: X轴:水平复制(克隆) 策略:通过负载均衡器&#…

HBuilder X 4.76 开发微信小程序集成 uview-plus

简介 本文记录了在HBuilder中创建并配置uni-app项目的完整流程。 首先创建项目并测试运行,确认无报错后添加uView-Plus组件库。 随后修改了main.js、uni.scss、App.vue等核心文件,配置manifest.json并安装dayjs、clipboard等依赖库。 通过调整vite.c…

第4章:内存分析与堆转储

本章概述内存分析是 Java 应用性能调优的核心环节之一。本章将深入探讨如何使用 VisualVM 进行内存分析,包括堆内存监控、堆转储生成与分析、内存泄漏检测以及内存优化策略。通过本章的学习,你将掌握识别和解决内存相关问题的专业技能。学习目标理解 Jav…

面经分享一:分布式环境下的事务难题:理论边界、实现路径与选型逻辑

一、什么是分布式事务? 分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。 一个典型的例子就是跨行转账: 用户从银行A的账户向银行B的账户转账100元。 这个操作包含两个步骤: 从A账户扣减100元。 向B账户…

C++的演化历史

C是一门这样的编程语言: 兼顾底层计算机硬件系统和高层应用抽象机制从实际问题出发,注重零成本抽象、性能、可移植性、与C兼容语言特性和细节很多,学习成本较高,是一门让程序员很难敢说精通的语言 C是自由的,支持5种…

Qt6实现绘图工具:12种绘图工具全家桶!这个项目满足全部2D场景

项目概述 一个基于Qt框架开发的专业绘图工具,实现了完整的2D图形绘制、编辑和管理功能。该项目采用模块化设计,包含图形绘制、图层管理、命令模式撤销重做、用户界面等多个子系统,是学习现代C++和Qt框架的最佳实践。 核心功能特性 12种专业绘图工具 多图层绘制系统 完整的…

Linux驱动开发学习笔记

第1章 Linux驱动开发的方式mmap映射型设计方法。【不推荐】将芯片上的物理地址映射到用户空间的虚拟地址上,用户操作虚拟地址来操作硬件。使用文件操作集(file_operatiopns)设计方法。【极致推荐】platfrom总线型设置方法。【比较流行】设备树。【推荐】第2章 Linux…

mac中进行适用于IOS的静态库构建

前沿: 进行C开发完成之后,需要将代码编译成静态库,并且在IOS的手机系统中执行,因此记录该实现过程. 1主要涉及内容 1.1 整体文件架构 gongyonglocalhost Attention % tree -L 2 . ├── build │ ├── __.SYMDEF │ ├── cmake_install.cmake │ ├── CMakeCache…