人在美国,刚下飞机,如何获取家里的ip?

2021-02-15 22:18:57 94点赞 176收藏 29评论

一、前言

2019年5月份,购入矿难的蜗牛星际,用win7搭建了emby的服务器

但由于其手机端app收费使用,后来切换到了jellyfin。

切到jellyfin后,家里电视、电脑、手机、平板都有对应的客户端可以访问。利用旧电脑搭建家庭多媒体中心的文章很多,就不啰嗦了。

如何公网访问的方案,也是千奇百怪,各有千秋。

但基本上免费的操作复杂,简单的则贵。

贵有贵的道理,免费有免费的香。

之前看用阿里云主机配置远程的ddns,大体思路差不多,我只是用了个免费的替代了一下。
我的方案不在乎是路由器拨号,还是光猫拨号。只要运营商支持ipv6,只要路由器支持ipv6,只要手机能获取到ipv6,理论上都是可行的。

每个人情况不一样,我这提供我自己的方案,供大家参考。

二、概述

大体思路

利用ipv6的公网访问能力,家里每台设备都有一个公网ip,想办法把ip告诉外面的你,在外面能获取到服务器的ipv6地址,即可访问家里的服务器。

基本步骤

  1. 测试宽带运营商和路由器是否支持ipv6

  2. 想办法拿到家里的ip

三、测试宽带运营商和路由器是否支持ipv6

这块涉及到宽带拨号的方式,如果不清楚是否支持ipv6。可以从源头排查:先查看光猫的配置页面,查看是否有ipv6相关的配置。再查看自己的路由器是否打开ipv6,尝试下自动获取ip和桥模式。最后手机、电脑如果能够获取到ipv6,才是真正意义上支持ipv6。

TP-LINK双千兆路由器1900M无线家用5G双频WDR7660千兆六信号放大器高速路由WIFI穿墙IPv6170元京东去购买

本人家里装的移动宽带是直接光猫拨号,光猫同时对ipv4和ipv6进行了拨号连接。自己买的tp7660的路由器以固定ip方式接入光猫,作为下一级的路由器。网关就是配置光猫的ip地址。

二级路由器组网配置二级路由器组网配置

路由器固件比较落伍,可玩性不高,但好在支持ipv6。一般默认关闭ipv6,打开后选择桥模式,就可以获取到ipv6的地址。

路由器拿到了ipv6路由器拿到了ipv6

tp的ipv6功能是个半成品,除了这个单独的页面有ipv6相关功能设置,其他页面都没任何显示,比如无法查看所连接设备的ipv6地址。DDNS之类的一切服务也都是默认ipv4。

pc的ipv6pc的ipv6

尝试上面的方案后,再看下手机或电脑上是否能够获取到ipv6。

看到这里劝退50%的人了。

四、想办法拿到家里的ip

ipv6通常情况下,运营商不会永远给一个固定的ip,带来的问题就是,今天用这个ipv6可以访问服务器,明天也许就连接不上了。

因此,要想一个办法,将服务器的ipv6地址,及时地保存在一个外网可以访问的地方。

核心步骤

  1. 先用python脚本获取服务器的ipv6地址,保存在文件中。

  2. 地址变化时,将获取到的地址,通过GitPython库操作git,上传文件到Github私有仓库中。

  3. 通过查询github的Api,访问请求Github私有仓库,读取到这个文件中ipv6的地址。

光是上面python和git操作,已经劝退了99.9%的人了。

没养过猪,还是可以看看别人吃猪肉的嘛。实在想吃,花点钱下个馆子,还是值得的。

4.1 python获取ip

参考Python 获取本机公网IPv6地址,通过windows下 ipconfig 命令行,获取到ip。

4.2 地址变化时,上传到github私有仓库

GitPython doc官方文档,结合网络搜索,完成git的上传。

如果没有用过github,可以大概了解下。Github图文详解

将服务器用ssh key与github建立安全连接,上传下拉都不再需要密码。
如果不会,可以搜索下。

4.3 想办法再取回ipv6地址

简单方案: 电脑直接登陆github,查看repo里的文件
复杂方案: 弄个github的api,当域名,获取到存储在仓库里的ip地址

具体步骤:

  1. 在下图中,箭头位置,申请开发者token,这个token可以免密码获取访问github的各个api。

  2. 看文档,学习token如何使用

  3. 找到获取文件的api后,请求测试结果,拿到文件下载链接download_url

  4. 直接打开download_url中的连接,浏览器中即可获取到服务器的ipv6

获取token获取token

测试可用性,拿到下载链接测试可用性,拿到下载链接

直接访问下载链接,可以拿到ip地址直接访问下载链接,可以拿到ip地址

4.4 用拿到的ip访问下服务器

jellyfin的http端口是8096,因此通过下面,粘贴到浏览器或者jellyfin的客户端即可访问家里服务器了。

http://[ipv6地址]:8096


五、手机如何获取ipv6

上面是电脑端可以操作的,但手机端没办法获取。我这里给出两个方案:

  1. 直接登陆github的网页,或者客户端,找到对应的文件,就可以看到ipv6地址,复制出来就可以

  2. 自己用上面的接口,写个app,或者用api模拟的接口,请求对应的api,获取到ip。

为了方便,当然自己写app获取到ip,一劳永逸。

六、服务器的计划任务

路子都打通了,但ip什么时候变?
变了怎么上传出去?
目前我是没有找到监听ipv6变化的方法,只能定期轮寻ipv6是否变了。
给服务器添加计划任务,开机启动后1min,尝试获取ipv6,如果失败,每隔五分钟重试3次,每个小时检查一次。
具体细节百度windows计划任务。

七、总结

春节在家,实在无趣,游戏打到要睡觉。
难得有这么长自己的时间,做点有意义的事,不用来装逼,实在可惜。
于是过年期间,装ubuntu系统,学习如何使用,安装常用软件,找回丢失多年的markdown技能,打通外网获取家里ip,光这文章写了就有一天。

本文用的是github仓库存储的方案,也可以有其他方案,只是需要定期把ipv6上传到某一个外网可以访问的地方即可,比如云盘同步,大同小异。

看似很复杂的一套,其实我基本上都是百度来的,只是一个方案整合,当然,如果没有平时兴趣和工作积累的一些东西,实际上第一步可能就直接劝退。看别人的教程,我也基本是退避三舍的,技术栈不一样,每个人擅长了解的东西不同,方案就不一样,实现复杂度也不一样。

因此,我希望看不懂的,不必纠结,很多内容我也只是略懂,有描述错误的请见谅,只要关注思路即可。

直接通过ipv6访问,访问者也需要ipv6,速度肯定是最快的,但也存在被入侵的风险。最后,友情提示:务必保存好ipv6的地址,不要随意泄漏

展开 收起

TP-LINK 普联 TL-SM512LM-300m 万兆多模双纤SFP+光模块 光纤传输

TP-LINK 普联 TL-SM512LM-300m 万兆多模双纤SFP+光模块 光纤传输

117.8元起

TP-LINK 普联 TL-AP1202GI-PoE AC1200双频无线面板式AP

TP-LINK 普联 TL-AP1202GI-PoE AC1200双频无线面板式AP

199元起

TP-LINK 普联 AC1200 双频千兆无线AP

TP-LINK 普联 AC1200 双频千兆无线AP

暂无报价

TP-LINK 普联 TL-FC311A-3 单模光纤收发器 黑色

TP-LINK 普联 TL-FC311A-3 单模光纤收发器 黑色

85元起

TP-LINK 普联 TL-AC300 无线控制器

TP-LINK 普联 TL-AC300 无线控制器

1152元起

TP-LINK 普联 TL-AC200 企业路由器

TP-LINK 普联 TL-AC200 企业路由器

459元起

TP-LINK 普联 TL-SM411LSA-500m 单模单纤SFP光模块

TP-LINK 普联 TL-SM411LSA-500m 单模单纤SFP光模块

135元起

TP-LINK 普联 TL-EP110 千兆宽带光猫 黑色

TP-LINK 普联 TL-EP110 千兆宽带光猫 黑色

139元起

TP-LINK 普联 TL-AC100 企业路由器

TP-LINK 普联 TL-AC100 企业路由器

235元起

TP-LINK 普联 TL-AP1758GI-PoE AC1750双频无线面板式AP

TP-LINK 普联 TL-AP1758GI-PoE AC1750双频无线面板式AP

暂无报价

TP-LINK 光口转网口2.5G光纤模块1G万10G SFP电口模块光转电SM410U 510U 2.5G/SM410U-传输100米

TP-LINK 光口转网口2.5G光纤模块1G万10G SFP电口模块光转电SM410U 510U 2.5G/SM410U-传输100米

99元起

TP-LINK 普联 TL-POE160S PoE供电器模块

TP-LINK 普联 TL-POE160S PoE供电器模块

62元起

TP-LINK 普联 AP450I-POE 450M无线86型面板式AP 企业级酒店别墅wifi接入

TP-LINK 普联 AP450I-POE 450M无线86型面板式AP 企业级酒店别墅wifi接入

121.5元起

TP-LINK 普联 TL-AP300I-DC 300M无线面板式AP

TP-LINK 普联 TL-AP300I-DC 300M无线面板式AP

79元起

TP-LINK 普联 TL-PS110U USB口打印服务器

TP-LINK 普联 TL-PS110U USB口打印服务器

279元起

TP-LINK 普联 TL-SM411SSB-500m 单模单纤SFP光模块

TP-LINK 普联 TL-SM411SSB-500m 单模单纤SFP光模块

162元起
29评论

  • 精彩
  • 最新
  • 这个思路,也可以把ip通过邮件发给自己。
    比访问github稳定

    校验提示文案

    提交
    是的,把ip弄出来的过程,就相当于完成了域名解析成ip。

    校验提示文案

    提交
    收起所有回复
  • 不如ddns

    校验提示文案

    提交
    路由器不支持v6的ddns,并不是不想用。
    只是换了个方式实现了ddns。
    ddns其原理也就是ip变化时,将域名与ip重新绑定。
    我这里的域名就相当于这里的文件下载的api,搭建好通路后,就跟域名无太大区别。
    通过域名请求,只需要请求一次dns,使用起来更方便。
    直接通过ip请求,不绑定域名,被入侵风险会降低,毕竟私有的服务器。

    校验提示文案

    提交
    并不需要你的路由器支持ddns ipv6,只需要你的电脑服务器支持就行了。ipv4的年代,你整个家庭网络对外只有一个ipv4公网地址,所以需要路由器把这个ipv4公网地址上报给ddns服务商,也就是需要路由器支持ipv4 ddns。但是ipv6的年代,你家每一个设备都有各自的ipv6地址,所以需要他们各自将自己的ipv6地址上报给ddns服务商(当然实际上只有需要外网访问的设备需要做这件事),所以只需要这些设备自己支持ipv6 ddns即可,并不需要路由器做这件事(除非你想外网访问你的路由器)

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • ddns ipv6就行了 我就是这样干的

    校验提示文案

    提交
    我的路由器中ddns只支持ipv4,所以无效。

    校验提示文案

    提交
    收起所有回复
  • 你咋这么复杂,我直接打电话客服换公网ip,然后找了个免费的ddns就解决了。就是免费的要一个月确认一次,不过提醒邮件直接发我邮箱,顺手操作一下就行了。

    校验提示文案

    提交
    移动是不给v4公网的,而且目前还是光猫拨号,二级路由拿不到公网ip,你说的方案在我家基本不可行。
    虽然我在外面基本上没访问家里的需求,但折腾的过程,是年轻的一种体现 [傻笑]

    校验提示文案

    提交
    收起所有回复
  • 怎么配置经常变的网关,群晖ddnsipv6可以,但网关没配置好的话,是出不去的

    校验提示文案

    提交
    但运营商2-3天重启猫,地址就变了,写定的几天就用不了

    校验提示文案

    提交
    电脑上安装软件监听ip变化,或者定时查询ip,ip一旦变了就更新上传。

    校验提示文案

    提交
    收起所有回复
  • 何必这么麻烦,找一个可以修改dns解析的python脚本,定时跑,一旦发现外网IP变了就更新域名解析,客户端统一用域名。基本不掉线。

    校验提示文案

    提交
    是麻烦,但对我来说一样。我不想暴露我的ip到域名上。域名申请麻烦,有的要身份证实名。
    我实现的这条通路,对我来说学习的成分大,我自己写个app,请求api拿ip地址,使用复杂度并不高,后期还可以搞其他事情。

    校验提示文案

    提交
    收起所有回复
  • 自己用C#写了一个阿里云的动态域名解析,用的阿里云API,支持ipv4和ipv6解析,同时更新v4和v6的两个ddns,还加了DDNS变更时ServerChan推送的功能,目前最大的问题就是获取自身ip地址的方法不稳定…

    校验提示文案

    提交
  • 一个小米路由器就够了 [邪恶]

    校验提示文案

    提交
  • 看完了,还是给个简单但是贵的方案吧

    校验提示文案

    提交
    1换电信宽带,打电话给客服要公网IP
    2用华硕路由器,自带ddns,送你域名,路由器里就能设置自动更新域名解析

    校验提示文案

    提交
    你好,用华硕这个方案,是否是必须由华硕路由来拨号而不是光猫?感谢

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 技术流看不懂啊

    校验提示文案

    提交
  • 既然能获取ipv6就直接用ipv6的域名不就行了么?

    校验提示文案

    提交
  • zerotier

    校验提示文案

    提交
  • 总结一下:前面一大堆,后面一大堆,核心步骤就几行字,还引用了两篇不清不楚的文章…

    校验提示文案

    提交
  • 刚刚打电话给电信,跟智能语音说了两遍转人工服务后一个小哥接的电话,我就说了家里装监控要用到公网IP,他直接就答应了,让我一分钟后测试下。之前光猫已改桥接,所以路由器直接就是IPv4的公网IP了。坐标浙江宁波

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
挂件

签到钱就到

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
176
扫一下,分享更方便,购买更轻松