Я использую Ubuntu Server 18.04.2LTS и хочу попробовать сделать его как сервер ppp, чтобы лучше изучить протокол с помощью wirehark.
Идея состоит в том, чтобы использовать виртуальный бокс и использовать виртуальные машины, как показано на следующей диаграмме:
Каждая виртуальная машина подключена к виртуальной машине с помощью конфигурации «Внутренняя сеть» через свою виртуальную сетевую карту. Другими словами, я использую следующие vms:
$ VBoxManage list runningvms
"Ubuntu PPP Configuration" {55314243-8b75-4a46-a8fa-9e371a63bd7f} <<<< ppp server
"ubuntuVM pppclient" {bf57df72-5ae8-406b-b364-4eec324e7cac} <<< pppclient
И у каждого из них есть следующие сетевые карты:
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
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» и пытаюсь подключиться через сервер ppp, используя chap
метод (просто чтобы изучить сетевое подключение через wirehark к хосту), но у меня есть две проблемы:
Следовательно, я хотел знать, должен ли интерфейс, подключающийся через 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
Для моего клиента ppp я удалил все /etc/ppp/hosts/*
файл, который я использовал в качестве этого ответ чтобы настроить его. По-прежнему не удается подключиться. Вы знаете, как я могу это отладить?
Кроме того, в текущем подключении я также установил единственный интерфейс Ethernet, который будет использовать 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
Чтобы узнать, что произошло на 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