2015-10-22 61 views
0

我已經配置了我的PPTP服務器爲客戶端自動分配IP地址。如何知道由PPTP服務器自動分配的LAN中的PPTP客戶端本地IP?

我很想知道當前分配給特定用戶的本地IP是什麼。我實際上有一個腳本來確定遠程IP,但實際上我找不到找到LAN IP的方法。

這是一個樣本線在CHAP文件,你可以看到,該IP是自動分配:

test pptpd 0802928d37e151f338696d1601040570 * 

謝謝!

回答

0

我正在讀更多(幾天後),並且有一個PPTP「數據庫」,您可以使用它來做到這一點。

下面的代碼:

#!/usr/bin/perl -w 

@line = `/usr/bin/tdbdump /var/run/pppd2.tdb |grep "PEERNAME="`; 
foreach $user (@line) { 
    chomp ($user); 
    undef $name; 
    undef $iplocal; 
    @record = split (/\;/, $user); 

    foreach $field (@record) { 
     if ($field =~ /PEERNAME/) { 
      $field =~ s/PEERNAME\=//gi; 
      $name = $field; 
     } 
     if ($field =~ /IPREMOTE/) { 
      $field =~ s/IPREMOTE\=//gi; 
      $field =~ s/(.*)\\.*/$1/gi; 
      $iplocal = $field; 
     } 
    } 
    if ((defined $name) && (defined $iplocal)) { 
     print ("$iplocal  $name\n"); 
    } 
} 

我複製了腳本的/ usr/bin中運行它容易。樣本輸出將是這樣的:

[email protected]:~# wppp 
192.168.0.128  test 

我希望它能幫助別人:)