如何通过一个命令知道您的公共IP

erjaimer的博客 是我得到了这个非常有用的提示。

它发生了 埃贾米尔 他向我们解释了如何在一条线上就能知道我们的公共IP(真实IP),还邀请任何想要改进线路的人来做……而且……他们知道我是一个狂热的粉丝bash,所以我做了奇怪的改变。 这是 我的线:

GET http://www.vermiip.es/  | grep "Tu IP p&uacute;blica es" | cut -d ':' -f2 | cut -d '<' -f1

让我们看一下更改后的结果的屏幕截图:

他的话如下:

GET http://www.vermiip.es/ | grep "Tu IP pública es" | perl -pe 's/(.*:)||\s+//g;'

使用原始行会是什么样子:

原始命令的说明由同一人提供 埃贾米尔 en 文章:

  1. 命令 的GET 它存在于任何GNU / Linux发行版中,顾名思义,它会下载给定URL的HTML。
  2. 下一步是查看HTML文档,以查看要显示页面的IP。 在第二步中,我们得到以下结果: 您的公共IP是:xx.xx.xxx.xxx,显然X是数字。
  3. 下一步,我将使用正则表达式和PERL作为控制台命令,过滤字母等。 perl -pe的/(.* :) |(<\ / h2>)|(\ s +)// g; ,此regex稍作制作,我建议对其进行改进,甚至可以使用grep更好地将其删除。

在这里,我留下我的解释:

  1. 通过 的GET 我们下载该URL的HTML,它告诉我们我们的IP以及我们不想要的更多文本。
  2. 我们将清除所有不需要的代码,仅保留IP线通过 grep的.
  3. 问题是它向我们显示了带有小文本和H2标签的IP,因此现在使用两次 我们将清理所有内容,仅保留IP。
  4. (第一个剪切)»我们清除了文本和第一个H1标签,只是说它没有显示来自文本的任何内容。 : (两点)在左侧,最后只剩下一个H2标签。
  5. (第一个切割)»我们用另一个切割清洁了最后一个H1标签,从第一个<到其右边都不会显示任何内容。 仅保留IP。

他们使用的任何方法(命令)都会给他们相同的结果,我只是想做出自己的贡献,因为当看到带有正则表达式和perl的命令行时,很难逐字逐句地解释给其他人。

无论如何,我希望您喜欢它,并感谢您提供一千个 埃贾米尔 因为写了 原始文章。

问候


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   鲁道夫

    如果没有卷曲并且有wget(例如,在MacOSX中为我的情况),则此命令也适用:

    wget -nv -q -O- http://ip.appspot.com/

    (尽管正如Edwin所说,ifconfig.me是正确的事情……并且我在MacOSX上安装了curl)

  2.   埃德温

    更轻松
    卷曲ifconfig.me

    1.    KZKG ^ Gaara

      O_O ...我不知道那个站点... WTF!,太棒了!
      感谢数据朋友,超级有趣的呵呵。

      PS:现在,当您设法用2个单词来完成整个指令链时,我感觉像个白痴。

    2.    Ariel 大卫之星系列

      出色,只需安装curl和该命令,它就很棒!

  3.   圣地亚哥

    很好的贡献! 它也非常有用,因为它不需要额外安装任何东西。 我尝试使用CURL,但它要求我安装该软件包。

    问候。

    1.    KZKG ^ Gaara

      嗯,CURL在默认系统中不一样吗? O_O
      好吧,感谢您的贡献,您将竭尽所能🙂

      问候和感谢朋友

  4.   莱斯特区

    WTF! (复制粘贴,xD,我从未写过那个昵称)KZKG ^ Gaara的出色解释。 埃德温,很好,太好了,我不知道这种方法。 感谢分享。

    1.    KZKG ^ Gaara

      哈哈哈谢谢朋友🙂

  5.   亚历杭德罗·莫拉(Alejandro Mora)

    或搭配:
    卷曲-s http://ip.appspot.com/

  6.   奥伯斯特

    俗话说,不知不觉就不会上床睡觉

  7.   塞尔吉奥

    很好,我不知道该服务。

    对本文的作者来说,告诉他终端仿真器中的背景图像使阅读变得困难。

  8.   兄弟

    这很棒。 但是,这比较容易:
    $ 卷曲 ifconfig.me

    1.    KZKG ^ Gaara

      哈哈,是的,他们已经在上面提到过,我不得不使用整个指令链有点不好意思

  9.   B1蓝光3

    谢谢,非常有用

  10.   藻类

    很好的提示…(很高兴知道)。

  11.   达沃兹盒子

    其他方法:
    了解我的公共IP:
    wget -qO- ifconfig.me/ip
    wget -qO- ifconfig.me/主机

  12.   雨果

    好吧,至少在Debian上,您也可以使用默认的控制台浏览器:

    www-browser http://ifconfig.me

    我通常使用elinks或w3m

  13.   正确

    还有什么更复杂的命令Gaara! 我用

    wget -qO- icanhazip.com

  14.   塔里贡

    哈哈哈,太好了。

  15.   布拉泽克

    很好,我不知道这种方式。 不学习任何新知识,您将永远上床睡觉。

    1.    KZKG ^ Gaara

      这就是我看到所有方法可以做到的想法,哈哈

  16.   olo

    我有一个类似的。 结果是一样的。
    wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

    如果我们将其放在脚本中并添加到屏幕上,使其具有很高的显示度(例如),那么将有一个非常酷的“应用程序”

    事情会像这样:
    #!/bin/sh

    IPPUBLICA=$(wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//')

    zenity --info --text="Tu IP es: $IPPUBLICA"

    问候

  17.   约格纳 2

    在某些发行版中均未默认安装wget,因此curl在这方面最合适

    1.    KZKG ^ Gaara

      默认情况下,curl是全部安装的吗?

  18.   沉重的网孔

    我这样做,我有一个别名xD:
    别名myip ='wget http://automation.whatismyip.com/n09230945.asp -O-2> / dev / null; 扔出去'

    但是CURL使我无语。

    您好!

  19.   Elwuilmer

    我认为获取公共IP的方法很多,每个人都可以自由选择自己的身份,他们最能识别自己的身份,我特别喜欢使用:

    wget -qO- ifconfig.me/ip

    我的建议是编辑该帖子,并放置存在的各种已知公共IP替代方案,并让读者自由选择要使用的方法。

  20.   马蒂亚斯

    转到那里的“控制面板”并在打开它后选择“网络连接”,右键单击有效的连接(这将是带有2个蓝色pc的连接),然后在将打开的新窗口中选择“属性”,然后单击在“互联网协议”上,然后在选项“属性”上,您可以看到您的IP地址

    如果您喜欢我,请回答我,给我投票! https://es.answers.yahoo.com/question/index?qid=20080731112416AAVDKNz

  21.   保罗

    查找他们在页面上提供的所有信息非常有帮助。 我能够按照以下步骤操作并了解我的公共IP。 http://www.gurugles.com/internet-y-computadoras/cual-es-mi-ip-publica/ 。 我也很清楚地找到了许多有关IP的答案,对此我们还不太了解。

  22.   匿名

    卷曲最大