wbzd
V2EX  ›  问与答

一个 IP 绑定了多个域名,如何在使用 IP 访问网站时带上 SNI 信息?

  •  1
     
  •   wbzd · Dec 30, 2022 · 2043 views
    This topic created in 1232 days ago, the information mentioned may be changed or developed.

    如题,如果问题问得不专业也稍微理解下......就是说,通过 IP 访问一个只有一个 IP 的,运行了几个网站的服务器上的特定网站。

    10 replies    2023-01-02 19:52:27 +08:00
    wbzd
        1
    wbzd  
    OP
       Dec 30, 2022 via Android
    哦,对了,网站的端口号都相同。
    ZeroClover
        2
    ZeroClover  
       Dec 30, 2022   ❤️ 1
    cURL 用 --resolve 参数

    其他的请自行参考各语言 HTTP 库实现
    WebKit
        3
    WebKit  
       Dec 30, 2022 via Android   ❤️ 1
    nginx 有个 default_server 不知道是不是你说的?访问特定网站
    Argon
        4
    Argon  
       Dec 30, 2022 via Android
    你可以通过修改 /etc/hosts 文件,将域名指向相应的 IP 地址,然后 curl https://这个.网址 ,而更简单的做法就是楼上说的那样,通过参数指定解析结果。
    wbzd
        5
    wbzd  
    OP
       Dec 31, 2022 via Android
    嗯......不是指定默认站点。
    wbzd
        6
    wbzd  
    OP
       Dec 31, 2022 via Android
    比如,123.123.123.123 被 1.example.com, 2.example 和 3.example 绑定,如何用 IP 访问,并指定打开的网站??
    serafin
        7
    serafin  
       Dec 31, 2022   ❤️ 1
    julyclyde
        8
    julyclyde  
       Jan 2, 2023
    @ZeroClover resolve 是强制覆盖 DNS 的,不管 SNI 吧
    ZeroClover
        9
    ZeroClover  
       Jan 2, 2023
    @julyclyde 覆盖 DNS 的同时也能指定 SNI ,自己试一试再说

    curl --resolve domain.tld:443:<IP> https://<IP>/
    julyclyde
        10
    julyclyde  
       Jan 2, 2023
    @ZeroClover 试过了,没有
    tcpdump 为证,curl --resolve 和 openssl s_client -servername 的行为不一致,openssl 的有 SNI
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2553 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 16:05 · PVG 00:05 · LAX 09:05 · JFK 12:05
    ♥ Do have faith in what you're doing.