V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wniming
V2EX  ›  宽带症候群

不在家时如知道到家里的动态公网 ip 是多少?

  •  1
     
  •   wniming · 108 天前 · 6478 次点击
    这是一个创建于 108 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我知道 ddns 可以,但是 v 站上好几个帖子说因为开了 ddns 导致宽带被停或者被警告的,所以不想用这种方式。

    我只需要能在外面 ssh 连接家里的 linux 就可以了,不需要访问家里的其他服务。

    101 条回复    2023-11-08 00:45:24 +08:00
    1  2  
    ldcr1319
        1
    ldcr1319  
       108 天前
    搞个机器人发消息
    krixaar
        2
    krixaar  
       108 天前
    路由器装个 tailscale 之类的,直接连路由器上看
    v3links
        3
    v3links  
       108 天前
    noip
    ddns-go
    都有客户端
    yaodong0126
        4
    yaodong0126  
       108 天前   ❤️ 1
    我的路由器后台可以直接看到 ip ,但我不认可 ddns 会导致封宽带的说法,完全是无稽之谈
    DataSheep
        5
    DataSheep  
       108 天前 via iPhone
    ddns 不会有问题,不开 http 应该问题都不大
    Fish1024
        6
    Fish1024  
       108 天前
    写个脚本定期访问你的某个 http 服务就行了。
    wniming
        7
    wniming  
    OP
       108 天前
    @yaodong0126 你指的是在外面时通过手机 app 远程访问家里路由器的后台吗?那个牌子路由器有这种功能?
    stinkytofu
        8
    stinkytofu  
       108 天前
    把 ip 解析到二级域名, www 域名最好是一个备过案的站点, 这样绝对没事
    heyenyan
        9
    heyenyan  
       108 天前   ❤️ 2
    cf 上托管一个域名,本地跑个脚本检测到 ip 变化就掉 cf 的 api 更新解析记录。
    已经稳定用了两年了 啥事没有
    wniming
        10
    wniming  
    OP
       108 天前
    @Fish1024 问题是家里的路由器偶尔会重启,所以无法保证动态公网 ip 是不变的
    yaodong0126
        11
    yaodong0126  
       108 天前
    @wniming 是的,据我所知现在很多路由器都可以,我是 linksys 的路由器
    huaseky
        12
    huaseky  
       108 天前
    咸鱼几十块买个网心云盒子? 路由器 V4 地址就知道了,V6 地址是去掉后缀加:1 ,还能赚个宽带钱。。。
    imtflin
        13
    imtflin  
       108 天前
    写一个脚本,定期发邮件,在自己家里的机器上跑这个脚本,之前写过一个:

    https://github.com/tflins/nas-script/blob/master/script/listen-ip/README.md
    Fish1024
        14
    Fish1024  
       108 天前
    @wniming 我说的是在家里任何设备上,定期访问公网上的的 http 服务,这样就可以拿到家里最新的 ip 。
    yaodong0126
        15
    yaodong0126  
       108 天前
    @Fish1024 你思考过你说的方案的可行性吗...你没有固定 ip ,你是靠什么把 http 服务部署在公网的,哥
    shellcodecow
        16
    shellcodecow  
       108 天前
    ddns-go 用 nas docker 定时更新 ip 很稳
    cloudyrs
        17
    cloudyrs  
       108 天前
    在路由器上装一个全能推送( openwrt 可以用),可以选择推送渠道(企业微信、bark 、钉钉等),可以选择定时推送、事件推送(比如检测到路由器重启、IP 变更),但是这个 IP 变更相当于是桥接后如果变化才有用,否则要选择 url 检测公网 ip
    zhf883680
        18
    zhf883680  
       108 天前
    ddns-go +1
    ddns 只是将域名解析更改 怎么可能会导致宽带被停或者被警告
    问题出在你的域名上吧..
    我稳定运行了好久了
    Fish1024
        19
    Fish1024  
       108 天前
    @yaodong0126 这方案的前题就是你有一台公网的服务啊。不论是 vps ,还是 cf workers ,或者写个程序部署在 vercel 都可以。
    Fish1024
        20
    Fish1024  
       108 天前
    @yaodong0126 至于可行性,我用了很久了,所以显然可行。
    yaodong0126
        21
    yaodong0126  
       108 天前
    @Fish1024 显然正常人不会仅仅为了获取 ip ,再搞一台服务器,为了一碟醋包饺子这事不太行
    wljn
        22
    wljn  
       108 天前 via Android
    tg bot 可查可换
    Fish1024
        23
    Fish1024  
       108 天前   ❤️ 3
    @yaodong0126 没有服务器,这种思路也可以用其他方式实现。比如定期 curl ip.sb ,如果结果与上一次不同就发送邮件之类的。
    wuyiccc
        24
    wuyiccc  
       108 天前
    定时请求 https://v6r.ipip.net/?format=callback , 解析请求结果获得公网 ip ,然后发给钉钉机器人
    caotian
        25
    caotian  
       108 天前
    tplink 企业路由器可以注册到 tplink 商用云,然后通过 tplink 的 app 可以实时看到公网 ip
    coolcoffee
        26
    coolcoffee  
       108 天前
    同样是 tplink 企业路由器,我选择的时候直接模拟登录请求后台接口,然后看 LAN 2 的公网 ip 。 因为我的双线,出是非公网,入是公网 ip 。
    pkoukk
        27
    pkoukk  
       108 天前
    打客服电话要一个固定公网 IP
    我本来以为挺难的,结果几个小时就开了
    sadfQED2
        28
    sadfQED2  
       108 天前 via Android
    @pkoukk 你在逗我?固定公网 ip 可以随便要?这玩意企业申请几万块钱一年
    mcluyu
        29
    mcluyu  
       108 天前
    ddns 为啥会被警告啊没太懂, 我没跑任何服务, 只是把 IP 解析上去有啥影响啊,为啥会影响运营商。。。有点扯淡
    Goooooos
        30
    Goooooos  
       108 天前
    ddns ,不开 http 服务没人管
    Conantv2
        31
    Conantv2  
       108 天前
    开个云函数记录 IP ,本地脚本每分钟请求一次就好了。
    nightcc
        32
    nightcc  
       108 天前 via Android
    用 ipv6 ddns ,( ipv4 应该也行)

    如果是 ipv4 ,写个脚本,把 ipv4 放在 ipv6 地址的后 32 位,还可以带个端口号或者其他信息,然后再更新
    如果是 ipv6 ,可以拆成两段用两个子域名
    如果你想,甚至可以设计一套加密算法

    在你的路由上可以定时解析这些子域名,算出真实地址添加进 host
    或者写个脚本算出来,自己添进 host
    pkoukk
        33
    pkoukk  
       108 天前
    @sadfQED2 #28 这不是在说家宽么???家宽和企业宽带一回事?企业宽带 1000M 多少钱一年?家宽才多少钱?
    wuruxu
        34
    wuruxu  
       108 天前 via Android
    ddns 不开 http 和 https , 没人会理你的
    datocp
        35
    datocp  
       108 天前 via Android
    一些特定端口电信想不开就关了,其实家里也没开过 http 就被关了,一刀切多简单。
    然后 openwrt 用最简单的 wget 链接就能更新 ignorelist.com 。内置 softether 带 l2tp/openvpn 随时进内网。
    开服务就算了,有 vps 就用反向连接吧。
    wniming
        36
    wniming  
    OP
       108 天前
    @yaodong0126
    @caotian
    @coolcoffee

    tp link 家用路由器也可以,我是光猫改成桥接模式,用 tp link 的路由器拨号上网,可以在 app 的 ==设置---网络设置--上网设置--上网方式 看到 WAN 口参数 ,其中就包括 wan 口 ip
    zedpass
        37
    zedpass  
       108 天前
    DDNS 一般不会被查吧,不想搞 DDNS 的话,可以写个 shell 脚本放到路由器或者电脑里面,定期 curl cip.cc 获取公网 IP ,然后发给钉钉机器人
    sadfQED2
        38
    sadfQED2  
       108 天前 via Android
    @pkoukk 家宽可以给固定公网 ip ?什么地区,什么运营商?
    serafin
        39
    serafin  
       108 天前
    spacezip
        40
    spacezip  
       108 天前
    linksys h3c 小米 之类的原厂都有吧
    WooodHead
        41
    WooodHead  
       108 天前
    frp
    killva4624
        42
    killva4624  
       108 天前
    写个脚本定时查一下家里的公网 IP ,然后调接口改 DNS 解析。
    你 SSH 的时候连域名就可以了。
    cue
        43
    cue  
       108 天前
    新闻上还有说翻墙被喝茶拘留的呢,你咋还上 V 站?
    gunner168
        44
    gunner168  
       108 天前 via iPhone
    我记得 openwrt 的全能推送或者微信推送插件,ip 地址更换后可以通知你
    Remember
        45
    Remember  
       108 天前
    你路由器上跑个 bash 脚本获取自己的 ip ,然后去 ns 服务商那里更新你的域名就好了,ttl 设置短一点,不开 http 服务,谁会管你呢。
    dude4
        46
    dude4  
       108 天前
    方法很多,除了 DDNS ,我用的是 msmtp+shell script ,在可以运行 cron 的类 linux 设备( openwrt ,盒子等)上开定时任务,隔一段时间判断 IP 是否有变化,发现变了就发邮件。
    SkywalkerJi
        47
    SkywalkerJi  
       108 天前
    @sadfQED2 闷声发大财兄弟,他说出来,又没好处,也不影响你城市有没有啊。
    icaolei
        48
    icaolei  
       108 天前
    什么家宽会封 DDNS
    iceheart
        49
    iceheart  
       108 天前 via Android
    1. 刷域名主机地址
    2. 发邮件
    3. 刷服务器更新
    ferock
        50
    ferock  
       108 天前 via iPhone
    ddns 只是动态 dns 而已,不想用你怎么知道 ip 变了?
    luoshengdu
        51
    luoshengdu  
       107 天前
    @yaodong0126 #4 完全赞同,ddns 封 ip 的,完全瞎扯淡
    agonz
        52
    agonz  
       107 天前
    自己写脚本的话最靠谱,放到软路由或者 nas 上,定时执行。ifconfig 网口,把 ip4 和 ip6 截出来,push 到 cloudflare
    NickX
        53
    NickX  
       107 天前
    DDNS 不会被封宽带,除非你搞 PCDN ,上传流量过大才有可能被封。
    murchef
        54
    murchef  
       107 天前
    ddns 没问题,ip 反向解析成域名工程量很大,肯定是被盯上或 http 这类协议的问题
    你套 vpn 回去这种绝对没问题
    sunzhuo
        55
    sunzhuo  
       107 天前
    ngrok 就是专门用来干这个的。

    ngrok 是一款反向代理工具,能够让你将本地开发的应用程序、Web 服务、数据库等暴露给外网。这通常用于开发阶段,以便于测试和分享你的作品,而不需要部署到公共服务器上。ngrok 的工作原理是通过在本地和 ngrok 服务器之间建立一个安全的隧道,将外部请求转发到本地服务。
    aru
        56
    aru  
       107 天前
    DDNS 会封 IP 的一个可能性:
    现象 1: 云服务器商的会阻止通过未备案的域名访问服务器的 web 服务,但是可以通过云服务器的 IP 来访问 web 服务并不会阻止。通过未备案域名访问非 web 服务并不会被阻止。

    假设家庭开 web 服务也是同样的逻辑,那么通过 DDNS 访问家里的 web 服务是可能导致宽带被停或者被警告。但是通过 DDNS 访问非 web 服务是不会有问题。

    因为 OP 只是用 ssh 访问,只要 OP 的家庭宽带并没有在公网暴露 web 服务,那么可以放心大胆的使用 DDNS 。
    neroxps
        57
    neroxps  
       107 天前 via iPhone
    开了十年 ddns 还没被警告过。
    aulayli
        58
    aulayli  
       107 天前 via Android
    买个带 app 管理的路由器就行了,在哪都能看到家里网络情况。
    Alienswj
        59
    Alienswj  
       107 天前 via Android
    最近刚好在搞,用了阿里域名解析服务,家里路由器挂了 ddns 服务,修改域名解析自动发邮件给你说 IP 从啥换成啥了
    kaedeair
        60
    kaedeair  
       107 天前   ❤️ 1
    看 pt 的 tracker 上报 ip
    YsHaNg
        61
    YsHaNg  
       107 天前
    @wniming 网件都有
    duduke
        62
    duduke  
       107 天前 via iPhone
    我用 natmap 打洞,然后执行脚本生成一个小火箭订阅文件,通过 cftunnel 转发出来,更新订阅即可
    HAWCat
        63
    HAWCat  
       107 天前
    @sadfQED2 #38 北京联通 加钱可开固定公网 IP 业务
    PRStarDust
        64
    PRStarDust  
       107 天前
    手机有 ipv6 ,家宽也有 ipv6 ,直接 tailscale ,速度很快
    zliea
        65
    zliea  
       107 天前
    写了一个同步 IP 到服务器的程序
    https://github.com/za-zliea/go-dyip
    DIO
        66
    DIO  
       107 天前
    内网穿透这家还行,白嫖很久了(,只是 linux 终端应该免费够用
    https://www.happyn.cn/
    smallYear
        67
    smallYear  
       107 天前
    电脑装个远程控制软件,一直开着。远程电脑就能查到 ip 了
    ZeroKong
        68
    ZeroKong  
       107 天前
    curl cip.cc
    yunyuyuan
        69
    yunyuyuan  
       107 天前
    写个脚本,定时把 ip 地址更新到 gist 里
    ily433664
        70
    ily433664  
       107 天前
    ddns 没问题,有问题的是开了 http
    ddns+openvpn 用了一年多没啥问题
    ShundL
        71
    ShundL  
       107 天前
    我是写了个定时任务,定时请求外网一个地址, 在这个页面里会获取访客 IP ,也就是你路由器 IP ,然后记录下来就行了。。。
    blankmiss
        72
    blankmiss  
       107 天前
    ddns please
    journalist
        73
    journalist  
       107 天前
    高端口开 http 也没问题,除非你流量很大
    pkoukk
        74
    pkoukk  
       107 天前
    @sadfQED2 #38 百度搜索 地区+运营商+公网 IP 关键词,参照网友经验申请。江苏电信和江苏联通我都申请到了。
    wineast
        75
    wineast  
       107 天前
    我和 OP 有同样的问题,之前的解决方案:
    在家里 windows 上写了一个定时的 python 脚本:访问外网的某个网址,获取外网 ip 地址,然后如果发现和本地磁盘上保存的 ip 不一样,就发送到自己的 qq 邮箱,然后更新本地磁盘上的 ip 地址.txt 文件。效果很好,一直在用。
    baidu 一下“python 获取外网 ip”,可以获取好几个提供外网 ip json 格式的网站,然后可以几个轮询着访问,免得其中一个网址挂掉

    这个脚本到今年就不用了,原因是买了个小米路由器,用了 ddns
    tool2d
        76
    tool2d  
       107 天前
    我用最笨的办法,写个脚本一小时 ping 一下外网。
    newbeelity
        77
    newbeelity  
       107 天前
    使用家中网络跑个脚本,比如每 5 分钟跑一次
    1.curl ifconfig.io 拿到出口 IP
    2.通过接口更改对应域名的 A 记录,比如 ssh.yourdomain.com
    3.你通过域名连接 ssh.yourdomain.com
    wineast
        78
    wineast  
       107 天前
    不知道怎么修改原帖,把自己的脚本分享一下把

    https://github.com/wineast/manuall-dns/blob/main/ip2.py
    wanwaneryide
        79
    wanwaneryide  
       107 天前
    @wniming #7 我用的京东云的路由器可以,顺便赚个电费。
    tuwulin365
        80
    tuwulin365  
       107 天前
    向日葵远程看下呗
    sadfQED2
        81
    sadfQED2  
       107 天前 via Android
    @pkoukk 公网 ip 和固定公网 ip 完全是两码事,公网 ip 可以有话术要到,但是固定 ip 我不信能要到。
    clikes
        82
    clikes  
       107 天前
    @Fish1024 #23 老哥说得好,多动动脑子问题总能解决
    Tamamopoi
        83
    Tamamopoi  
       107 天前
    我是用的 curl 4.ipw.cn ,获取 ipv6 地址 6.ipw.cn
    后续用 curl 把这个 ip 丢出来,甚至可以用 server 酱把 IP 发到自己微信上。
    scguanzhong
        84
    scguanzhong  
       107 天前
    DDNS 用了好多年了,会被谁警告?电信?
    opengps
        85
    opengps  
       107 天前
    我用的京东路由器,直接 app 可以看到外网 ip ,之前我都是写了个程序主动往我服务器上上报信息才能知道 ip
    lipcao
        86
    lipcao  
       107 天前
    城域网是啥玩意,和公网 IP 一样吗?
    pkoukk
        87
    pkoukk  
       107 天前
    @sadfQED2 #81 爱信不信 我骗你有钱花一样
    brader
        88
    brader  
       107 天前
    你家里不是有台 linux 吗,你写个脚本,定时获取 ip ,发现变化了,就上报到服务端
    killerv
        89
    killerv  
       107 天前
    @pkoukk 你确定是固定 ip 吗?家宽我没见到过固定 ip 的,商宽的核心卖点就是固定 ip 。
    JamesR
        90
    JamesR  
       107 天前
    我是 Github 上面找了个软件,每 15 分钟通过接口获取 IP ,变化就发邮件,问题解决,用了多年无问题。
    项目地址: https://github.com/pupi1985/IPMonitor
    IP 接口地址: http://checkip.amazonaws.com

    还有一种方法更简单,就是有一台闲置服务器,配个 Frp 就行了,一劳永逸。
    yougg
        91
    yougg  
       107 天前
    没人正经回答 OP 的问题, 虽然我也一直用 ddns, 但是难免遇到意外情况
    ddns 的 token 过期了
    noip 到期忘记续域名了
    ddns 服务商跑路了
    家里掉电重启路由硬盘没挂载上跑不了 ddns 脚本
    硬盘没挂上导致跑的内网穿透工具都跑不了
    等等等等, 这些情况都遇到过

    但是路由器还在 run, 动态公网 IP 还在, ssh 22 端口还能通
    从内部上报自己公网 IP 的方式都不行的时候
    那就应该从外部反过来探测啊

    一般情况动态公网 IP 会在固定的 CIDR 段中变化
    比如: 12.34.56.78/24

    nmap -p 22 12.34.56.0/24
    扫出来的结果再逐个 ssh 登录尝试就好了
    写个脚本跑一下随时都能拯救意外跪了的 ddns
    wowawesome
        92
    wowawesome  
       107 天前
    你家里都挂着 Linux 了,我不信你搞不定
    pkoukk
        93
    pkoukk  
       107 天前
    @killerv #86 家宽肯定是不会承诺不变的啊,但是我目前用的这个已经跑了大半年没变了。申请的时候告诉他我要装监控用的,所以理论上它不会随意变的啊,不然又要收投诉了。
    yaott2020
        94
    yaott2020  
       107 天前 via Android
    别用 a/aaaa 记录,改用 txt ?
    killerv
        95
    killerv  
       107 天前
    @pkoukk 真好,我家宽里面设备的 ipv6 都经常变……
    oNuGrInDiNg
        96
    oNuGrInDiNg  
       107 天前
    cloudflare ddns
    nekoneko
        97
    nekoneko  
       107 天前
    curl https://api.ipify.org

    DDNS 不会被封

    我是 cron 搞个脚本, 每 5 分钟更新一次 cf 的 dns 解析
    liaoliaojun
        98
    liaoliaojun  
       107 天前
    小米路由器原厂自带功能,无论是否重启更换,手机都可远程查看 ip
    doyel
        99
    doyel  
       107 天前
    10 多年前写了个小程序去跑 curl 某个显示本机 IP 的网页然后截取 IP 部分,和存在本地的上次的 IP 比较,如果不一样,给自己发个邮件。。。
    YamatoRyou
        100
    YamatoRyou  
       107 天前
    路由器上执行一些脚本发送到邮箱相对靠谱 (2017 至今很稳, 收件箱攒了当时至今的所有邮件).
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2923 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 14:39 · PVG 22:39 · LAX 06:39 · JFK 09:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.