我正在使用 Ubuntu Server 18.04.2LTS,我想尝试将其作为 ppp 服务器,以便通过 wireshark 更好地研究该协议。
想法是使用 virtualbox 并使用虚拟机,如下图所示:
每个虚拟机都使用其虚拟网卡上的“内部网络”配置连接到虚拟机。换句话说,我正在运行以下虚拟机:
$ VBoxManage list runningvms
"Ubuntu PPP Configuration" {55314243-8b75-4a46-a8fa-9e371a63bd7f} <<<< ppp server
"ubuntuVM pppclient" {bf57df72-5ae8-406b-b364-4eec324e7cac} <<< pppclient
并且每个都有以下网卡:
- PPP 服务器
VBoxManage showvminfo 55314243-8b75-4a46-a8fa-9e371a63bd7f | grep NIC
NIC 1: MAC: 080027DACEE9, Attachment: NAT, Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 1 Settings: MTU: 0, Socket (send: 64, receive: 64), TCP Window (send:64, receive: 64)
NIC 1 Rule(0): name = Rule 1, protocol = tcp, host ip = , host port = 2022, guest ip = , guest port = 22
NIC 2: MAC: 0800277B9E7B, Attachment: Internal Network 'intnet', Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
- PPP 客户端
VBoxManage showvminfo bf57df72-5ae8-406b-b364-4eec324e7cac | grep NIC
NIC 1: MAC: 080027D07155, Attachment: Internal Network 'intnet', Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 0 Mbps, Boot priority: 0, Promisc Policy: deny, Bandwidth group: none
NIC 2: disabled
在运行 Ubuntu 18.04LTS 默认桌面版本的 PPPoE 客户端机器上,我安装了“pppoeconf”包,并尝试使用该chap
方法通过 ppp 服务器连接(只是为了研究通过 wireshark 进入主机的网络连接),但我遇到了以下 2 个问题:
因此,我想知道通过 PPPoE 连接的接口是否应该先有 IP。如果没有,我如何强制pppoeconf
使用默认接口并连接到我设置的 ppp 服务器?
为了记录我的ppp服务器运行并且已经按照命令显示的那样工作route -n
:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.2.2 0.0.0.0 UG 100 0 0 enp0s3
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s8
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s3
10.0.2.2 0.0.0.0 255.255.255.255 UH 100 0 0 enp0s3
ppp 服务器是使用以下方式手动编译的这通过 ubuntu 18.04LTS 服务器下载源代码。我已在服务器上/etc/ppp/pppoe-server-options
设置了以下 pap 身份验证设置(只是为了查看其工作原理):
# PPP options for the PPPoE server
# LIC: GPL
debug
plugin /etc/ppp/plugins/rp-pppoe.so
require-pap
login
mtu 500
mru 500
ktune
proxyarp
lcp-echo-interval 10
lcp-echo-failure 2
nobsdcomp
noccp
novj
noipx
编辑1
对于我的 ppp 客户端,我删除了任何/etc/ppp/hosts/*
文件,然后我使用它回答以便对其进行配置。仍然无法连接。您知道我该如何调试它吗?
此外,在当前连接中,我还设置了唯一将使用 pppoe 以及父级的以太网接口。
另外,我的客户端网络接口是通过(sudo nmcli show
命令):
GENERAL.DEVICE: enp0s3
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 08:00:27:D0:71:55
GENERAL.MTU: 1500
GENERAL.STATE: 30 (disconnected)
GENERAL.CONNECTION: --
GENERAL.CON-PATH: --
WIRED-PROPERTIES.CARRIER: on
GENERAL.DEVICE: lo
GENERAL.TYPE: loopback
GENERAL.HWADDR: 00:00:00:00:00:00
GENERAL.MTU: 65536
GENERAL.STATE: 10 (unmanaged)
GENERAL.CONNECTION: --
GENERAL.CON-PATH: --
IP4.ADDRESS[1]: 127.0.0.1/8
IP4.GATEWAY: --
IP6.ADDRESS[1]: ::1/128
IP6.GATEWAY: --
IP6.ROUTE[1]: dst = ::1/128, nh = ::, mt = 256
答案1
为了找出 ppp 服务器上发生了什么,请通过 ssh 进入该服务器然后运行:
tail -f /var/log/syslog
您将看到发生了什么。默认情况下,pppoe 连接不需要 dhcp,但您还需要提供 DNS 服务器。由于缺少 ppoe 配置,因此请添加以下内容:
ms-dns 4.2.2.1
ms-dns 4.2.2.3
netmask 255.255.255.0
defaultroute
noipdefault
usepeerdns
为了保护隐私,您可以通过更改条目的值来使用您自己的 DNS 条目(甚至在您的系统中设置完整的缓存 DNS)ms-dns
。
对于任何身份验证问题,请查看:https://serverfault.com/a/969667/369198