我已将我的 PPTP 服务器配置为自动为客户端分配 IP。
我有兴趣知道分配给特定用户的当前本地 IP 是什么。我实际上有一个脚本来确定远程 IP,但实际上我没有找到找到 LAN IP 的方法。
这是 CHAP 文件中的示例行,如您所见,IP 是自动分配的:
test pptpd 0802928d37e151f338696d1601040570 *
谢谢!
我正在阅读更多内容(几天后),并且有一个 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 以轻松运行它。示例输出将如下所示:
root@localhost:~# wppp
192.168.0.128 test
我希望它可以帮助某人:)