当前位置: 首页 > news >正文

家庭网络中的服务器怎么对外提供服务?

家庭网络中的服务器怎么对外提供服务?

    • 方案1 DDNS(家庭网络需要有公网ip)
    • 方案2 内网穿透(需要有一台公网ip的服务器)

方案1 DDNS(家庭网络需要有公网ip)

  怎么判断是否有公网ip?大致的流程就是光猫改桥接,由光猫拨号改为路由器拨号,在路由器管理页面查看拨号获取的ip,用这个ip去ip查询网站验证,具体的操作可自行搜索,这里不进行赘述了。

  我们都知道,ip有两种,ipv4和ipv6

  网络运营商一般都会分配ipv6,在路由器开启ipv6即可

  使用ipv6的话,有一个缺点,如果访问用户没有ipv6,就无法访问你的服务器

  公网ip固定的情况下其实也没什么可说的,直接配置域名解析即可。家庭网络ip不固定的情况下,可以使用ddns服务,推荐ddns-go
https://github.com/jeessy2/ddns-go

  ddns的作用是将动态的公网 IPv4 或 IPv6 地址映射到固定的域名解析服务上

  这个ddns需要安装,也可以选择更加轻量级的就是使用路由器的ddns服务

方案2 内网穿透(需要有一台公网ip的服务器)

推荐工具frp https://github.com/fatedier/frp
gofrp文档 https://gofrp.org/zh-cn/docs/

  有客户端,服务端,服务端需要部署到公网ip的服务器上,域名解析到公网ip即可,根据文档进行配置,也可以直接抄我的配置

frps.toml 服务端配置

bindPort = 7000 # 必填,绑定端口,客户端需要连接这个端口,进行通信
vhostHTTPPort = 18080 # http代理监听端口[auth]
token = "asdfasdfasdfs" # 必填,token,必须设置,不然谁都可以连你的frps了[webServer]   # Dashboard 相关配置,查看信息用的
addr = "0.0.0.0"
port = 7001
user = 'user'
password = 'password'

frpc.toml 客户端配置

user = "local-server"# 名称,自定义随便写
serverAddr = "xx.xx.xx.xx"# 必填,公网ip服务器
serverPort = 7000# 必填,服务端的bindPort[auth]
token = "asdfasdfasdfs"# 服务端配置的token[webServer]  # Dashboard 相关配置,查看信息用的
addr = '0.0.0.0'
port = 7001
user = 'user'
password = 'password'[[proxies]] # 代理相关设置,访问服务端的6022端口,就会将请求转发到你本机的22端口
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6022[[proxies]]# 代理相关设置,访问服务端的18080端口,就会将请求转发到你本机的80端口
name = "http"
type = "http"
localIP = "127.0.0.1"
localPort = 80
customDomains=["www.domains.com"]  # 绑定的域名,必须配置,新增域名这里也需要修改

检查你的配置是否正确

./frps verify -c frps.toml

  用户访问这个域名www.domains.com:18080 的时候,就会将请求转发到你家庭网络中的服务器上,但是如果我们想要不加这个端口访问的话,可以在公网ip服务器上加一层nginx作为反向代理,将80/443的请求转发到18080即可

http://www.dtcms.com/a/270560.html

相关文章:

  • 跨平台ROS2视觉数据流:服务器运行IsaacSim+Foxglove本地可视化全攻略
  • 【网络】Linux 内核优化实战 - net.ipv4.tcp_dsack
  • NHibernate案例
  • scp:上传大型数据集到实验室服务器
  • 2025年人工智能、虚拟现实与交互设计国际学术会议
  • 蛋白质序列-kappa参数计算算法解读
  • Linux——I/O复用
  • django 一个表中包括id和parentid,如何通过parentid找到全部父爷id
  • 微信小程序91~100
  • 什么是高防 IP?从技术原理到实战部署的深度解析
  • 制作MikTex本地包可用于离线安装包
  • springBoot使用XWPFDocument 和 LoopRowTableRenderPolicy 两种方式填充数据到word模版中
  • ARM单片机滴答定时器理解与应用(一)(详细解析)
  • Node.js 是什么?npm 是什么? Vue 为什么需要他们?
  • CVE-2025-32463复现
  • ✍️ Python 批量设置 Word 文档多级字体样式(标题/正文/名称/小节)
  • PHP 基于模板动态生成 Word 文档:图片 + 表格数据填充全方案(PHPOffice 实战)
  • 使用python 将多个docx文件合并为一个word
  • 【Unity】MiniGame编辑器小游戏(十)连连看【Link】
  • 实时地震分析:AI+Python如何帮我们提前感知大地的怒吼?
  • 使用 Docker 搭建 Go Web 应用开发环境——AI教你学Docker
  • NO.1数据结构绪论|数据结构|逻辑结构|物理结构|算法|算法的度量
  • 从救火到赋能:运维的职责演进与云原生时代的未来图景
  • 聚铭安全管家平台2.0实战解码 | 安服篇(二):无人值守自动化封禁
  • 【Unity】MiniGame编辑器小游戏(十一)消消乐【Crush】
  • 本地Qwen中医问诊小程序系统开发
  • 【目标检测之Ultralytics预测框颜色修改】
  • OpenCV哈希算法------Marr-Hildreth 边缘检测哈希算法
  • 基于DeepSeek构建的openGauss AI智能优化助手:数据库性能提升新利器
  • 微软 Bluetooth LE Explorer 实用工具的详细使用分析