Зміст

Multi-link PPP daemon на FreeBSD 9.3 amd64

Установка MPD5

Для установки mpd5 в консолі сервера доступу виконаємо наступну команду:

cd /usr/ports/net/mpd5 && make install clean

Після завершення інсталяції вмикаємо автоматичний запуск при старті системи, додавши в `/etc/rc.conf`:

rc.conf
mpd_enable="YES"

Наполегливо рекомендую вести лог mpd5 в окремий файл. Для цього додаєм в кінець файла `/etc/syslog.conf` наступні строки:

syslog.conf
!mpd
*.*                                /var/log/mpd.log

Після додавання створюємо log-файл та перезавантажуємо syslogd:

# touch /var/log/mpd.log
# /etc/rc.d/syslogd reload

Налаштування MPD5

mpd.conf
startup:
	set user {username} {password}
	set console self 127.0.0.1 5005
	set console open
	set netflow peer localhost 42111
	set netflow timeouts 15 1800
	set netflow version 5
 
default:
	create bundle template B
	set bundle enable compression
	set bundle enable encryption
	set iface idle 0
	set iface disable proxy-arp
	set iface enable tcpmssfix
	set iface enable netflow-in
	set iface enable netflow-out
	set ipcp yes vjcomp
	set ipcp ranges {address}/32 0.0.0.0/0
	set ipcp dns {dns-1} {dns-2}
	set ccp yes mppc
	set mppc yes compress
	set mppc yes e40
	set mppc yes e56
	set mppc yes e128
	set mppc yes stateless
	set ecp disable dese-bis dese-old
	log -echo -ipv6cp -radius -rep
	load common
common:
	create link template PPPoE pppoe
	set link enable no-orig-auth
	set link max-children 300
	set auth max-logins 0
	load radius
	load pppoe
 
radius:
	set radius server localhost {secret} 1812 1813
	set radius timeout 3
	set radius me localhost
	set auth acct-update 300
	set auth enable radius-auth
	set auth enable radius-acct
	set radius enable message-authentic
 
pppoe:
	set link action bundle B
	set link enable multilink
	set link yes acfcomp protocomp
	set link disable chap pap eap
	set link enable chap chap-msv1 chap-msv2 chap-md5
	set link keep-alive 10 60
 
	create link template {lan_interface} PPPoE
	set pppoe iface {lan_interface}
	set link enable incoming
	set pppoe service *

Стискання підключень

Для можливості стискання підключень необхідно завантажити додаткову бібліотеку MPPC з офиційного сайту та розпакувати їх в директорію «/usr/src/sys/net». Для цього в консолі серверу, де інстальований MPD5, послідовно виконуємо наступні команди:

# cd /usr/src/sys/net
# fetch http://mavhome.dp.ua/MPPC/mppc-1.0.tgz
# tar -zxvf mppc-1.0.tgz
# rm mppc-1.0.tgz

Після установки збираємо та інсталюємо ядро:

# cp -R /boot/kernel /boot/good
# cd /sys/amd64/conf
# config NETGRAPH
# cd ../compile/NETGRAPH
# make cleandepend
# make depend
# make
# make install

Нижче наведений взірець конфігураційного файлу ядра:

NETGRAPH
include GENERIC
 
ident NETGRAPH
 
options	NETGRAPH
options	NETGRAPH_IPFW
options	NETGRAPH_NAT
options	NETGRAPH_NETFLOW
options	NETGRAPH_SPLIT
options	NETGRAPH_KSOCKET
options	NETGRAPH_SOCKET
options	NETGRAPH_BPF
options	NETGRAPH_IFACE
options	NETGRAPH_MPPC_ENCRYPTION
options	NETGRAPH_MPPC_COMPRESSION
options	NETGRAPH_PPP
options NETGRAPH_L2TP
options	NETGRAPH_PPPOE
options	NETGRAPH_PPTPGRE
options	NETGRAPH_TCPMSS
options	NETGRAPH_VJC
options	NETGRAPH_TEE
options	NETGRAPH_CAR