Archive

Posts Tagged ‘adsl’

Windows PPPoE 自動重撥 Script

七月 25th, 2009

隨著 ADSL 及經濟型光纖網路的普及,有許多人都會在自家架設 server 主機,但如果沒有用分享器而是直接透過 PPPoE 撥接上網的,就很怕網路突然斷線(如忘記繳錢被停掉),雖然說 Windows 內建的連線程式有一個「斷線後重新撥號」的選項,但其實並不好用。比較保險的作法是系統定期檢查對外連線的狀況(ping),一旦發現斷線就自動重新連線。

在網路上可以找到很多這種作法的 Linux 版本,如「Debian Linux: ADSL PPPoE 自動重撥 Script」,但相對 Windows 的討論卻很少,所以就自己寫了一個重撥的 WSH(Windows Script Host),搭配工作排程就可以達到目的。
※ 本方法適用於 XP 以後之 Windows。

Step 1:將下列程式存為 repppoe.vbs,修改連線資訊並放置在安全的地方


DIALNAME = "寬頻連線"              '連線名稱
DIALUSER = "12345678@ip.hinet.net" '連線帳號
DIALPASS = "xxxxxxxx"              '連線密碼

Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("ping www.hinet.net", 0, true)
If RetCode <> 0 Then
	WshShell.Run "rasdial " & DIALNAME & " /DISCONNECT", 0, true
	WScript.Sleep(3000)
	WshShell.Run "rasdial " & DIALNAME & " " & DIALUSER & " " & DIALPASS, 0
End If

Step 2:設定 Windows 工作排程。(控制台->排定的工作->新增排定的工作)

1
‧選擇步驟 1 的 repppoe.vbs 檔案

2

3

4
‧輸入具有 Administrator 權限的使用者及密碼

5

6

7
‧表示每 30 分鐘檢查一次連線狀況,可依需求修改,然後收工。

※ 備註:
之所以選擇 ping www.hinet.net 而不用 IP 是因為經實驗結果,若網卡有設定 Default gateway,則可能會因為 gateway response 影響連線判斷。

Other, Server, Windows, 程式筆記, 系統筆記 , , , ,

Windows 7 記住帳密及開機自動連線

六月 8th, 2009

上個月初 M$ 發佈了 Windows 7 RC 版本,立刻引起眾多的測試狂人搶先試用,而且頗受好評。當然我也加入測試行列囉!除了 RC 的 7100 版本,網路上很快又陸續流出了 7127、7137...版本,但很詭異的是各版本都有著不同的 bug、亂碼,有些明明舊版正常,新版卻冒出來,所以我想這可能是 M$ 保護未來零售版的小計謀吧!畢竟 Windows 7 目前的完成度已經相當高了(說穿了就是 Vista 的優化加強版)。

在 7137 版有個很麻煩的問題,就是沒辦法記住網路帳號密碼,所以每次開機都要重打一次(扯),目前的解決方案是利用指令的方式呼叫 rasdial 來連線。

command:

rasdial 寬頻連線 [帳號] [密碼]

其中"寬頻連線"就是原先建立的連線名稱,視個人情況修改。

至於要讓開機自動連線,就是把上述指令寫成 vbs/bat 並加入「啟動」,或者利用「工作排程器」來達到目的。

Windows, 系統筆記 , , , ,