Mrakobes-ice

Настройка L2TP Beeline

Рекомендованные сообщения

Доброе время суток!

Перепрошил недавно свой роутер на OpenWrt, настроил l2tp подключение через веб-интерфейс... и, не работает =(  (прошивка использует пакет XL2TPD)

Настроил интерфейс вручную, конфиги от l2tpd и ppp... и один хрен не работает... провозился пару дней с роутером и решил попробовать на линуксе...

 

Поставил на виртуалку Ubuntu 11 (другие версии висли по непонятным причинам), и xl2tpd (1.2.8), подключил виртуалку к сети через "сетевой мост"...

Также настроил l2tpd и ppp - и один хрен не работает!

 

Года 3 назад пробовал настраивать l2tp на Ubuntu (наверно даже этой версии) - там тоже были проблемы, но с маршрутами (проблема тогда решилась добавлением двух параметров "defaultroute" и "replacedefaultroute"), но в этот раз вообще ни в какую!

 

L2TP настраивается с аутентификацией по CHAP, без IP-SEC.

 

 

Симптомы:

 

1. CHAP аутентификация проходит успешно, выдаются адреса (local, remote и DNS-ки);

2. PPP-туннель создается, подымается интерфейс "ppp0";

3. Туннель падает через пол минуты (пока он держится, хосты не пингуются (даже шлюз и DNS-ки)...

4. В логах видно что после поднятия туннеля отправляются LCP-PING запросы, на которые нет ответа, и туннель обрывается по тайм-ауту...

 

Прилагаю все необходимые для анализа данные:

------------------------[xl2tpd.conf]--------------------------------[global]
access control = yes 


[lac beeline] 
lns = tp.internet.beeline.ru 
redial = yes 
redial timeout = 30 
require chap = yes 
require authentication = no 
name = my_login 
autodial = yes 
pppoptfile = /etc/ppp/options.xl2tpd 
ppp debug = yes
----------------------[/etc/ppp/options.xl2tpd]----------------------
name my_login 
remotename l2tp 
ipparam beeline 
connect /bin/true 
mru 1500 
mtu 1460 
nodeflate
noauth
nobsdcomp
persist 
maxfail 0 
nopcomp 
noaccomp
refuse-eap
refuse-pap
refuse-mschap
refuse-mschap-v2 
debug
lcp-echo-interval 10
lcp-echo-failure 10
defaultroute
replacedefaultroute
пробовал еще добавлять в конфиг такие параметры:
 
usepeerdns
novj
novjccomp 
 
Для отключения сжатия и запроса адресов DNS-ок
 
----------------------[syslog]-------------------------------------
Jan 23 00:05:36 ubuntu pppd[3101]: pppd 2.4.5 started by root, uid 0
Jan 23 00:05:36 ubuntu pppd[3101]: Script /bin/true finished (pid 3102), status = 0x0
Jan 23 00:05:36 ubuntu pppd[3101]: Serial connection established.
Jan 23 00:05:36 ubuntu pppd[3101]: using channel 9
Jan 23 00:05:36 ubuntu pppd[3101]: Using interface ppp0
Jan 23 00:05:36 ubuntu pppd[3101]: Connect: ppp0 <--> /dev/pts/6
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [LCP ConfReq id=0x18 <mru 1456> <auth chap MD5> <magic 0x222f3a05>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x41d43297>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [LCP ConfAck id=0x18 <mru 1456> <auth chap MD5> <magic 0x222f3a05>]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [LCP ConfRej id=0x1 <asyncmap 0x0>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [LCP ConfReq id=0x2 <magic 0x41d43297>]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [LCP ConfAck id=0x2 <magic 0x41d43297>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [LCP EchoReq id=0x0 magic=0x41d43297]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [CHAP Challenge id=0x1 <cc6ca088d514a7f1a4646e6ae14c6a5f>, name = "bras255.perm"]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [CHAP Response id=0x1 <17b3b53215d39a5a6df3196659599ff2>, name = "0895980480"]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [LCP EchoRep id=0x0 magic=0x222f3a05]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [CHAP Success id=0x1 "CHAP authentication success, unit 2078"]
Jan 23 00:05:36 ubuntu pppd[3101]: CHAP authentication succeeded: CHAP authentication success, unit 2078
Jan 23 00:05:36 ubuntu pppd[3101]: CHAP authentication succeeded
Jan 23 00:05:36 ubuntu pppd[3101]: sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [IPCP ConfReq id=0x9b <addr 89.179.0.1>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [IPCP ConfAck id=0x9b <addr 89.179.0.1>]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [IPCP ConfNak id=0x1 <addr 89.179.9.8> <ms-dns1 85.21.192.5> <ms-dns2 213.234.192.7>]
Jan 23 00:05:36 ubuntu pppd[3101]: sent [IPCP ConfReq id=0x2 <addr 89.179.9.8> <ms-dns1 85.21.192.5> <ms-dns2 213.234.192.7>]
Jan 23 00:05:36 ubuntu pppd[3101]: rcvd [IPCP ConfAck id=0x2 <addr 89.179.9.8> <ms-dns1 85.21.192.5> <ms-dns2 213.234.192.7>]
Jan 23 00:05:36 ubuntu pppd[3101]: replacing old default route to eth0 [10.165.192.1]
Jan 23 00:05:36 ubuntu pppd[3101]: local  IP address 89.179.9.8
Jan 23 00:05:36 ubuntu pppd[3101]: remote IP address 89.179.0.1
Jan 23 00:05:36 ubuntu pppd[3101]: primary   DNS address 85.21.192.5
Jan 23 00:05:36 ubuntu pppd[3101]: secondary DNS address 213.234.192.7
Jan 23 00:05:36 ubuntu pppd[3101]: Script /etc/ppp/ip-up started (pid 3106)
Jan 23 00:05:36 ubuntu pppd[3101]: Script /etc/ppp/ip-up finished (pid 3106), status = 0x0
Jan 23 00:05:46 ubuntu pppd[3101]: sent [LCP EchoReq id=0x1 magic=0x41d43297]
Jan 23 00:05:56 ubuntu pppd[3101]: sent [LCP EchoReq id=0x2 magic=0x41d43297]
Jan 23 00:06:06 ubuntu pppd[3101]: sent [LCP EchoReq id=0x3 magic=0x41d43297]
Jan 23 00:06:16 ubuntu pppd[3101]: sent [LCP EchoReq id=0x4 magic=0x41d43297]
Jan 23 00:06:26 ubuntu pppd[3101]: sent [LCP EchoReq id=0x5 magic=0x41d43297]
Jan 23 00:06:36 ubuntu pppd[3101]: sent [LCP EchoReq id=0x6 magic=0x41d43297]
Jan 23 00:06:46 ubuntu pppd[3101]: sent [LCP EchoReq id=0x7 magic=0x41d43297]
Jan 23 00:06:56 ubuntu pppd[3101]: sent [LCP EchoReq id=0x8 magic=0x41d43297]
Jan 23 00:07:06 ubuntu pppd[3101]: sent [LCP EchoReq id=0x9 magic=0x41d43297]
Jan 23 00:07:16 ubuntu pppd[3101]: sent [LCP EchoReq id=0xa magic=0x41d43297]
Jan 23 00:07:26 ubuntu pppd[3101]: No response to 10 echo-requests
Jan 23 00:07:26 ubuntu pppd[3101]: Serial link appears to be disconnected.
Jan 23 00:07:26 ubuntu pppd[3101]: Connect time 1.9 minutes.
Jan 23 00:07:26 ubuntu pppd[3101]: Sent 1562531114 bytes, received 0 bytes.
Jan 23 00:07:26 ubuntu pppd[3101]: restoring old default route to eth0 [10.165.192.1]
Jan 23 00:07:26 ubuntu pppd[3101]: Script /etc/ppp/ip-down started (pid 3154)
Jan 23 00:07:26 ubuntu pppd[3101]: sent [LCP TermReq id=0x3 "Peer not responding"]
Jan 23 00:07:26 ubuntu pppd[3101]: Script /etc/ppp/ip-down finished (pid 3154), status = 0x0
Jan 23 00:07:29 ubuntu pppd[3101]: sent [LCP TermReq id=0x4 "Peer not responding"]
Jan 23 00:07:32 ubuntu pppd[3101]: Connection terminated.
Jan 23 00:07:32 ubuntu pppd[3101]: Modem hangup

и так по кругу - соединение подымается... шлет LCP-Ping, и благополучно падает...

 
Еще, что не менее интересно: предыдущие экземпляры демона PPPD почему-то видимо не закрываются по сигналу от xl2tpd, 
висят, и отправляют в лог:
 
Jan 23 00:05:56 ubuntu pppd[2977]: Failed to open /dev/pts/5: No such file or directory
Jan 23 00:05:59 ubuntu pppd[2772]: Failed to open /dev/pts/3: No such file or directory
 
т.к. псевдо-терминалов уже нет...
 
 
--------------------------[ifconfig]---------------------------------------------
eth0      Link encap:Ethernet  HWaddr 00:0c:29:ab:22:2f  
          inet addr:10.165.192.228  Bcast:10.165.199.255  Mask:255.255.248.0
          inet6 addr: fe80::20c:29ff:feab:222f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2492 errors:0 dropped:0 overruns:0 frame:0
          TX packets:176 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:172033 (172.0 KB)  TX bytes:17316 (17.3 KB)


ppp0      Link encap:Point-to-Point Protocol  
          inet addr:89.179.9.8  P-t-P:89.179.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1456  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1193200 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3 
          RX bytes:54 (54.0   TX bytes:522621586 (522.6 MB)
--------------------------[route]------------------------------------------
До поднятия туннеля:


Destination     Gateway          Genmask         Flags    Metric    Ref    Use   Iface
default         10.165.192.1     0.0.0.0         UG        0        0      0      eth0
10.0.0.0        10.165.192.1     255.0.0.0       UG        0        0      0      eth0
10.165.192.0           *         255.255.248.0   U         1        0      0      eth0
78.107.196.0    10.165.192.1     255.255.252.0   UG        0        0      0      eth0
link-local             *         255.255.0.0     U         1000     0      0      eth0
233.32.240.0    10.165.192.228   255.255.255.0   UG        0        0      0      eth0
После поднятия был сменен Default Route, а также добавлен маршрут на удаленный интерфейс PPP-туннеля
Destination     Gateway         Genmask           Flags    Metric    Ref    Use    Iface
default            *            0.0.0.0           U        0         0      0      ppp0
89.179.0.1         *            255.255.255.255   UH       0         0      0      ppp0
...

Пожалуйста, кто-нибудь дайте наводку! уже замучился с этой заразой - который день мотаюсь по форумам, перепробовал разные параметры PPP...

и все равно не ясно в чем дело... 

 

+ сравнивал эту таблицу маршрутизации с виндовой, дак там при создании соединения добавляется только маршрут по умолчанию с лучшей метрикой, ведущий на PPP-интерфейс,

причем маршрут ведет на локальный конец PPP-интерфейса, а не на удаленный, например:

 

Destination   Mask     Gateway   Interface            Metric

0.0.0.0         0.0.0.0   On-Link     2.93.245.198     21         <- новый маршрут

0.0.0.0         0.0.0.0   On-Link    10.165.193.5      4246     <- старый маршрут

Изменено пользователем Mrakobes-ice

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не хватает маршрута до vpn сервера через локальный шлюз.

1) Насколько я понял локальный шлюз у вас: 10.165.192.1

2) Ваш пермский брас (vpn сервер) bras255.perm.corbina.ru у меня пингуется как: 78.107.38.7. Проверьте. Если у вас также, для начала попробуйте прописать его.

3) Прописываете статический маршрут до этого айпишника 78.107.38.7 через 10.165.192.1

4) В конфиге вместо lns = tp.internet.beeline.ru  прописываете lns = 78.107.38.7

В общем всё. В результате такой нехитрой комбинации туннель не должен отваливаться. И все должно работать.

 

Для openwrt есть более универсальная конфигурация:

 

1) Обновляете все пакеты установленного OpenWRT
2) Устанавливаете след. пакеты:
kmod-l2tp
kmod-pppol2tp
ppp-mod-pppol2tp
resolveip
xl2tpd
3) Изменяте файл /etc/config/network:

config interface 'wan'
option ifname 'Название вашего интерфейса'
option proto 'dhcp'
option metric '25'
option reqopts 'routes msstaticroutes'

4) Создаете l2tp интерфейс:

config interface 'beeline'
option proto 'l2tp'
option server 'tp.internet.beeline.ru'
option mtu '1460'
option delegate '0'
option keepalive '20 5'
option username 'Ваш логин'
option password 'Ваш пароль'
option metric '1'

5) Создаете правило в фаервол для созданного интерфейса.
6) Перезагружаетесь
7) Ждете, после перезагрузки, l2tp соединение должно подняться автоматически.

Ключевой опцией данного конфига, которая позволяет получить необходимые маршруты здесь является:

option reqopts 'routes msstaticroutes'

Она позволяет получить те же маршруты, что получает windows.

Изменено пользователем noox

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не хватает маршрута до vpn сервера через локальный шлюз.

1) Насколько я понял локальный шлюз у вас: 10.165.192.1

2) Ваш пермский брас (vpn сервер) bras255.perm.corbina.ru у меня пингуется как: 78.107.38.7. Проверьте. Если у вас также, для начала попробуйте прописать его.

3) Прописываете статический маршрут до этого айпишника 78.107.38.7 через 10.165.192.1

4) В конфиге вместо lns = tp.internet.beeline.ru  прописываете lns = 78.107.38.7

В общем всё. В результате такой нехитрой комбинации туннель не должен отваливаться. И все должно работать.

 

Для openwrt есть более универсальная конфигурация:

 

1) Обновляете все пакеты установленного OpenWRT

2) Устанавливаете след. пакеты:

kmod-l2tp

kmod-pppol2tp

ppp-mod-pppol2tp

resolveip

xl2tpd

3) Изменяте файл /etc/config/network:

 

config interface 'wan'

option ifname 'Название вашего интерфейса'

option proto 'dhcp'

option metric '25'

option reqopts 'routes msstaticroutes'

 

4) Создаете l2tp интерфейс:

 

config interface 'beeline'

option proto 'l2tp'

option server 'tp.internet.beeline.ru'

option mtu '1460'

option delegate '0'

option keepalive '20 5'

option username 'Ваш логин'

option password 'Ваш пароль'

option metric '1'

 

5) Создаете правило в фаервол для созданного интерфейса.

6) Перезагружаетесь

7) Ждете, после перезагрузки, l2tp соединение должно подняться автоматически.

Ключевой опцией данного конфига, которая позволяет получить необходимые маршруты здесь является:

option reqopts 'routes msstaticroutes'

Она позволяет получить те же маршруты, что получает windows.

 

спасибо за ответ... я пробовал так в самом начале (как только роутер перепрошил) - использовать этот самый netifd, также по какой-то статье набросал настройки...

и соединение так-же не создается... точнее по логам видно что туннель вроде как создается, PPP интерфейс проходит аутентификацию и получает адреса... и все:

 

 

Thu Jan 26 13:13:13 2017 daemon.notice netifd: Interface 'beeline' is setting up now
Thu Jan 26 13:13:13 2017 daemon.notice netifd: beeline (27927): 00 OK
Thu Jan 26 13:13:14 2017 daemon.notice xl2tpd[12165]: Connecting to host tp.internet.beeline.ru, port 1701
Thu Jan 26 13:13:14 2017 daemon.notice netifd: beeline (27927): 00 OK
Thu Jan 26 13:13:14 2017 daemon.notice xl2tpd[12165]: Connection established to 78.107.38.5, 1701.  Local: 46484, Remote: 37689 (ref=0/0).
Thu Jan 26 13:13:14 2017 daemon.notice xl2tpd[12165]: Calling on tunnel 46484
Thu Jan 26 13:13:14 2017 daemon.notice xl2tpd[12165]: Call established with 78.107.38.5, Local: 35299, Remote: 44916, Serial: 335 (ref=0/0)
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: start_pppd: I'm running:
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "/usr/sbin/pppd"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "passive"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "nodetach"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: ":"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "file"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "/tmp/l2tp/options.beeline"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "plugin"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "pppol2tp.so"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "pppol2tp"
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: "9"
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Plugin pppol2tp.so loaded.
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: pppd options in effect:
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: debug         # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: nodetach              # (from command line)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: logfd 2               # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ifname l2tp-beeline           # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: maxfail 0             # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: dump          # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ip-up-script /lib/netifd/ppp-up               # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ip-down-script /lib/netifd/ppp-down           # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ipv6-up-script /lib/netifd/ppp-up             # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ipv6-down-script /lib/netifd/ppp-down         # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: plugin pppol2tp.so            # (from command line)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: user 0895980480               # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: password ??????               # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: pppol2tp 9            # (from command line)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: pppol2tp 9            # (from command line)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: noaccomp              # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: mru 1460              # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: mtu 1460              # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: nopcomp               # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: passive               # (from command line)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: lcp-echo-failure 20           # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: lcp-echo-interval 5           # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: lcp-max-terminate 0           # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: ipparam beeline               # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: noipdefault           # (from /etc/ppp/options)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: nodefaultroute                # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: usepeerdns            # (from /tmp/l2tp/options.beeline)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: :             # (from command line)
Thu Jan 26 13:13:14 2017 kern.info kernel: [36542.570000] l2tp-beeline: renamed from ppp0
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Using interface l2tp-beeline
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: Connect: l2tp-beeline <-->
Thu Jan 26 13:13:14 2017 daemon.warn pppd[27939]: Overriding mtu 1500 to 1460
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: PPPoL2TP options: debugmask 0
Thu Jan 26 13:13:14 2017 daemon.warn pppd[27939]: Overriding mru 1500 to mtu value 1460
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [LCP ConfReq id=0x1 <mru 1460> <asyncmap 0x0> <magic 0x695e6736>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [LCP ConfReq id=0x1 <mru 1460> <asyncmap 0xa0000> <auth chap MD5> <magic 0x3980a70> <pcomp> <accomp>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [LCP ConfAck id=0x1 <mru 1460> <asyncmap 0xa0000> <auth chap MD5> <magic 0x3980a70> <pcomp> <accomp>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [LCP ConfAck id=0x1 <mru 1460> <asyncmap 0x0> <magic 0x695e6736>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: PPPoL2TP options: debugmask 0
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [LCP EchoReq id=0x0 magic=0x695e6736]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [CHAP Challenge id=0x1 <36c7f621255ff834e5c2bf5c941ff21f>, name = "bras10.perm"]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [CHAP Response id=0x1 <b8a1aa130dac65374acfc938983663d0>, name = "0895980480"]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [CHAP Success id=0x1 ""]
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: CHAP authentication succeeded
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: CHAP authentication succeeded
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [iPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [iPCP ConfReq id=0x1 <addr 78.107.38.5>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [iPCP ConfAck id=0x1 <addr 78.107.38.5>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [iPCP ConfNak id=0x1 <addr 128.73.101.83> <ms-dns1 213.234.192.7> <ms-dns2 85.21.192.5>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [iPCP ConfReq id=0x2 <addr 128.73.101.83> <ms-dns1 213.234.192.7> <ms-dns2 85.21.192.5>]
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: rcvd [iPCP ConfAck id=0x2 <addr 128.73.101.83> <ms-dns1 213.234.192.7> <ms-dns2 85.21.192.5>]
Thu Jan 26 13:13:14 2017 daemon.info xl2tpd[12165]: Disconnecting from 78.107.38.5, Local: 46484, Remote: 37689
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: Terminating pppd: sending TERM signal to pid 27939
Thu Jan 26 13:13:14 2017 daemon.info xl2tpd[12165]: Connection 37689 closed to 78.107.38.5, port 1701 (Goodbye!)
Thu Jan 26 13:13:14 2017 daemon.notice netifd: beeline (27938): 00 OK
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: local  IP address 128.73.101.83
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: remote IP address 78.107.38.5
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: primary   DNS address 213.234.192.7
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: secondary DNS address 85.21.192.5
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: Script /lib/netifd/ppp-up started (pid 27954)
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Terminating on signal 15
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Connect time 0.0 minutes.
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Sent 0 bytes, received 0 bytes.
Thu Jan 26 13:13:14 2017 daemon.warn pppd[27939]: Overriding mtu 1500 to 1460
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: PPPoL2TP options: debugmask 0
Thu Jan 26 13:13:14 2017 daemon.warn pppd[27939]: Overriding mru 1500 to mtu value 1460
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: sent [LCP TermReq id=0x2 "User request"]
Thu Jan 26 13:13:14 2017 daemon.notice pppd[27939]: Connection terminated.
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: get_call: can't find call 35299 in tunnel 46484
 (ref=0/0)
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: Waiting for 1 child processes...
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]:   script /lib/netifd/ppp-up, pid 27954
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: Script /lib/netifd/ppp-up finished (pid 27954), status = 0x0
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: Script /lib/netifd/ppp-down started (pid 27967)
Thu Jan 26 13:13:14 2017 daemon.debug pppd[27939]: Script /lib/netifd/ppp-down finished (pid 27967), status = 0x1
Thu Jan 26 13:13:14 2017 daemon.info pppd[27939]: Exit.
Thu Jan 26 13:13:14 2017 daemon.info xl2tpd[12165]: Can not find tunnel 21763 (refhim=0)
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: network_thread: unable to find call or tunnel to handle packet.  call = 8361, tunnel = 21763 Dumping.
Thu Jan 26 13:13:14 2017 daemon.info xl2tpd[12165]: Can not find tunnel 21763 (refhim=0)
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: network_thread: unable to find call or tunnel to handle packet.  call = 8361, tunnel = 21763 Dumping.
Thu Jan 26 13:13:14 2017 daemon.info xl2tpd[12165]: Can not find tunnel 21763 (refhim=0)
Thu Jan 26 13:13:14 2017 daemon.debug xl2tpd[12165]: network_thread: unable to find call or tunnel to handle packet.  call = 8361, tunnel = 21763 Dumping.
Thu Jan 26 13:13:15 2017 daemon.notice netifd: beeline (27938): 00 OK
Thu Jan 26 13:13:15 2017 daemon.notice netifd: Interface 'beeline' is now down
 
а дальше XL2TPD почему-то решает что ему нужно завершиться (хотя нет никаких причин для этого), а потом и PPPd падает за ним... 
Далее XL2TD в отсутствии PPP-интерфейса постоянно срет в лог:
 
Thu Jan 26 13:21:08 2017 daemon.notice netifd: Interface 'beeline' is setting up now
Thu Jan 26 13:21:08 2017 daemon.notice netifd: beeline (7401): 00 OK
Thu Jan 26 13:21:08 2017 daemon.notice xl2tpd[12165]: Connecting to host tp.internet.beeline.ru, port 1701
Thu Jan 26 13:21:08 2017 daemon.notice netifd: beeline (7401): 00 OK
Thu Jan 26 13:21:08 2017 daemon.info xl2tpd[12165]: control_finish: Connection closed to 78.107.38.7, port 1701 (Reached configured max-tunnels limit), Local: 55674, Remote: 15365
Thu Jan 26 13:21:08 2017 daemon.info xl2tpd[12165]: Will redial in 20 seconds
Thu Jan 26 13:21:08 2017 daemon.debug xl2tpd[12165]: Session 'l2tp-beeline' not up
Thu Jan 26 13:21:08 2017 daemon.notice netifd: beeline (7412): 01 Session 'l2tp-beeline' not up
Thu Jan 26 13:21:08 2017 daemon.notice netifd: beeline (7412): 00 OK
Thu Jan 26 13:21:08 2017 daemon.notice netifd: Interface 'beeline' is now down
 
 

А потом видимо по таймауту пытается снова поднять PPP и пройти аутентификацию... но!

 

Thu Jan 26 13:23:25 2017 daemon.notice xl2tpd[12165]: Connecting to host tp.internet.beeline.ru, port 1701
Thu Jan 26 13:23:25 2017 daemon.notice xl2tpd[12165]: Connection established to 78.107.38.5, 1701.  Local: 40992, Remote: 47423 (ref=0/0).
Thu Jan 26 13:23:25 2017 daemon.notice xl2tpd[12165]: Calling on tunnel 40992
Thu Jan 26 13:23:25 2017 daemon.notice xl2tpd[12165]: Call established with 78.107.38.5, Local: 21953, Remote: 45347, Serial: 644 (ref=0/0)
...
Thu Jan 26 13:23:25 2017 daemon.warn pppd[7571]: Overriding mru 1500 to mtu value 1460
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: sent [LCP ConfReq id=0x1 <mru 1460> <asyncmap 0x0> <magic 0xc69478df>]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: rcvd [LCP ConfReq id=0x1 <mru 1460> <asyncmap 0xa0000> <auth chap MD5> <magic 0x3a16508> <pcomp> <accomp>]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: sent [LCP ConfAck id=0x1 <mru 1460> <asyncmap 0xa0000> <auth chap MD5> <magic 0x3a16508> <pcomp> <accomp>]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: rcvd [LCP ConfAck id=0x1 <mru 1460> <asyncmap 0x0> <magic 0xc69478df>]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: PPPoL2TP options: debugmask 0
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: sent [LCP EchoReq id=0x0 magic=0xc69478df]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: rcvd [CHAP Challenge id=0x1 <05d37d11854064f1e5c2bf5c0714e5ea>, name = "bras10.perm"]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: sent [CHAP Response id=0x1 <d143b3612e58713faaf024d0e7119235>, name = "0895980480"]
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: rcvd [CHAP Failure id=0x1 "Internal error"]
Thu Jan 26 13:23:25 2017 daemon.info pppd[7571]: CHAP authentication failed: Internal error
Thu Jan 26 13:23:25 2017 daemon.err pppd[7571]: CHAP authentication failed
Thu Jan 26 13:23:25 2017 daemon.warn pppd[7571]: Overriding mtu 1500 to 1460
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: PPPoL2TP options: debugmask 0
Thu Jan 26 13:23:25 2017 daemon.warn pppd[7571]: Overriding mru 1500 to mtu value 1460
Thu Jan 26 13:23:25 2017 daemon.debug pppd[7571]: sent [LCP TermReq id=0x2 "Failed to authenticate ourselves to peer"]
Thu Jan 26 13:23:25 2017 daemon.notice pppd[7571]: Connection terminated.
Thu Jan 26 13:23:25 2017 daemon.info pppd[7571]: Exit.

Пройти аутентификацию он уже не может, и так по кругу.... судя по таблице маршрутизации, модуль действительно сам добавляет маршруты на DNS-ки и L2TP - правда при этом старые не подчищает...

Не хватает маршрута до vpn сервера через локальный шлюз.

1) Насколько я понял локальный шлюз у вас: 10.165.192.1

2) Ваш пермский брас (vpn сервер) bras255.perm.corbina.ru у меня пингуется как: 78.107.38.7. Проверьте. Если у вас также, для начала попробуйте прописать его.

3) Прописываете статический маршрут до этого айпишника 78.107.38.7 через 10.165.192.1

4) В конфиге вместо lns = tp.internet.beeline.ru  прописываете lns = 78.107.38.7

В общем всё. В результате такой нехитрой комбинации туннель не должен отваливаться. И все должно работать.

 

Для openwrt есть более универсальная конфигурация:

 

1) Обновляете все пакеты установленного OpenWRT

2) Устанавливаете след. пакеты:

kmod-l2tp

kmod-pppol2tp

ppp-mod-pppol2tp

resolveip

xl2tpd

3) Изменяте файл /etc/config/network:

 

config interface 'wan'

option ifname 'Название вашего интерфейса'

option proto 'dhcp'

option metric '25'

option reqopts 'routes msstaticroutes'

 

4) Создаете l2tp интерфейс:

 

config interface 'beeline'

option proto 'l2tp'

option server 'tp.internet.beeline.ru'

option mtu '1460'

option delegate '0'

option keepalive '20 5'

option username 'Ваш логин'

option password 'Ваш пароль'

option metric '1'

 

5) Создаете правило в фаервол для созданного интерфейса.

6) Перезагружаетесь

7) Ждете, после перезагрузки, l2tp соединение должно подняться автоматически.

Ключевой опцией данного конфига, которая позволяет получить необходимые маршруты здесь является:

option reqopts 'routes msstaticroutes'

Она позволяет получить те же маршруты, что получает windows.

 

а по поводу первого варианта, тоже странности есть... может я чего-то не так понимаю... в общем ситуация такая:

 

Я набросал скрипт для Ip-UP.D

 

1. Маршруты до DNS добавляет - все всегда хорошо резолвится;

2. А вот когда resolveip резолвит "tp.internet.beeline.ru", то:

 

        1.  Часто этот адрес резолвится по разному, может выдать адрес из сети "78.107.38.0" (78.107.38.1 - 78.107.38.7) или из другой сети (че-нить типа 85.21.0.241, 85.21.0.243) - их как минимум 3...

             видимо для уменьшения нагрузки выделено несколько VPN-серверов...

 

        2.  Иногда remote IP полученный после аутентификации может совпадать с отрезолвенным адресом - тогда соединения нет.

             Почему-то соединение поднимается только если в качестве VPN-сервера выступает именно "78.107.38.7" (если другой отрезолвенный адрес, то туннель держится, но пакеты не возвращаются при пинге внешних адресов). Но "tp.internet.beeline.ru" резолвится каждый раз по разному, и даже если в таблице маршрутизации присутствует "78.107.38.7", можно получить другой адрес...

 

3. Я не устанавливал адрес "78.107.38.7" статически в конфигурации XL2TPD и PPPD... пробовал его в hosts прописывать, и вручную маршрут добавлял... "tp.internet.beeline.ru" и ДНС-сервера резолвились и пинговались... туннель держался, но, через раз пропускал пинг внешних адресов... почему так? все по сути есть, то туннель работает не стабильно.

Изменено пользователем NikIv

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это кака-то жесть! Я же вам всё написал. Вы делаете по-своему. И не только вы. Итог известен. Начнем с простого. Что такое VPN? Ето сеть поверх другой сети. Следовательно для того чтобы существовало VPN соединение необходим какой-то транспорт. В нашем случае ето локальная сеть би. Поверх нее мы мутим VPN соединение. Таким образом, нам, как минимум, необходим один маршрут - до самого VPN сервера. Шобы было понятно по какому пути бежать пакетам. А вы здеся писали, что дескать маршруты локальной сети "не подчищаются". Как же так? Как же без них? Так вот, по минимуму, у нас должен быть один маршрут до VPN сервера, плюс маршрут, который нам предоставит vpn сервак для выхода в сеть Инет, т.е. в нашем случае это будет дефолтный маршрут.  Что происходит в вашем случае? Вы замещаете дефолтный маршрут в локальной сети маршрутом который вам предоставил vpn сервер и... всё... больше никаких маршрутов у вас нет. Таким образом вы обрубили себе "сук на котором сидите". Ваш туннель "повис в воздухе". PPPD отправляет кучу LCP EchoReq и, что естественно, не получает ни одного ответа. Затем отправляет LCP TermReq тоже непонятно кому, также не получает ни одного LCP TermAck для подтверждения разрыва. Соединение со своей стороны вы с грехом пополам завершаете, однако со стороны vpn сервера оно зависает, ибо все ваши LCP EchoReq и LCP TermReq так и не дошли до сервера. Затем,  ваш девайс по таймеру пытается снова поднять vpn, однако с одними и теми же учетными данными можно поднять только один туннель, а у вас он уже "висит" со стороны сервера и ваше "устройство" безуспешно пытается поднять его снова. После повторных посылов ваших логин/пароля оно получает CHAP authentication failed.

Я вам указал, что минимально необходимо сделать и для бубунту и для опенврт. Вы же всё на своем. Помимо отсутствия основного маршрута, вы продолжаетет использовать запись tp.internet.beeline.ru. Для ее использования есть ешо несколько нюансов:

1) за ентой записью скрываются,  как вы правильно предположили, сразу несколько серверов

2) для того шобы енту запись правильно отрезолвить необходимо использовать правильные DNS сервера, а их аж 4.

3) два DNS сервера вам выдаются в локальной сети. Не знаю как у вас, в большинстве регионов енто такие адреса 85.21.192.3, 213.234.192.8. Их основная и, в последнее время, единственная задача правильно отрезолвить енту запись tp.internet.beeline.ru. Они вам и выдають результат 78.107.38.1 - 78.107.38.7

4) плюс два  DNS сервера вам выдаются при организации VPN соединения, енто 85.21.192.5 и 213.234.192.7. Их задача резолвить вам адреса в Интернете. НО... они непральна будут резолвить вам запись tp.internet.beeline.ru, это не их задача. В результате вы получите "че-нить типа 85.21.0.241, 85.21.0.243", а на самом деле это аж московские vpn сервера и к вам они никакого отношения не имеють.

Соответственно, чтобы организовать правильную работу стандартной записи вида tp.internet.beeline.ru необходимы корректные маршруты до сети VPN и DNS серверов, а также четкая работа скриптов, чего у вас не наблюдается. Вы прописали один маршрут, до 78.107.38.7, вот он и работает. Да и то, только тогда, когда vpn соединение будет организовано именно с ним, а это,  как вы сами понимаете, происходит совсем не часто.

Ышо, параметр MRU=1500, а MTU может варьироваться от 1400 до 1460, в зависимости от региона. Подбирается эмпирически.

И в итоге мы имеем:

1) для опенврт - есть уже проверенная конфигурация (не забудьте о фаерволе), а в ней волшебная опция 'routes msstaticroutes', ну и метрика на всякий случай

2) для бубунту - начните с простого, уберите запись tp.internet.beeline.ru и пропишите везде один сервак и соответствующий маршрут к нему. В этом случае не потребуются ни dns, ни маршруты до этих dns, ни маршруты до целой сети vpn серверов. Помимо этого определите параметр MTU для нормально открытия и пингования сайтов.

Вот и всё.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас