二月 21 2010

用DD-WRT快速建立PPTP VPN Server

分類:硬體好軟 , 有 53,789 次瀏覽過 , 有 4,077 個機器人爬過


之前在部落格曾經寫過關於用Fortigate 建立VPN 的一系列文章,但這是因為公司申請中華電信資安艦隊方案所獲贈的機器(當然,羊毛還是出在羊身上...),一般小型企業或家庭不太可能花錢砸設備,那如果想要自建VPN Server 該怎麼辦?

還好,網路上有DD-WRT 這公開的軔體能刷在特定的IP 分享器使用,裡面提供的功能包羅萬象,就看分享器內建的ROM 有多大,能使用的功能就有多少。
注意!刷非原廠軔體不在保固範圍內,不過我好像買來第一天就都改刷了...

所以這次就是要用DD-WRT 內建PPTP Server 來完成任務。有支援的軔體版本請參考官方連結

設定方式非常簡單,兩張圖就講完。
進入分享器的頁面後,找 [伺服器] -> [VPN],然後點選啟用 [PPTP 伺服器]。

參考下面說明及圖片進行設定。
伺服器IP 欄位請輸入IP分享器的內部IP
以本文為例,則是 192.168.1.254,也就是指定IP分享器為Gateway。

用戶端IP 欄位請輸入希望給予的IP 範圍,建議設定為同網段範圍,格式如:

192.168.1.161-165

這部份在經過惡搞後發現,輸入跟分享器不同網段,VPN 還是會連接並取得設定的IP ,但你會發現就被關在那個網段裡面了,連Internet 都上不了。

CHAP-Secrets 欄位則是用來輸入相關的帳號密碼,格式為:

帳號1 * 密碼 *
帳號2 * 密碼 *

如果需要給予多筆帳號,可以分行建立。請注意密碼的前後務必給予一個空格,否則就會跟我當初測試時一樣鬼打牆。

最後請點選 [儲存重啟],使PPTP Server 功能生效,這樣就完成了伺服器端的設定。

接著在用戶端進行設定連線及測試。
到 [控制台] -> [網路及網際網路] -> [網路和共用中心],點選 [設定新的連線和網路]。

點選 [連線到工作地點]。

點選 [使用我的網際網路連線 (VPN) ]。

這部份的資訊在連線時很重要,請輸入該IP分享器的對外或網址。「目的地名稱」則是用來建立連線時的識別名稱。

輸入帳號密碼後即完成在用戶端的連線設定。

而在Windows 7 裡最快的連線步驟,就是用滑鼠左鍵點擊右下角的網路圖示,再依據指示就能成功連線。
圖中的「PPTP」就是當初建立的「目的地名稱」。

最後要說的是,以台灣目前的網路環境,一般家用的ADSL/FTTB大都屬於浮動IP,所以在連線使用VPN 可能會有些不方便。如果像是使用中華電信的用戶,其實可以轉申請浮動轉固定的服務,或者可以申請Dyndns 的動態DNS 服務,然後在DD-WRT 上進行設定,這樣就會比較容易在外面連線到對外服務的IP 分享器,然後與內部網路進行連接。

另外特別提醒的是,如果有考慮開啟VPN Server,建議盡量將內部網路的網段設定至較為特別的位置,避開使用類似192.168.0.0/24或192.168.1.0/24等網段,因為這些網段都常在旅館或咖啡廳被使用,會導致兩端在建立VPN 連線後,都位在同樣網段時,很容易造成存取或連線上的錯誤。

用下面這幾張圖來說明會比較容易。
假設右端在企業外部的電腦與左端的分享器建立起PPTP VPN 後,取得的IP 為 192.168.1.162,那麼當他要存取左端192.168.1.1 或192.168.1.159 這兩台主機的資源時,會在右端尋找還是自動找到左端呢?

取得的IP 狀態。

其實從路由表來看,會比較清楚些。在建立VPN 連線後,會以左端的企業內部環境為優先,右端的內部資源可能就無法正常存取了。

文章內容更新(20120201):

感謝 Duncan 在留言的問題,讓我發現到文章少說了一個小設定。以本文的環境範例來說,在 DD-WRT 的系統基本設定頁面,路由器的網路設定除了基本的 IP 必須設定外,也請務必輸入閘道(Gateway)的值,也就是路由器本身,否則將可能造成撥進 VPN 後,用戶端無法透過該路由器上網。

Related Posts Plugin for WordPress, Blogger...

隨選好文章

 ▲ 閱讀較新的文章:

目前有 49 個回應 , 標籤:



有 49 個回應 在「用DD-WRT快速建立PPTP VPN Server」的文章

  1. jeff在 2010年 05月 13日 18:20:18 說

    請問 我vpn 可以連線
    但是 不能上網
    是有什麼地方 還須要設定嗎
    我是 用windows 7 OS
    BUFFLAO WZR-HP-G300NH

    麻煩您唷 謝謝

  2. John在 2010年 07月 17日 12:54:52 說

    DD-WRT v24-sp2 (10/10/09) vpn
    我建立了PPTP, 但用WINDOWS XP 顯示錯誤800.
    可以指教一下嗎?
    謝謝

  3. AskaSu在 2010年 07月 18日 08:31:39 說

    你的Windows XP Client所處的網路環境或電腦裡,
    是否有防火牆的軟體或硬體設備呢?
    檢查是否有開啟VPN pass through功能,
    或者稱為GRE通訊協定。

    或者被限制連接外部的1723埠,
    也是有可能造成無法連接的原因。

  4. John在 2010年 08月 07日 22:07:06 說

    謝謝你的回覆...
    q: 你的Windows XP Client所處的網路環境或電腦裡,
    防火牆開了1723(pptp) 1701(l2tp), gre 都開了, server 03 建立的vpn 可以連接到....
    是否server side ddwrt 防火牆要開某些端口?
    或isp 封閉了?

  5. KOLOKOLO在 2010年 08月 17日 19:13:45 說

    你好:
    針對沒有固定ip的人, vpn端要怎麼設定?

  6. AskaSu在 2010年 08月 18日 11:49:23 說

    To KOLOKOLO:

    如果沒有固定IP,只會造成用戶端在存VPN Server 時造成不便,
    可以考慮申請DynDNS 動態DNS 服務,
    再將申請的網域輸入在IP 分享器的DD-WRT 裡,
    這樣用戶端設定VPN 連線時,就可以改輸入動態DNS 的網域,
    就能快速找到VPN Server 了。

    或者,中華電信用戶也能申請浮動轉固定,
    詳情請到HiNet 客戶服務網站

  7. 過路客在 2010年 11月 19日 16:46:15 說

    請問一下,怎麼設定DDW有中文介面的?

  8. AskaSu在 2010年 11月 19日 21:20:36 說

    Hi, 過路客

    可以參考 DD-WRT 官方網站說明,
    因為有些版本的軔體並沒有內建多國語言。
    如果確認你所安裝的版本有支援,
    可以在刷成功後,進入系統管理 (Management) 的標籤頁面,
    在頁面中找到「Mutilanguage 」項目就可以選擇繁體中文,
    然後儲存設定重啟後,就能看到中文了

  9. 難倒了在 2010年 11月 25日 16:58:02 說

    請問我的VPN功能設定好了,也可連線使用
    但發生一個很怪的狀況就是有某些網站不能連線使用,
    例如:pchome 新浪網
    但是yahoo hinet so-net卻又都可以用
    是不是我有哪裡沒設定好
    我的機器刷完機後只有設定 IP:中華電信固I 遮罩:255.255.255.0 GW:中華電信
    DIR-300 IP:192.168.0.254 遮罩:255.255.255.0 GW:沒設
    只另外開啟VPN的PPPTP SERVER
    其他都是預設

    這樣不知道你有沒有辦法可判斷問題點,謝謝

  10. AskaSu在 2010年 11月 27日 10:55:06 說

    Hi, 難倒了

    你的狀況在不使用 VPN 的情況下可以正常連嗎?

  11. Greeny在 2010年 12月 13日 15:56:14 說

    你好!

    目前想要讓台中分公司(浮動ip)連接到彰化總公司(一個固定ip)的伺服器使用ERP(鼎新SmartERP)及使用server的分享資料!

    是不是只要讓一台DD-WRT連在總公司ADSL 數據機上即可?
    台中分公司不需要安裝DD-WRT 去尋找總公司DD-WRT的ip去連線VPN,是嗎?
    在安全性上及速度上會不會不安全?過慢呢?

    拍謝!問好多問題,因為最近公司急著要結合,在網路上找到你這篇資訊,不知套用在公司可不可以呢?不好意思啦!>"<

  12. AskaSu在 2010年 12月 14日 21:25:55 說

    Hi, Greeny

    如果只是單純的用戶端要連回總公司,
    的確是可以用 DD-WRT 的 PPTP VPN,
    但是在使用的速度上,我自己覺得網路封包的處理反應,
    還是沒有用硬體搭配 Windows Server 架PPTP VPN Server 來得快,
    而且純用一般 IP 分享器搭配 DD-WRT,
    人數也不適合太多,畢竟一般的 IP 分享器在硬體規格上並沒有很強悍。

    我會比較建議使用像是 Fortigate 或者其他網路硬體設備,
    協助你完成 Site to Site VPN 的連線,
    在連線速度及安全性會比較好。

  13. Greeny在 2010年 12月 15日 09:51:10 說

    感謝你的回答呢!(90度鞠躬)~最近也準備購買一台Vigor2930的設備,希望一切順利(合掌)

  14. elextsai在 2011年 01月 21日 21:47:38 說

    機器:DIR-600

    DD-WRT v24-sp2 (08/07/10) vpn
    我建立了PPTP, 但用WINDOWS XP 顯示錯誤800.
    我的的設定都依照您寫的程序,但是一直出現錯誤800的訊息!
    也嘗試過把SPI防火牆關閉,也出現相同錯誤!
    我的IP設定為192.168.2.1(LAN IP)
    可否指教一下!
    謝謝!

  15. AskaSu在 2011年 01月 23日 09:54:09 說

    Hi, elextsai

    一般來說,會出現連接 PPTP VPN 後會出現 800 的錯誤,
    大多是你電腦所處網路環境或設備沒有提供 VPN passthrough,
    所以導致無法正常與伺服器做連接。

    可以把電腦改放置於可取得 Public IP 的網路環境,
    然後重新做連接試試看。

  16. redsnow在 2011年 02月 20日 18:38:44 說

    你好 請問一下

    我的fon現在刷成dd-wrt並開了vpn server

    目前的問題是vpn可以連上,但卻只能上內網而沒有辦法連到外網
    我懷疑是vpn server default gateway的問題

    如圖 default gateway 跟 ip address 一樣
    http://piczasso.com/i/4fjfn.PNG

  17. AskaSu在 2011年 03月 02日 10:19:11 說

    Hi, redsnow

    因為手邊沒有 Fon,也不清楚你刷的版本為何,
    建議先檢查看看本機端跟Server端的路由是否正確。

  18. Kevin在 2011年 06月 14日 23:52:38 說

    蘇老大大,
    請問一個問題,我是用Asus RT-N16改DD-WRT
    用中華電浮動IP設過一次VPN,可以動作(在台灣)
    可是發現因為從大陸連過來對DynDNS會有問題,所以去中華電轉了一個固定IP來用
    可是不知這個IP要設在哪裡?

  19. Kevin在 2011年 06月 15日 00:27:48 說

    蘇老大大,
    SORRY浪費你的板面,我問題解決了,我忘了看完中華電的固定IP的確認信,裡面有提到.

  20. Sam在 2011年 07月 21日 20:43:10 說

    請問大大:
    那請問我的錯誤碼是807,是哪裡出問題了呢?
    我是從公司網路想連VPN到家裡,因為有時候會去大陸出差,所以想先在台灣試試看
    如果連台灣公司的網路都連不回家裡的話,那道大陸就更不用說了吧!

  21. AskaSu在 2011年 07月 22日 14:16:25 說

    Hi, Sam

    如果你連線 VPN 的錯誤代碼是 807,
    那麼這個狀況大多是:
    1. 所處環境有防火牆或軟體阻擋了 PPTP VPN 的封包。
    2. 所處環境並沒有提供 PPTP Passthrough。
    3. 某國的部份地區對於出國的 PPTP VPN 建立有限制。
    建議先找非公司環境做測試。

  22. Sam在 2011年 07月 23日 01:11:51 說

    恩恩..那看起來比較像是情況1.公司的網路檔掉了
    那請問有別的辦法嗎?

  23. Roku在 2011年 08月 13日 03:50:32 說

    請問光世代數據機接在AP1的WAN埠,AP2透過無線橋接AP1
    這樣把PPTP VPN Server建立在AP2可以正常使用嗎?
    因為AP1是刷Tomato系列韌體(為了IP/MAC限速功能)
    但是OpenVPN Server在應用上比較不方便(需另外安裝軟體)
    所以AP2就刷DD-WRT想說用來建立PPTP VPN Server

  24. AskaSu在 2011年 08月 15日 11:58:20 說

    不好意思,我沒有這樣試過,
    而且DD-WRT的PPTP VPN Server似乎是建立在WAN端的服務,
    如果照你目前的網路架構,
    我不確定PPTP VPN Server能否用LAN端對外服務。

  25. kimble在 2011年 09月 27日 10:02:58 說

    用 FON 刷 DD-WRT 軔體後
    在開啟 PPTP VPN Server
    開啟網頁 會 其他網路應用都正常
    只有一個問題 就是 MSN 無法登入(錯誤碼:80072eff)
    困擾很久 設定過很多種方式 都無法解決
    再請問有無有大大發生相同問題??

  26. cheryl在 2011年 10月 14日 15:44:23 說

    您好~我想請問一下 我有固定ip位置,試用我朋友的.我是用mac air的電腦,前幾個月都可以正常使用,但最近不行連ipad跟win7都不行,錯誤代碼是747,但我用公司XP電腦又可以,我聯絡不到我朋友,有什麼方法可以解決嘛?
    還有你提供的這個DDwrt網站連結進去後跟你的照片不一樣耶,全是英文我看不懂~有中文版的嘛?
    謝謝你~

  27. AskaSu在 2011年 10月 15日 14:09:39 說

    Hi, cheryl

    你的錯誤代碼我沒有遇過,
    如果只有在公司的電腦可以連線,
    建議你檢查你所上網的環境是否有阻擋了建立 PPTP VPN 的連線,
    否則就要詢問你的朋友了。

    至於我文章中的圖片,
    是連線到已刷好 DD-WRT 軔體的分享器裡,
    並非 DD-WRT 網站,
    該網站目前也沒有中文版,
    但印象中對岸似乎有一個專門討論該軔體的論壇,
    你可以試著找看看。

  28. cheryl在 2011年 10月 18日 14:56:26 說

    那要怎麼檢查? 因為不只是這個ip位置,包刮其他的ip位置,我跟我姐的mac air都無法連線.但以前都可以,想請問一下現在要怎麼讓mac air連VPN???
    還有要怎麼連線到已刷好的DD-WRT韌體的分享器?
    拜託了~~~~謝謝

  29. Joanne在 2011年 10月 19日 09:11:52 說

    我在DD-WRT 裡設定中華電信PPPOE的帳號密碼
    浮動IP帳號 : xxxx@hinet.net
    然後NB無線連結到安裝DD-WRT的AP後可以順利上網

    但如果我在DD-WRT裡設定
    固定IP帳號 : xxxx@ip.hinet.net
    然後NB無線連結到安裝DD-WRT的AP卻無法順利上網
    (顯示無法連線)

    所以我又做了一個實驗
    我直接在NB上設定PPPOE的帳號密碼
    固定IP帳號 : xxxx@ip.hinet.net 可以順利上網的而且會有固定IP

    所以問題是為什麼我安裝DD-WRT的AP 裡設定
    固定IP的帳號 : xxxx@ip.hinet.net
    我的NB會無法順利上網呢?

    請大大指導

  30. AskaSu在 2011年 10月 19日 10:58:18 說

    Hi, Cheryl

    你可以再試試看把MBA帶到公司,
    然後連接你原本使用的VPN,
    如果可以正常連接,
    那麼就有可能是你住家的網路已被設定對岸限制無法存取在台灣的VPN伺服器。

    至於你說要登入已刷好的DD-WRT韌體的分享器,
    是指從對岸連到台灣的那台設備嗎?
    如果是,就必須問那台設備的主人是否有開放外部連線到設定畫面。

  31. AskaSu在 2011年 10月 19日 11:00:32 說

    Hi, Joanne

    這我沒辦法給你一個答案,
    因為我沒遇過類似狀況,
    但是是有遇過平板沒辦法正常透過無線取得DHCP發放的IP,
    必須手動設定才可以對外上網,
    有可能是DD-WRT軔體本身有問題,
    建議到DD-WRT的論壇詢問,
    或者試著更新軔體看看。

  32. Kent在 2011年 10月 21日 19:26:46 說

    您好,我是用Buffalo WZR-HP-G300NH當做我的PPTP VPN Server。
    我有申請中華電信固定IP,我自己在台灣用不同的網路連回家中的VPN都能順利瀏覽網頁(FB)

    但是我請在上海的朋友幫我試了一下,他說可以連上,但是FB和Youtube都打不開...。
    請問有可能是設定上哪裡出問題嗎?

    我是參考這個網站設的:http://3c.msn.com.tw/View.aspx?ArticleID=41645&pageIndex=3

    拜託您幫幫忙了!

  33. Kent在 2011年 10月 21日 22:16:44 說

    後來發現是同一個小烏龜上我不只接了Buffalo,還接著Airport Express並使用。
    後來拔掉Airport之後就可以讓上海的朋友使用啦!

  34. Tim在 2011年 11月 02日 15:40:13 說

    請問版大,我都設定好了也可以連的上,但連上沒幾分鐘就會斷線,馬上再連時會顯示錯誤代碼619,過幾分後連則又連的上,請問這是什麼原因?要怎麼解決呢?

  35. Michael在 2011年 11月 03日 13:35:31 說

    請問 我vpn 可以連線
    但是 不能上網、也看不到其他電腦、直接打IP也連不上
    是有什麼地方 還須要設定嗎
    我是 用windows 7 OS
    BUFFLAO WZR-HP-G300NH2

    我有嘗試過另一台XP系統的、可以正常連線

    麻煩您唷 謝謝

  36. AskaSu在 2011年 11月 03日 17:49:32 說

    Hi, Tim

    可能要確認你所在的網路環境或防火牆,
    是否有開放 PPTP Pass-through,
    或者有對 PPTP 做管控。

  37. AskaSu在 2011年 11月 03日 17:54:50 說

    Hi, Michael

    建議再檢查一下連線後,
    你的 IP, DNS, Gateway 等設定是否正確取得。

  38. DD-WRT和Vigor 2920做VPN連線 | NOTE在 2011年 11月 19日 05:21:08 說

    [...] Vigor LAN to LAN PPTP 通道 ? using the draytek vigor as a pptp clientPPTP Tunneling用DD-WRT快速建立PPTP VPN ServerDD-WRT如何設定與M0N0以PPTP VPN互連 Site to Site VPNStatic PPTP VPN Client PPTP Server [...]

  39. Sheng在 2011年 12月 09日 23:18:08 說

    hi~超強的版主
    可以寫一篇用 Fortinet 60B快速建立PPTP VPN Server的教學嗎?
    萬分感謝~

  40. AskaSu在 2011年 12月 13日 11:14:59 說

    Hi, Sheng

    其實還是會推薦你使用 Fortigate 的 SSL VPN,
    因為 PPTP VPN 很容易因所處環境的防火牆或網路而無法連接。

  41. sheng在 2011年 12月 16日 14:19:37 說

    hi~超強的版主AskaSu
    我的Fortinet 60B版本是3.00-b5115(MR5 patch 3)
    不知道可不可以建立 Fortigate 的 SSL VPN

    不知到版主AskaSu是否有備份比3.00-b5115(MR5 patch 3)新的韌體
    因為該機器拿到手時~保固以過~且沒註冊~也無法註冊
    分享給小弟
    萬分感謝

  42. AskaSu在 2011年 12月 19日 13:45:47 說

    我查了一下文件,
    確認3.0 MR5也是有提供SSLVPN的,
    詳情可以參考一下文件或者小弟的拙作做設定。

  43. Duncan在 2012年 01月 01日 23:12:06 說

    版主您好:
    我是D-link DIR-300刷成DD-WRT的
    LAN:192.168.1.1
    我申請了固定IP:114.**.***.***
    所以在連線選擇PPPOE
    帳號:********@ip.hinet.net
    請問--
    1.在PPHP伺服器的IP要填多少?(有些網路文章寫0.0.0.0 )?
    2.用戶端IP(s):192.168.1.160-165 這樣對嗎?
    因為我反覆測試更換IP值都無法連線VPN!
    家內電腦可以連線,但請朋友連上我的VPN都失敗?!
    煩請解惑!
    感謝!

  44. AskaSu在 2012年 01月 02日 16:32:30 說

    如果你對你的IP分享器設定為192.168.1.1,
    那麼在PPTP伺服器的IP就是要填192.168.1.1,
    Lan的部份就是如你所述的192.168.1.xxx的範圍,
    另外,注意一下在基本頁面中,
    除了分享器的IP基本設定,
    還需要設定Gateway為192.168.1.1。

    另外,你朋友連上VPN都失敗的錯誤訊息為何呢?

  45. Duncan在 2012年 01月 03日 00:18:13 說

    謝謝回答!
    還是無法連線!
    顯示錯誤619

    我這裡是中華的線進來後,先接上中華的路由器,再由中華的lan連到DIR-300的WAN
    這樣該如何設定?

    再次麻煩了,謝謝!

  46. Duncan在 2012年 01月 03日 15:13:16 說

    "還需要設定Gateway為192.168.1.1"
    原來還需要在TCP/IP設定!

    已經請朋友測試連線成功了! ^O^
    太感謝了~

    (接下來要請朋友從大陸連接回來,希望是OK的!)

  47. A胖在 2012年 01月 11日 10:57:26 說

    蘇老您好

    我的連接方式為

    中華小烏龜(已設定PPPOE上網)接刷DD-WRT的ASUS N12

    是50M光世代 為7浮動1固定

    想請問的是

    在基本連線設定那邊

    我是一樣做PPPOE上網設定嗎??

    另外因為光世代固定IP是透過PPPOE帳號設定

    所以也沒有什麼遮罩之類的東西

    是否改做DDNS較好?

    PPTP VPN設定頁

    伺服器IP請問事鑑入固定IP(114.32.......) 還是內網的IP(192.168........)

    最後

    做完基本設定以及VPN設定以後 有其他需要做設定的地方嗎?

    不好意思 我已經弄了三天但好像都弄不好

    麻煩大大解惑一下^^"

  48. AskaSu在 2012年 01月 12日 10:38:14 說

    Hi, A胖

    在基本設定頁面中,
    PPPoE 撥接設定並不需要特別去做修改,
    有一個關鍵點,是我在這篇文章中忘記提到的(有時間會補充上來),
    就是你必須設定你的路由器 IP、Mask 和 Gateway,
    假設路由器 IP 及 Mask 是 192.168.1.254 / 255.255.255.0,
    那麼 Gateway 也一定要設定為 192.168.1.254,
    然後在 PPTP VPN Server 的 IP 也同樣設定為 192.168.1.254。

    希望我的回覆能對您有幫助。

  49. A胖在 2012年 01月 14日 01:50:36 說

    蘇老 您好
    按照您的講解目前初步測試成功,謝謝您,
    不過之前曾經出現過隔兩天突然不能連線,想請問,
    DD-WRT裡面"系統管理"的"保持連線"是否要做什麼設定
    另外,"網路喚醒"部分又有沒有要做任何設定呢?

    另外向您拜個早年

留 言 回 應

( ★ 是真人就填一下吧 )