Настроил на FreeBSD 11.2 pptpclient. Запускаю из коммандной строки так:
/usr/local/sbin/pptp 10.10.10.10 myvpn &
Туннель устанавливается. Пытаюсь сделать тоже самое автоматически при старте OS. Сделал:
cat /usr/local/etc/rc.d/mvpn
#!/bin/sh
#
# PROVIDE: mvpn
# REQUIRE: DAEMON
# KEYWORD: shutdown. /etc/rc.subr
name=mvpn
rcvar="mvpn_enable"command="/usr/local/sbin/pptp 10.10.10.10 myvpn &"
load_rc_config $name
run_rc_command "$1"
Добавил в /etc/rc.conf строку mvpn_enable="YES"
После перезагрузки получил:
cat /var/log/messages
/etc/rc: WARNING: $pptp_enable is not set properly - see rc.conf(5).
/etc/rc: WARNING: run_rc_command: cannot run /usr/local/sbin/pptp 10.10.10.10 myvpn &Может кто подскажет чего?
> Добавил в /etc/rc.conf строку mvpn_enable="YES"нужно указать вместо вышеуказанного указать pptp_enable="YES" или используйте MPD без лишних костылей со скриптами
>> Добавил в /etc/rc.conf строку mvpn_enable="YES"
> нужно указать вместо вышеуказанного указать pptp_enable="YES" или используйте MPD без
> лишних костылей со скриптамиЕсли указать в pptp_enable="YES", возникает:
cat /var/log/messages
pptp[583]: anon log[usage:pptp.c:133]: /usr/local/sbin/pptp called with wrong arguments, program not started.
> Если указать в pptp_enable="YES", возникает:
> cat /var/log/messages
> pptp[583]: anon log[usage:pptp.c:133]: /usr/local/sbin/pptp called with wrong arguments,
> program not started.у него свой штатный нормальный rc скрипт есть и конфиг, настройте его и пользуйтесь вместо ранее созданного вашего костыля:
https://svnweb.freebsd.org/ports/head/net/pptpclient/files/p...
>> Добавил в /etc/rc.conf строку mvpn_enable="YES"
> нужно указать вместо вышеуказанного указать pptp_enable="YES" или используйте MPD без
> лишних костылей со скриптамия за MPD.
> Настроил на FreeBSD 11.2 pptpclient. Запускаю из коммандной строки так:
> /usr/local/sbin/pptp 10.10.10.10 myvpn &
> Туннель устанавливается. Пытаюсь сделать тоже самое автоматически при старте OS. Сделал:
> cat /usr/local/etc/rc.d/mvpn[skip...]
> Может кто подскажет чего?А вариант с /etc/rc.local чем не устраивает?
>> Настроил на FreeBSD 11.2 pptpclient. Запускаю из коммандной строки так:
>> /usr/local/sbin/pptp 10.10.10.10 myvpn &
>> Туннель устанавливается. Пытаюсь сделать тоже самое автоматически при старте OS. Сделал:Зачем все так сложно, у вас же один профиль, посмотрите скрипт запуска демона, там есть переменная pptp_flags
pptp_enable="YES"
pptp_flags = "10.10.0.10 myvpn"
Переменная pptp_flags, действительно встречается в /usr/local/etc/rc.d/pptp
Сделал как Вы и сказали Сергей, спасибо.
pptp_enable="YES"
pptp_flags = "10.10.0.10 myvpn"
При загрузке ОС, содеинение правда сначало устанавливатся, затем обрывается:
cat /var/log/messages
pptp[597]: anon log[main:pptp.c:353]: The synchronous pptp option is NOT activated
pptp[606]: anon log[ctrlp_rep:pptp_ctrl.c:259]: Sent control packet type is 1 'Start-Control-Connection-Request'
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:781]: Received Start Control Connection Reply
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:815]: Client connection established.
pptp[606]: anon log[ctrlp_rep:pptp_ctrl.c:259]: Sent control packet type is 7 'Outgoing-Call-Request'
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:900]: Received Outgoing Call Reply.
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:939]: Outgoing call established (call ID 26308, peer's call ID 50710).
kernel: tun0: link state changed to UP
ppp[597]: tun0: Warning: ff02::/: Change route failed: errno: Network is unreachable
ppp[597]: tun0: Warning: ff02::/: Change route failed: errno: Network is unreachable
ppp[597]: tun0: Warning: ff02::/: Change route failed: errno: Network is unreachable
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:977]: Call disconnect notification received (call id 26308)
pptp[606]: anon log[ctrlp_disp:pptp_ctrl.c:830]: Received Stop Control Connection Request.
pptp[606]: anon log[ctrlp_rep:pptp_ctrl.c:259]: Sent control packet type is 4 'Stop-Control-Connection-Reply'
pptp[606]: anon log[callmgr_main:pptp_callmgr.c:269]: Closing connection (shutdown)
pptp[606]: anon log[ctrlp_rep:pptp_ctrl.c:259]: Sent control packet type is 12 'Call-Clear-Request'
pptp[606]: anon log[call_callback:pptp_callmgr.c:84]: Closing connection (call state)
kernel: tun0: link state changed to DOWN
ppp[597]: tun0: Warning: Delete route failed: 192.168.100.1: errno: Address already in use
pptp[707]: anon warn[decaps_hdlc:pptp_gre.c:226]: short read (0): Invalid argumentГде-то совсем близко решение
> Переменная pptp_flags, действительно встречается в /usr/local/etc/rc.d/pptp
> При загрузке ОС, содеинение правда сначало устанавливатся, затем обрывается:
> cat /var/log/messages
> pptp[597]: anon log[main:pptp.c:353]: The synchronous pptp option is NOT activatedСеть не успела подняться, то бишь эзернет...Головой надо немножко подумать...
> Где-то совсем близко решениевариантов аж три.
1) подпиливать скрипт pptp на предмет порядка запуска (см. REQUIRE:, BEFORE:, AFTER:), а потом при обновлениях опять искать где чего допиливалось.
2) поднимать через ppp путем рисования в ppp.conf pptp профиля с указанием set device "!/usr/local/sbin/pptp XXX.XXX.XXX.XXX --nolaunchpppd"
3) выкинуть нахрен весь тормознутый userspace pptpclient и использовать ядерно-нетграфовый mpd.
Тогда mpd.
> Тогда mpd.MPD лучше всего, он к тому же и поуниверсальнее