strato DDNS VBS Client

看了几款网上的DDNS Client。有些是Shareware要付费的,有些功能不符合。最后还是写了个VBS的DDNS Client。大家可以把他添加到Windows Task Scheduler里面,让它定时通过DDNS更新external的IP。

以下是给德国Strato公司配置的(其它DDNS可见最后的Comment),在使用前按需要先修改host,pass等variables:


' === settings ===
host = "<HOST>"
pass = "<PASSWORD>"
url = "https://dyndns.strato.com/nic/update?hostname=" & host & "&system=dyndns&wildcard=OFF&backmx=NO&offline=NO"
pth = "D:\ddns-client.log"

' === ddns client ===
Dim oQuery: Set oQuery = CreateObject("MSXML2.XMLHTTP.3.0")
Dim oLogger: Set oLogger = CreateObject("Scripting.FileSystemObject")

Sub Debug (pth, str)
	msg = date & " " & time & ": " & str
	Set oLogFile = oLogger.OpenTextFile(pth, 8, True, 0)
	oLogFile.Write msg	
	oLogFile.Close
End Sub

Function ResolveIP(host)
    oQuery.Open "GET", "http://ip-lookup.net/domain.php?domain=" & host, False
    oQuery.Send
    If oQuery.Status = 200 Then
        Set RegEx = New RegExp
        RegEx.Global = True
        RegEx.Pattern = "http://ip-lookup.net\?(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
        Set matches = RegEx.Execute(oQuery.responseText)
          If matches.Count > 0 Then
            ResolveIP = matches(0).SubMatches(0)
          End If
    End If
End Function Function GetMyIP()
    oQuery.Open "GET", "https://ip.appspot.com/", False
    oQuery.Send
    If oQuery.Status = 200 Then
        GetMyIP = Replace(Replace(oQuery.responseText, vbLf, ""), vbCr, "")
    End If
End Function Function Query(url, host, pass, ip) If ip "" Then url = url & "&myip=" & ip End If oQuery.Open "GET", url, False, host, pass oQuery.Send If oQuery.Status = 200 And (InStr(oQuery.responseText, "good") Or InStr(oQuery.responseText, "nochg")) Then Query = "ok, " & oQuery.Status & ", " & oQuery.responseText Else Query = "failed, " & oQuery.Status End If End Function ' === main === externalIp = GetMyIP() currentIp = ResolveIP(host) Debug pth, host & ": current ip=" & currentIp & ", external ip=" & externalIp If externalIp <> currentIp Then rsp = Query(url, host, pass, ip) Debug pth, rsp Else Debug pth, "ok" End If ' === list of response codes === ' good - Update successfully. ' nochg - Update successfully but the IP address have not changed. ' nohost - The hostname specified does not exist in this user account. ' abuse - The hostname specified is blocked for update abuse. ' notfqdn - The hostname specified is not a fully-qualified domain name. ' badauth - Authenticate failed. ' 911 - There is a problem or scheduled maintenance on provider side ' badagent - The user agent sent bad request(like HTTP method/parameters is not permitted) ' badresolv - Failed to connect to because failed to resolve provider address. ' badconn - Failed to connect to provider because connection timeout. ' === list of ddns providers === 'DYNDNS.org 'http://members.dyndns.org/nic/update?hostname=[HOST]&myip=[IP]&system=dyndns&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG 'TwoDNS.de 'http://update.twodns.de/update.php?hostname=[HOST]&myip=[IP] 'NoIP.com 'http://dynupdate.no-ip.com/nic/update?hostname=[HOST]&myip=[IP] 'able.or.kr 'http://able.or.kr/ddns/src/update.php?hostname=[HOST]&myip=[IP]&ddnsuser=[USER]&pwd=[PASS] '3322.org 'http://www.3322.org/dyndns/update?hostname=[HOST]&system=dyndns 'selfHOST.de 'http://carol.selfhost.de/nic/update?hostname=[HOST]&myip=[IP] 'Dynamic DO!.jp 'http://free.ddo.jp/dnsupdate.php?dn=[HOST]&pw=[PASS]&ip=[IP] 'ChangeIP.com 'http://nic.ChangeIP.com/nic/update?hostname=[HOST]&myip=[IP]&system=dyndns 'DNSPod.com 'http://dnsapi.cn/Record.Modify?login_email=[USER]&login_password=[PASS]&format=xml&domain_id=[DOMAIN_ID]&record_id=[RECORD_ID]&sub_domain=[SUBDOMAIN]&record_type=A&record_line=[RECORDLINE]&value=[IP]&mx=[MX]&ttl=[TTL] 'Zoneedit.com 'http://dynamic.zoneedit.com/auth/dynamic.html?host=[HOST]&dnsto=[IP] 'Freedns.org 'http://freedns.afraid.org/dynamic/update.php?user=[FREE_DNS_SHA1]&host=[HOST]& address=[IP] 'STRATO 'http://[USER]:[PASS]@dyndns.strato.com/nic/update?hostname=[HOST]&myip=[IP]&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG

联想OKR一键恢复7.0工程版WIN7版妙用

Tips on using Lenovo OKR (One Key Recovery Engineering 7.0 with win7 support, version 20100511)

以下说一下OKR工程版的使用方法:

  1. 修复联想电脑一键恢复功能
  2. 设置一键恢复语言
  3. 随时重建原始恢复盘镜像
  4. 支持单,双硬盘,mSSD + S-ATA HDD,支持多种软件系统Dos, Win XP,  Win Vista, Win 7等

注意:OKR工程版7.0有多个版本。最初版本不支持双硬盘和Win7。请在下载时注意。

 1.       下载OKR 工程版

http://www.gamefront.com/files/22288222/OKR7.0_20100511_145200.part01.rar

http://www.gamefront.com/files/22288214/OKR7.0_20100511_145200.part02.rar

http://www.gamefront.com/files/22288230/OKR7.0_20100511_145200.part03.rar

http://www.gamefront.com/files/22288231/OKR7.0_20100511_145200.part04.rar

http://www.gamefront.com/files/22288244/OKR7.0_20100511_145200.part05.rar

http://www.gamefront.com/files/22288251/OKR7.0_20100511_145200.part06.rar

http://www.gamefront.com/files/22288259/OKR7.0_20100511_145200.part07.rar

http://www.gamefront.com/files/22288255/OKR7.0_20100511_145200.part08.rar

说明:下载以上8个文件。然后用WinRAR或360压缩等软件解压缩。再把解压后的ISO文件刻录到DVD上。

 2.       安装OKR

–          备份重要软件(安装OKR需要重新格式化硬盘,所以之前请备份现有硬盘上的重要文件)

–          如是多硬盘安装:先卸下其他硬盘,只保留要安装OKR的硬盘。如mSSD+HDD:Win7系统安装在mSSD上,OKR要安装在HDD上。就在安装OKR时只留HDD在电脑里。

–          使用OKR工程版DVD启动,选择1)安装OKR

  • 单硬盘安装:OKR会把硬盘分成3个区:C(系统),D(数据)还有隐藏的OKR分区(~15GB)。在安装时你需要填入C盘的大小(建议80 000 = 80GB)。
  • 多硬盘安装:如你的系统要装在别的硬盘上,这里可以随意填写一个数字。在安装后在系统里再自行修改。

–          OKR安装好后。安装系统或安装硬盘。(多硬盘安装Win7前,最好卸下其他硬盘。如只留SSD盘在电脑里)

–          镜像前准备:清理,更新系统,安装必要软件等

–          如有硬盘没有安装,现在全部安装

–          关机,按NOVO键(或恢复键)进入OKR启动页面

–          选择语言

–          这时如备份时出错见下(=> 重建原始恢复盘镜像)

3.       自行重建原始恢复盘镜像

–          关机,按NOVO键(或恢复键)进入OKR启动页面

–          选择一键恢复

–          按CTRL+SHIFT+O进入操作窗口

–          在窗口里进入Lenovo_Part盘(大概是f:或g:)(我这里是f:)

–          删除旧的镜像

F:

cd okrbackup

cd factory

del OS.okr

–          重建系统盘镜像(单硬盘)

F:

cd onekey

cd osimage

osimage /fb

–          重建系统盘镜像(双硬盘)

F:

cd factory_process

cd TWO_HDD

CallFactory.cmd

–          重建系统盘镜像(其它):进入factory_process里的其它文件夹(DOSHDD,SSDHDD,ONEHDD,TWOHDD)。然后运行CallFactory.cmd就可以了。(如SSD+HDD Raid0选择SSDHDD)

注意:重建镜像需要30-120分钟。请耐心等待。在窗口里会显示完成度。到100就好了

–          建立的镜像在okrbackup\factory文件夹里

GreenPPS / SafePPS 阻止PPStream显示广告

PPStream里的广告越来越多。在看动漫的时候特别烦人。不想看广告但又想使用最新的PPS版本,所以就尝试了一下给PPS过滤广告。

  • 修改hosts文件:失败(PPS还是会把hosts改回原样),而且只能阻止有hostname的网址。
  •  阻止PPS缓存广告及其他宣传文件:成功

具体实现方法:

  • 找到PPS储存它下载广告的文件夹
  • 阻止PPS创建广告文件夹

这里感谢一下PPS的程序员。没有因为无法创建广告文件夹而限制PPS的播放功能。

下载链接:GreenPPS 1.3 Windows XP/Windows 7

http://code.google.com/p/safepps/