ip 检测网站判 IP 的方法是什么? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
lirau
V2EX    程序员

ip 检测网站判 IP 的方法是什么?

  •  
  •   lirau
    ray007great 2015-04-04 13:52:29 +08:00 7717 次点击
    这是一个创建于 3867 天前的主题,其中的信息可能已经有所发展或是发生改变。

    挂了vpn后,更改自己路由(国内线路强制走国内)。
    www.ip138.com和www.ip.cn测试ip,前者变为国内ip(电信运营商分配的),后者依然是国外(vpn商自己的ip)。
    然后就忽然思考着检测网站的运作原理了,是什么原理?
    v2ex检测我的ip是电信运营商提供的ip。

    42 条回复    2015-04-08 01:34:12 +08:00
    extreme
        1
    extreme  
       2015-04-04 14:09:07 +08:00   1
    目标服务器所获取到的IP是直接与目标HTTP服务器进行TCP通讯的IP。

    太抽象?

    A寄信给B,说想了解一些东西,于是在信封的发件人处写上了自己的地址,收件人处写上了B的地址。
    B收到信后,写好了回复的内容,在信封收件人处写上A的地址,发件人处写上自己的地址。
    最后A收到了B的回信,得到了自己想要的东西。

    A寄信给C,但怕C知道自己的地址,可是又想收到回复,于是找了一个负责转发信件的D,在信件上写了说想了解一些东西,附带C的地址和自己的地址,把信件发送给D,D在信封的发件人处写上了D的地址,收件人处写上了C的地址。
    C收到信后,写好了回复的内容,在信封收件人处写上了D的地址,发件人处写上自己的地址。
    D收到了C的回信,然后把信寄到了A的地址,最后A得到了自己想要的东西。
    surftheair
        2
    surftheair  
       2015-04-04 14:23:57 +08:00
    你路由的问题吧,可能这个网站的IP你正好设到国内的路由了
    lirau
        3
    lirau  
    OP
       2015-04-04 14:24:02 +08:00
    @extreme 就是自己发送的http请求的数据包里有自己的IP地址吗。那通过VPN后这个地址有被更改吗?2个网站的测试结果不同说明有一个是用了更科学的检测方法吗
    lirau
        4
    lirau  
    OP
       2015-04-04 14:26:49 +08:00
    @surftheair 就是您认为2个网站的测试方法应该是一样的了。不是很懂路由。是通过我的http请求里写的IP测试的吗,那为什么路由能影响检测结果?请求不应该是浏览器包装然后发送的,为什么还跟以后要走的线路有关?
    surftheair
        5
    surftheair  
       2015-04-04 14:29:57 +08:00
    @lirau 都是一样的。我的意思是,你不是设置了不同的IP走不同的路由么?可能是你这两个IP走的路由不一样。你看一下route print,或者tracert一下检测服务器的IP,看看走的哪条路由。
    NeoAtlantis
        6
    NeoAtlantis  
       2015-04-04 14:39:13 +08:00
    有个东西叫TCP协议吧。。。

    v2ex难道是这样的社区了么……
    fems
        7
    fems  
       2015-04-04 15:04:29 +08:00   1
    @lirau 走国内还是国外路由,要看你的DNS返回对应网站的IP地址是国内还是国外IP,前者貌似都是国内IP,后者我这里是日本linode的IP23.239.1.72 li679-72.members.linode.com
    jerryjhou
        8
    jerryjhou  
       2015-04-04 15:16:08 +08:00 via iPad   1
    没一个说到点上的
    IP.cn在新加坡OAH有一台服务器,你的DNS成了国外的,所以解析出的IP是新加坡的。
    根据路由表,新加坡IP还是会走VPN,所以你就只能看到VPN的IP
    Showfom
        9
    Showfom  
    PRO
       2015-04-04 15:21:29 +08:00 via iPhone
    ip.cn 由国外节点,所以你DNS不是国内的时候就解析到国外节点了,正常的
    Showfom
        10
    Showfom  
    PRO
       2015-04-04 15:22:27 +08:00 via iPhone
    @jerryjhou 是的。。。看上面的人没自己去考察九在讨论了也是无语
    omi4399
        11
    omi4399  
       2015-04-04 15:55:21 +08:00
    IP.cn在国外有服务器啊,路由表里把他判定为国外线路了,于是你就翻墙啦
    bobopu
        12
    bobopu  
       2015-04-04 18:01:04 +08:00 via iPhone
    @Showfom
    @omi4399
    @jerryjhou ip.cn和ip138.com哪个访问量大,哪个准确?
    Showfom
        13
    Showfom  
    PRO
       2015-04-04 18:30:46 +08:00 via iPhone   1
    @bobopu 都不准确,最准确的是 @gaochunhui 老师做的 ipip.net
    KexyBiscuit
        14
    KexyBiscuit  
       2015-04-04 19:06:50 +08:00 via Android
    xieyudi1990
        15
    xieyudi1990  
       2015-04-04 21:19:04 +08:00 via iPhone
    不是在TCP里, 而是在IP头里有一个源IP的字段. 是靠那个检测的.

    写过协议栈的路过.
    bobopu
        16
    bobopu  
       2015-04-04 21:26:39 +08:00 via iPhone
    @Showfom 我说这两个哪个访问量大
    Showfom
        17
    Showfom  
    PRO
       2015-04-04 21:50:43 +08:00
    @bobopu 想也不用想,小白都用 ip138 这个是最不专业的 IP 查询网站,不信的话,你在终端下对比

    curl ipip.net
    curl ip.cn
    curl ip138.com
    ryd994
        18
    ryd994  
       2015-04-04 23:59:27 +08:00 via Android   1
    书读得太少,想得太多。
    好好学个网络入门,就全懂了
    geeti
        19
    geeti  
       2015-04-05 01:41:10 +08:00
    你路由设置有问题。
    把你的路由表发上来看看
    sNullp
        20
    sNullp  
       2015-04-05 04:07:28 +08:00
    @Showfom curl 了这三个网站,然后呢?
    geeti
        21
    geeti  
       2015-04-05 10:40:15 +08:00
    @sNullp 他本意是想通过curl来直观的看这几个网站给你展示的ip,但这几个网站的域名都不支持curl直接返回IP。
    比如curl curlmyip.com 就可以。
    geeti
        22
    geeti  
       2015-04-05 10:41:36 +08:00
    @sNullp 错了。是说前两个都可以curl出直观的ip,而ip138很烂,给你返回的是html源代码
    sNullp
        23
    sNullp  
       2015-04-05 10:41:45 +08:00
    @geeti 哦原来是这个意思。
    curl返回 ip 我一般用 ifconfig.me
    geeti
        24
    geeti  
       2015-04-05 10:42:50 +08:00
    @sNullp ifconfig.me很慢啊
    sNullp
        25
    sNullp  
       2015-04-05 10:43:07 +08:00
    @geeti 这只能说明 ip138 没有对 curl 的 UA 做特殊处理。。。当然他数据库是很烂,但是刚才还以为他的意思是靠 curl 就能得到数据库的大小。
    sNullp
        26
    sNullp  
       2015-04-05 10:44:38 +08:00
    @geeti 追求速度的话我用 ip.appspot.com
    mingyun
        27
    mingyun  
       2015-04-05 10:52:18 +08:00
    geeti
        28
    geeti  
       2015-04-05 10:58:19 +08:00
    @sNullp 这个好,google的必须首选
    wdlth
        29
    wdlth  
       2015-04-05 11:41:43 +08:00
    http://whatismyip.akamai.com/
    我用的是这个……
    bdnet
        30
    bdnet  
       2015-04-05 11:55:33 +08:00
    Web服务器会获取Request的IP,至于线路经过了几层,线路不同,都会影响web服务器拿的的ip。
    cnbeining
        31
    cnbeining  
       2015-04-05 12:39:52 +08:00
    不同站的方法还真可能不一样。

    例如:

    schezuk
        32
    schezuk  
       2015-04-05 13:28:43 +08:00   1
    discuz的办法https://github.com/Discuz-X/DiscuzX/blob/Common/uc_client/model/base.php

    function init_var() {
    $this->time = time();
    $cip = getenv('HTTP_CLIENT_IP');
    $xip = getenv('HTTP_X_FORWARDED_FOR');
    $rip = getenv('REMOTE_ADDR');
    $srip = $_SERVER['REMOTE_ADDR'];
    if($cip && strcasecmp($cip, 'unknown')) {
    $this->Onlineip= $cip;
    } elseif($xip && strcasecmp($xip, 'unknown')) {
    $this->Onlineip= $xip;
    } elseif($rip && strcasecmp($rip, 'unknown')) {
    $this->Onlineip= $rip;
    } elseif($srip && strcasecmp($srip, 'unknown')) {
    $this->Onlineip= $srip;
    }
    preg_match("/[\d\.]{7,15}/", $this->onlineip, $match);
    $this->Onlineip= $match[0] ? $match[0] : 'unknown';
    $this->app['appid'] = UC_APPID;
    }
    loveminds
        33
    loveminds  
       2015-04-05 14:35:07 +08:00
    @Showfom CZ88现在也还行了,我长期在给他们更新大量数据
    loveminds
        34
    loveminds  
       2015-04-05 14:43:41 +08:00
    @cnbeining 你这个是自己设置的PTR?
    @Showfom 我提交的准确度还行吧 基本上都能到楼
    香港 星步互联数据中心(上环文咸西街59-67号金日集团中心2层)
    香港 亚洲数据有限公司(青山公路491号嘉力工业中心)
    香港互联虚拟化有限公司数据中心(九龙新蒲岗大有街31号善美工业大厦1604室)
    北京互联互通科技有限公司兆维IDC机房(朝阳区酒仙桥路6号院1号楼)
    msg7086
        35
    msg7086  
       2015-04-05 16:33:59 +08:00
    @cnbeining 贝宁叔又在乱玩PTR了。不考虑用一下 gfw.red 后缀么→_→
    paulgao
        36
    paulgao  
       2015-04-05 20:18:29 +08:00
    以 PHP 为例,IPIP.NET 的客户端 IP 目前以 REMOTE_ADDR 为准了。HTTP_X_FORWARDED_FOR 实在是不敢信任了,尤其在中国这种小运营商乱搞的情况下。
    Showfom
        37
    Showfom  
    PRO
       2015-04-05 23:07:23 +08:00 via iPhone
    @loveminds 么么哒
    loveminds
        38
    loveminds  
       2015-04-06 12:19:01 +08:00
    @bobopu 123cha比较大
    loveminds
        39
    loveminds  
       2015-04-06 13:05:55 +08:00
    @msg7086 他们什么地方可以自己玩儿PTR呢,美国?
    msg7086
        40
    msg7086  
       2015-04-06 18:44:11 +08:00 via iPhone
    @loveminds 有些商家设ptr不查正向解析,很容易被玩坏…
    loveminds
        41
    loveminds  
       2015-04-07 14:14:12 +08:00
    @msg7086 我记得设过,香港某机房
    xxx.hosted.by.yvonne.lu
    paulgao
        42
    paulgao  
       2015-04-08 01:34:12 +08:00
    @loveminds 不知道你的数据都是从哪里来的?愿意不愿意分享一下呢?:)
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     997 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 19:31 PVG 03:31 LAX 11:31 JFK 14:31
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86