从网络获取IP地址


0

当我不在家时,我使用旧的Iphone进行远程控制。问题是我的服务提供商给了我动态ip地址,所以有些时候它会自行改变。我怎么知道我家的实际ip地址远离家乡“免费”?

编辑:

我连接 我的PC或Android设备在工作 Iphone 3gs在家里 通过 VNC服务器。

一世 想让PC在家中打开动态dns。

一世 想为dydns支付30美元/年。

我可以连接我的iPhone。这不是重点。当我的IP改变时,我失去了联系。


1
编辑 您的问题并澄清您的具体问题或添加其他详细信息以突出显示 究竟 你需要或正在尝试做什么。评论我的答案的其他人也想澄清......
DavidPostill

仍然 没有告诉我们“你的iPhone(大概是在家里)如何连接到你的家庭网络?” iPhone在哪里获得IP地址?
DavidPostill

因为这是我不需要帮助的地方。路由器有NAT,端口被转发,192.x.x.x为iphone保留。
Emre Acar

那么你的路由器地址正在改变吗?这正是如此 免费动态DNS 是...
DavidPostill

Answers:


1

我之前使用的方法多年前我得到的静态IP如下。

首先,找到一个可以拨打电话获取IP地址的服务。例如,如果你谷歌“Whats My IP”EG这些日子:

https://www.google.co.uk/search?q=whats+my+IP

您将获得一个类似于以下内容的搜索页面:

enter image description here

遗憾的是谷歌的代码有点密集,但是如果你使用shell脚本和Wget,可能还有一些grep调用,甚至用PHP编写的自定义脚本来抓取谷歌的页面并解析结果,你会看到一点点工作,可以从页面获取IP地址。

enter image description here

当然,您不必使用Google来获取IP,还有许多其他页面,专门用于获取您的IP,例如“www.whatsmyip.org”

enter image description here

最后,如果您可以访问外部Web服务器,您甚至可以在其上放置一个脚本,只需以纯文本形式回显远程主机地址服务器变量。

最终的结果是你获得了一个IP地址,你使用哪种服务并不重要,重要的是你自动调用从外面看你的IP的主机,然后你解析那个IP地址退出输出返回给你。

拥有该IP后,您就可以自动化您的计算机,将该IP地址通过电子邮件发送到您和您的手机可以访问的公共电子邮件帐户,例如GMail。

将脚本放入某种定时工作中,每30分钟左右检查一次,并保留最后发布的IP地址的记录,以及只有在发生更改时才通过电子邮件发送的IP地址。

然后,当您需要IP地址时,只需登录指定的公共电子邮件,然后查看IP是什么。

UPDATE

做了一个研究点。即查看myip的页面中的源代码。我带头去看看:

http://www.realip.info/api/p/realip.php

如果你把它弹出到浏览器并点击返回,这就是你将得到的:

{"IP":"80.176.150.196"}

您将IP地址作为JSON对象。一个JSON对象太容易解析了:-)

更新2

好的,所以我们现在知道这也是连接的手机,我们实际上可以做到这一点。

但是,在我开始之前,你的手机必须落后并连接到你自己的网络。这不适用于GSM / 3g / 4g或任何其他移动电话运营商网络之王。

使这项工作的步骤

  1. 创建一个标准的html网页,添加到所述网页,JQuery并进行设置,以便HTML代码使用元刷新标记每隔一段时间重新加载页面。

  2. 如上所述,在所谓的“realip.info”网页中添加一些java脚本。如果你使用jQuery和Ajax get调用执行此代码,那么在调用返回时触发的函数中,你将获得一个名为'IP'的对象的数据

  3. 在相同的JavaScript中,它会将该IP地址发送到您可以读取的地方。我不确定是否可以通过java脚本访问的任何电子邮件解决方案,但是如前所述,如果您有自己的外部服务器运行您也可以访问的网站,那么可以很容易地使用jQuery将其发布到那里。

  4. 将此html页面保存到SD卡上或以其他方式将其放到手机上,然后像远程控制前一样连接手机。

  5. 将HTML加载到手机浏览器中,让它只是坐在那里,刷新自己,调用IP服务,然后将IP发送到你问过的地方。

要做到这一点,你不需要一个mac来为你的iPhone开发任何软件,你需要的只是一小部分HTML和JavaScript,该解决方案也非常便携,适用于任何手机。

我可能,非常容易一起破解脚本来做到这一点,但目前还没有,因为我不在我自己的电脑上,我可能会稍后去看看它:-)

更新3

事实证明,使用普通的JavaScript发送电子邮件非常容易,使用GData API,详情如下:

https://developers.google.com/gmail/api/v1/reference/users/messages/send


我没有一台Mac电脑为我的iphone写这个小应用程序,但这是迄今为止我得到的最好和唯一的好答案,我很赞同,非常感谢你。
Emre Acar

您没有为手机编写应用程序。您编写应用程序以在要知道其IP地址的计算机上运行。也就是说,您想要知道您要登录的IP地址的机器。运行什么操作系统?
shawty

伙计,请你也不要犯那个错误。我从电脑连接到手机,而不是从手机连接到电脑。
Emre Acar

没错,没有probs。对于你的问题,你的问题不是这样的:-)但不要担心。让我更新我的答案。你会看到你如何能够在一瞬间解决这个问题。
shawty

1
@cybermonkey,看了我的回答......一切都在那里:-)
shawty

4

参考 免费动态DNS

No-IP Free动态DNS是我们的入门级服务。使用   yourname.no-ip.info而不是难以记住的IP地址或URL   远程访问您的计算机。此外,使用我们的免费动态DNS   更新客户端以跟踪您的动态IP地址。你会   即使您的IP地址是,也始终能够访问您的计算机   动态分配。


问题是我无法访问计算机,我访问旧的iPhone 3gs。
Emre Acar

您将计算机配置为使用当前IP更新DNS名称。这样,无论ip是否改变,你的dns总是指向正确的ip
drpexe

1
@EmreAcar没理由粗鲁。你确定你的英语很完美吗?您写道,您想要使用iPhone进行远程控制,并且您想知道您家的实际IP。这种情况可以从iPhone @ Anywhere-mobile远程控制您的PC @ Home。现在,在您的评论中,您说您想要从PC远程控制iPhone。那么你真正想要的是什么?
Werner Henze

如果您只需要家庭IP,那么免费动态DNS解决方案是您最好的选择。一些家庭路由器可以向动态DNS提供商“报告”并获得“当前”家庭IP。
Darius

到你的iPhone 从什么设备
DavidPostill
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.