web-dev-qa-db-ja.com

Virtualboxの実験的なセットアップでUbuntuのカスタムPPPoEサーバーに接続します。接続に失敗します

私はUbuntuサーバー18.04.2LTSを使用していますが、wiresharkを介してプロトコルを少しよく研究するために、それをpppサーバーとして作成したいと考えています。

次の図に示すように、virtualboxを使用し、仮想マシンを使用するという考え方です。

Virtualbox Setup

各Vmは、仮想ネットワークカードを介して「内部ネットワーク」構成を使用してVmに接続されます。言い換えれば、私は次のvmsを実行しています。

$ 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

PPPoEクライアントマシンで、Ubuntu 18.04LTSのデフォルトデスクトップバリアントを実行します。 "pppoeconf"パッケージをインストールし、chapメソッドを使用してpppサーバー経由で接続を試みます(ホストへのwireshark経由のネットワーク接続を研究するためだけですが)私はこの2つの問題を抱えています:

PPPoE Error

したがって、PPPoEを介して接続するインターフェイスに最初にIPを設定する必要があるかどうかを知りたいと思いました。そうでない場合は、デフォルトのインターフェイスを使用して接続するようにpppoeconfを強制できます。私が設定したPPPサーバー?

レコードについて、私のpppserverが実行され、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サーバー上で this ソースコードを使用して手動でコンパイルされます。その上で私の/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/*ファイルを削除してから、これを構成するために answer として使用しました。それでも接続に失敗します。私がそれをデバッグする方法を知っていますか?

さらに、現在の接続では、親と同様に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

プライバシーのために、ms-dnsエントリの値を変更することにより、独自のDNSエントリを使用できます(またはシステムに完全なキャッシュDNSを設定することもできます)。

認証の問題については、以下を参照してください: https://serverfault.com/a/969667/369198

0