2011年12月29日 星期四

Linux下以pptp方式撥入VPN網路中


  1、下載pptp用戶端

  wget http://nchc.dl.sourceforge.net/sourceforge/pptpclient/pptp-1.7.1.tar.gz

  2、解壓

  tar zxvf pptp-1.7.1.tar.gz

  3、編譯和安裝

  make; make install

  4、編輯設定檔,設定撥號名為mypptp

  vim /etc/ppp/peers/mypptp

  內容如下:
remotename mypptp
linkname mypptp
ipparam mypptp
pty "pptp vpnserverip --nolaunchpppd "
name myaccount
usepeerdns
require-mppe
refuse-eap
noauth
file /etc/ppp/options.pptp

其中,myaccount為用戶名

  5、編輯/etc/ppp/chap-secrets,加入用戶名和帳號,這裡假設myaccount的密碼為mypassword

myaccount * mypassword *
  6、撥號,運行以下命令

/usr/sbin/pppd call mypptp logfd 1 updetach

  如果以上設定檔正確無誤,則可正常撥入虛擬網管的pptp VPN網路中了,此時如果用ifconfig查看連接情況,可以看到多了一條ppp連接,並能正確分到IP位址了。

  7、添加路由

  雖然已經撥號上來了,但此時,如果你要訪問你的虛擬區域網路資源,你必需添加一條路由才行,這裡假設你撥號上來的連接名為ppp0,並此你的虛擬區域網路的IP段為192.168.163.0,那麼,你需要加入以下命令:

route add -net 192.168.163.0 netmask 255.255.255.0 dev ppp0

  至此,在Linux系統下以pptp方式撥入虛擬網管的VPN網路中了。

  以上操作過程在Ubutun 8.1Fedora 78910下操作通過。

 PS:如果在撥號時報以下錯誤:

/usr/sbin/pppd:pty option precludes specifying device name

請檢查pppd的版本,不可低於2.3.7

檢查etc/ppp/optoins檔,該檔不能為空。


------------------------------------------------------------------------------------------------------------
若出現Couldn't set tty to PPP discipline: Invalid argument 錯誤訊息
則須在kernel 加入 ppp_mppe , ppp_async 這兩個module後即可



    Device Drivers --->
        Network device support --->
            <*>   PPP (point-to-point protocol) support
            <*>     PPP support for async serial ports
            <*>     PPP MPPE compression (encryption) (EXPERIMENTAL)

2 則留言:

  1. 謝謝你的分享~
    我的問題是會出現"Invalid argument" 的錯誤訊息

    回覆刪除

How to use simple speedtest in RaspberryPi CLI

  pi@ChunchaiRPI2:/tmp $  wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py --2023-06-26 10:4...