如何知道PPTP服务器自动分配的局域网中的PPTP客户端本地IP?

时间:2015-10-22 09:38:40

标签: linux bash shell lan pptp

我已将PPTP服务器配置为自动为客户端分配IP。

我很想知道分配给特定用户的当前本地IP是什么。我实际上有一个脚本来确定远程IP但实际上我找不到找到LAN IP的方法。

这是CHAP文件中的一个示例行,如您所见,IP是自动分配的:

test pptpd 0802928d37e151f338696d1601040570 *

谢谢!

1 个答案:

答案 0 :(得分: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以便轻松运行它。样本输出将是这样的:

root@localhost:~# wppp
192.168.0.128        test

我希望它可以帮到某人:)