什么工具,能记录 公网 IP 历史?

2019-03-16 07:54:44 +08:00
 AmItheRobot

通过 gpedit.msc 在 windows 日志里记录的,是内网 IP

有没有一种小软件,后台运行时,它会持续监测 我当前的公网 IP,并记录成 log 呢?

是给自己用的

2570 次点击
所在节点    问与答
6 条回复
Telegram
2019-03-16 07:59:38 +08:00
你自己写一个呗,不难吧
xern
2019-03-16 08:01:07 +08:00
写个脚本 过一段时间 curl ifconfig.me
uuspider
2019-03-16 08:09:28 +08:00
几年前写的,一直运行良好,供参考

#!/bin/bash
#------------------------------------
# 脚本:network_check
# 版本:0.4
# 作者:uuspider
# 日期:2015-09-13 v0.1
# 日期:2015-10-28 v0.3
# 日期:2016-01-17 v0.4
# 语言:shell
# 功能:1.网络中断后重启网络或重启树莓派;
# 功能:2.当公网 ip 变化时,发送邮件通知。
# 使用:(crontab) */2 * * * * $PATH/netcheck.sh
#------------------------------------

# http://www.silisoftware.com/tools/ip.php
# http://ipecho.net/plain
# http://whatismyip.akamai.com
# http://tnx.nl/ip #curl 无法连接,浏览器连接正常
# http://myip.dnsomatic.com/
# http://members.3322.org/dyndns/getip
## http://ipinfo.io
## http://ipinfo.io/developers
# http://ifconfig.me/ #太慢
# http://ip.appspot.com/ #太慢
# curl --silent http://1212.ip138.com/ic.asp | tail -1 | tr '\n' ' ' | awk -F '[\\[\\]]' '{print $2}'

export PATH="/usr/sbin:/usr/bin:/sbin:/bin"

cd $(dirname $BASH_SOURCE)
touch "./ip.log"
IP_Log=$(cat "./ip.log")

To_Addr="***@gmail.com"
IP_URL=("http://www.silisoftware.com/tools/ip.php" "http://ipecho.net/plain" "http://whatismyip.akamai.com" "http://myip.dnsomatic.com/" "http://members.3322.org/dyndns/getip")
PING_URL=("www.baidu.com" "www.sina.com.cn" "www.163.com" "www.qq.com")

pull() {
#访问 IP_URL
for ((j=0; j < ${#IP_URL[@]}; j++))
do
IP_New=$(curl -s ${IP_URL[$j]})
echo $IP_New | grep "^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$" && break
done
ip_check
}

net_check() {
sleep 30
connected=0
#检查网络连接是否正常
for ((i=0; i < ${#urls[@]}; i++))
do
ping ${PING_URL[$i]} -c2 &> /dev/null
if [ $? -eq 0 ]; then
connected=$((++connected))
fi
done
#网络无法连接时,重启网络或重启树莓派
if [ $connected -eq 0 ]; then
sudo service networking restart
sudo ifup wlan0
# sudo /etc/init.d/networking restart
# sudo /sbin/ifup wlan0
# sudo reboot
else
pull
fi
}

ip_check() {
if [ "$IP_New" = "$IP_Log" ]; then
:
elif [ "$IP_New" = "" ]; then
net_check
else
echo -n $IP_New > ./ip.log
mutt -s "[IP Checked] $IP_New" $To_Addr < ./ip.log || rm ./ip.log
fi
}

pull

exit 0

##END##
dream7758522
2019-03-16 11:58:31 +08:00
很简单啊,服务器用 php 或 Python 做记录 ip 的一个页面,逻辑是记录当时访问的时间和 ip。
然后电脑下个定时访问网址的小软件,或者浏览器下个定时刷新的插件,后台开着不停地访问网页就可以了啊。
ifxo
2019-03-16 12:03:58 +08:00
electric
2019-03-16 13:01:34 +08:00
wget http://ip138.com

String myIp = ip138;

ip = myIp.substring(...);

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/545178

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX