V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Michae1Gt
V2EX  ›  问与答

关于树莓派外网访问的问题(准确的说是 DDNS 解析问题)求大神指教

  •  
  •   Michae1Gt · 2018-05-31 16:21:00 +08:00 · 4643 次点击
    这是一个创建于 2401 天前的主题,其中的信息可能已经有所发展或是发生改变。
    家里有台树莓派,跑 seafile 个人网盘,同步一些工作资料、还有一个家庭媒体中心(存点电影什么的,家里几个电机都可以随时看)...需要外网访问(有公网 IP,投诉了 N 次 争取来的。)现在问题来了:

    一台 ASUS 路由,刷了梅林,装了 阿里 DNS 和 DNSPOD 解析插件,两者都能用,现在用的 DNSpod 解析,然后通过路由器转发到树莓派。但是时常出现路由定时重启后就无法解析的情况,需要通过华硕自带的 asuscomm.com 的 DDNS 重启路由。这种情况经常频繁出现,很烦恼,梅林也是刷了好多版本,没能解决,只能由原来的每天重启,改成两天重启一次。不知道是梅林固件的问题,还是 DNSPOD 解析脚本的问题。

    想解决这个问题,有几个想法,

    第一,换阿里 DNS,疑问:如果是梅林的问题,可能还会出现。
    第二,树莓派连接光猫, 通过 pppoe 拨号,然后用 脚本 解析到域名,如果是 梅林的问题,则可以解决。但是,家庭媒体中心无法使用。同时树莓派直接暴露,需要设置防火墙。。。

    我不是学计算机的,代码层的东西基本不懂,最多也就百度别人做好的脚本。

    这两种方案,请问懂行的大神,哪一种方案更稳定? 有什么其他的需要特别注意的?
    还希望懂的哥们指导一二,多谢。

    PS:花生壳内网穿透,也可以用,但是流量是问题,同步量比较大,放弃了。
    16 条回复    2018-06-01 09:21:20 +08:00
    xavierskip
        1
    xavierskip  
       2018-05-31 16:46:50 +08:00
    路由器为什么需要重启?
    magic3584
        2
    magic3584  
       2018-05-31 16:47:58 +08:00
    frp 就行了,不需要公网 IP
    Michae1Gt
        3
    Michae1Gt  
    OP
       2018-05-31 16:56:56 +08:00
    @xavierskip 因为电信拨号会定期刷新 IP,重启是想在指定时间(比如夜里)强制刷新 IP,避免游戏过程中更换 IP,导致掉线
    Michae1Gt
        4
    Michae1Gt  
    OP
       2018-05-31 16:59:31 +08:00
    @magic3584 frp 属于内网穿透吧,经过别的服务器 延迟 带宽什么的 哪有直接 DDNS 好。。。
    xavierskip
        5
    xavierskip  
       2018-05-31 17:14:46 +08:00
    难道不是光猫桥接,路由器拨号。重启路由器这个真的想不通。我们这里电信是 10 天更换一次 IP,非常准时(因为自己写了个工具)。
    Michae1Gt
        6
    Michae1Gt  
    OP
       2018-05-31 17:30:19 +08:00
    @xavierskip 是光猫桥接,路由器拨号。遇到过几次晚上 7 点多,在玩游戏的时候出现断网,然后咨询电信技术人员,告知这边 48 小时左右 刷新 ip,会出现断网, 建议我夜间定时重启路由,可以防止 48 小时 刷新 ip。我想想 没毛病,就照着做了。。。
    Tink
        7
    Tink  
       2018-05-31 17:58:03 +08:00 via iPhone
    无法理解,为什么不用树莓派 cron 定时更新 ddns ? pppoe 拨号继续用路由器
    kaixuan1901
        8
    kaixuan1901  
       2018-05-31 21:44:48 +08:00
    DNSPOD 有 API 可以直接使用: https://www.dnspod.cn/docs/records.html#dns
    waittoo
        9
    waittoo  
       2018-05-31 23:17:17 +08:00 via iPhone
    @Tink 请教,你是说树莓继续放在路由下,然后 DDNS? 那获取的 ip 不是局域网 ip 么?有没有相关教程,我确实不是很懂
    gy911201
        10
    gy911201  
       2018-05-31 23:32:52 +08:00
    我直接把自己的域名 CNAME 到 asuscomm.com 的那个 DDNS 上了……简单粗暴,很好用…………除了会暴露出来我用的是华硕的路由器以外……………………
    ysc3839
        11
    ysc3839  
       2018-05-31 23:37:32 +08:00 via Android
    请问一下你说的“无法解析”是什么问题?
    Tink
        12
    Tink  
       2018-05-31 23:45:33 +08:00 via iPhone
    @waittoo #9 你为什么觉得会获取的是局域网 ip ?自己试一下

    https://i.loli.net/2018/05/31/5b101882f2327.png
    boogiefer
        13
    boogiefer  
       2018-06-01 00:42:52 +08:00 via Android   ❤️ 1
    我是在树莓派上定时更新域名解析,工作快六年了,一直很稳定。
    mritd
        14
    mritd  
       2018-06-01 01:27:16 +08:00 via iPhone
    树莓派写个小脚本就行了,国内头很多拿到自己 ip 的网站,比如 curl myip.ipip.net
    Remember
        15
    Remember  
       2018-06-01 02:00:08 +08:00
    网络不用动,树莓派跑一个 ddns 脚本就好了
    DT27
        16
    DT27  
       2018-06-01 09:21:20 +08:00
    DNSPOD Python2 脚本( dnspod 官方的脚本运行后自己每 30 监测一次):
    https://gist.github.com/chuangbo/833369


    CloudXNS Python2 脚本(这个是我自用的,树莓派专用,放到 crontab 里自己设置时间执行):
    https://github.com/DT27/myPi/blob/master/pushIp.py
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4743 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 04:01 · PVG 12:01 · LAX 20:01 · JFK 23:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.