首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
V2EX  ›  Linux

Linux 下不能 ping 带 http 的网站吗?

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

    各位好!我对网络真的不了解,今天用校园网sudo apt-get update发现清华的镜像源https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/dists/trusty/Release无法更新,ping 了一下显示:

    [email protected]:~$ ping https://mirrors.tuna.tsinghua.edu.cn/
    ping: unknown host https://mirrors.tuna.tsinghua.edu.cn/
    

    但是在浏览器里面是可以访问的.然后我又试了一下ping www.baidu.com能通,ping http://www.baidu.com就不能通,显示 unknown host,请教一下为什么?以及怎么才能在 apt 里更新清华软件源列表?

    PS:百度了一下感觉是 dns 的问题,netstat -rn的结果是

    [email protected]:~$ netstat -rn
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    0.0.0.0         111.186.100.254 0.0.0.0         UG        0 0          0 eth0
    111.186.100.0   0.0.0.0         255.255.255.0   U         0 0          0 eth0
    

    怎么设置这个解析呢?

    27 回复  |  直到 2019-06-15 10:56:52 +08:00
        1
    Danswerme   131 天前 via Android   ♥ 1
    ping 的主机参数不能包含协议
        2
    omph   131 天前   ♥ 1
    ping 的是域名,不是 url 啊
        3
    ysc3839   131 天前   ♥ 3
    ping 是 ICMP 协议的,HTTP 是 TCP 协议的,你要 ping HTTP 的话需要 tcp ping。
        4
    dkmilan   131 天前   ♥ 2
    同学你需要补一下网络模型
        5
    pkookp8   130 天前 via Android   ♥ 1
    两个协议都不在同一层
        6
    lzhnull   130 天前 via Android   ♥ 5
    这位同学,有空发帖,不如谷歌下
        7
    leavic   130 天前   ♥ 2
    这锅要 linux 来背吗?一个连 netstat 都会用的人不会用 ping 我也是无语了。
        8
    Hardrain   130 天前   ♥ 1
    你 ping 的是主机,域名解析到主机的 IP
    ping 走的是 ICMP 协议,不是 HTTP/HTTPS

    你的情况估计是从某些浏览器里复制域名,会带上开头的 http(s)://
    如果主机的 http/https 服务器用了非标准端口号
    ping 的时候端口号也要去掉
        9
    HeiXiaoBai   130 天前 via Android
        10
    opengps   130 天前 via Android
    ping 是 icmp 协议。http 是 7 层的 http 或者说对 4 层 tcp 协议的封装
        11
    Jirajine   130 天前 via Android
    这边建议发帖前先 STFW 呢,你这标题 Google 一下就有答案了,何必写这么多
        12
    mango88   130 天前
    这位同学 怕是对 url 构成有什么误解
        13
    ChristopherWu   130 天前   ♥ 8
    大家不要随便喷,unknow unknown,很多人也不知道这个知识点呢,何况人家都说了对网络不了解了。


    ping 是 ICMP 协议,发的是 ICMP 包,跟 HTTP 协议层无关,是直接发到 ip 上的,也就是说域名也可以。
    `ping: unknown host https://mirrors.tuna.tsinghua.edu.cn/` 说是 unknown host 就是因为他尝试去用 dns 查询你给出的 https://mirrors.tuna.tsinghua.edu.cn/ 这个东西,发现查询不了。


    http://xx.com 则是 http 协议定义的 url, 用的是 http 协议,发送跟接收都是 http 包。
        14
    CEBBCAT   130 天前 via Android   ♥ 4
    这个问题非常好,虽然简单了点,但是描述清晰,态度端正。

    关于为什么不能 ping,你可以参考一下 man ping,这个手册非常详尽,换而言之你需要 ping 本身就是接域名或者 IP 的。不知道哪位误导了你,让你以为 ping 可以带 HTTP 的。

    关于更新清华源列表,不仅清华源官网就有指导,中英两界也都有很多教程。

    期待你下次的提问
        15
    KasuganoSoras   130 天前
    如果你要测试一个网站是否能连通,最好的方法就是 curl
    试下 curl "网站地址"
    查看 Header 信息可以用 curl -I "网站地址"
    如果你要测试 ping 延迟,就把主机名单独拿出来 ping
    例如网站地址是 https://mirrors.tuna.tsinghua.edu.cn/ ,主机名就是 mirrors.tuna.tsinghua.edu.cn
    你就 ping mirrors.tuna.tsinghua.edu.cn 就好了。
        16
    clino   130 天前 via Android
    是说 windows 或 mac 下可以咯?
        17
    unknowncheater   130 天前
    Dns 能解析帶 http/https 頭的域名?還沒見過
        18
    whwq2012   130 天前 via Android
    了解下域名和 url 组成的知识就很容易理解的。
    几年以后你回来看自己问的这个问题一定会想骂自己白痴,哈哈。
        19
    oneisall8955   130 天前 via Android
    @CEBBCAT 很理性了
        20
    presoul   130 天前 via Android
    楼主态度挺好的 想测试 http 或者 https
    可以用 tcping 工具 对应的 80 和 443 端口
        21
    chinawrj   130 天前
    一时间我都不知道该怎么回答。lz 似乎很懂,又似乎什么都不懂。先搞清楚如下概念吧:ICMP\DNS\HTTP
        22
    sazima   130 天前
    telnet google.com 443
        23
    sazima   130 天前
        24
    darknoll   130 天前
        25
    plasmetoz   130 天前
    linux 下测试 http/tcp 可以用[paping]( https://code.google.com/archive/p/paping/)
        26
    Valid   130 天前
    在 windows 下难道就可以??
        27
    exip   126 天前 via Android
    在 macOS 下难道就可以?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2230 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 30ms · UTC 14:58 · PVG 22:58 · LAX 07:58 · JFK 10:58
    ♥ Do have faith in what you're doing.