There is no place like ::1
elboble
V2EX  ›  IPv6

不懂就问,像 IP138 这样的网站如何同时获得访问者的 ipv4 和 ipv6?

  •  
  •   elboble · Aug 10, 2024 · 3766 views
  •   You need to sign in to view this topic
    This topic created in 748 days ago, the information mentioned may be changed or developed.

    电脑是双栈的情况下,ipv6 优先使用,但是 ip138 能同时获得 ipv4 ,怎么做到的

    13 replies    2025-02-07 20:06:19 +08:00
    totoro625
        1
    totoro625  
       Aug 10, 2024
    多弄几个子域名,其中一个只解析 ipv4
    gentrydeng
        2
    gentrydeng  
       Aug 10, 2024 via Android
    0o0O0o0O0o
        3
    0o0O0o0O0o  
       Aug 10, 2024
    同 #1

    另外我觉得更稳妥的办法是给 IPv4 申请个证书,例如 https://1.12.12.12/
    julyclyde
        4
    julyclyde  
       Aug 11, 2024
    @0o0O0o0O0o 这事和证书有啥关系啊?
    yinmin
        5
    yinmin  
       Aug 11, 2024 via iPhone   ❤️ 1
    ajax 到一个子站仅部署 ipv6
    0o0O0o0O0o
        6
    0o0O0o0O0o  
       Aug 11, 2024
    @julyclyde #4

    1. 我认为这个需求比较稳妥的办法是干脆跳过解析这一步,即直接访问 IPv4/IPv6
    2. 2024 年提供服务却没有 HTTPS 保护是 **绝不应该的**,所以要给 IP 申请证书
    elboble
        7
    elboble  
    OP
       Aug 11, 2024
    @yinmin 嗯,准备这么实现。
    julyclyde
        8
    julyclyde  
       Aug 11, 2024
    @0o0O0o0O0o 没有 HTTPS 不应该,和给 IP 申请证书有啥关系?你要杜绝域名访问?
    0o0O0o0O0o
        9
    0o0O0o0O0o  
       Aug 11, 2024 via iPhone
    @julyclyde #8

    需求是一个查 IP 的网站,没办法自定义解析,那么 API 用域名就会增加对解析服务的依赖。例如有的人会在 adguardhome 里屏蔽掉 AAAA ,而实际上设备有 IPv6 。所以直接用 IP 当 hostname 的 API 可以去掉这层依赖。
    julyclyde
        10
    julyclyde  
       Aug 11, 2024
    @0o0O0o0O0o 如果屏蔽掉 AAAA ,那就可以判定为这个客户端没有 v6 能力啊
    难道还有人手工输入 v6 地址访问网站么?
    0o0O0o0O0o
        11
    0o0O0o0O0o  
       Aug 11, 2024 via iPhone
    @julyclyde 不赞同,举例一个场景:一个用户配置或者被迫配置了奇怪的 DNS 导致 AAAA 被丢弃,但一些 APP 又会有内置的解析,导致用户可能在意识不到的情况下依然在使用 IPv6 访问,而当用户使用这样的查询 IP 的网页服务时,我的方案可以消除掉这类影响,覆盖更多场景
    miwang
        12
    miwang  
       Feb 7, 2025
    我自己曾经做了一个查手机 IP 的站,但是也是无法同时获取 IPV4 和 V6 ,每次只能获取一种,要么 IPv4 ,要么 IPv6
    https://myphoneip.org
    elboble
        13
    elboble  
    OP
       Feb 7, 2025
    和上面说的方法一样,准备两个后台服务,一个只接收 ipv4 访问,另一个只接收 ipv6 访问,前端分别请求,就能同时获得 v4 ,v6 了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2539 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 15:46 · PVG 23:46 · LAX 08:46 · JFK 11:46
    ♥ Do have faith in what you're doing.