LINUX.ORG.RU
решено ФорумAdmin

xl2tpd при подключении не обновляет адрес хоста

 , , , ,


0

1

Есть сервер CentOS. На нем поднимается подключение L2tp/IpSec как клиент. Strongswan + xl2tpd

Подключение не по IP, а по имени хоста. Имя хоста имеет 3 штуки A записей DNS

Сначала создается подключение IPsec. Strongswan обращается к dns и по первому же ответу от сервера DNS поднимает соединение.
Потом поднимается подключение L2tp. Должен перебирать DNS записи хоста, пока не сможет подключиться (т.е. только тот ip на котором активно подключение ipsec).

Так вот проблема:
на тестовой машине xl2tpd отрабатывает правильно. При каждой новой попытке берет новый ip
на проде все время берет один и тот же ip при новых попытках.
Меняет ip по очереди только при перезапуске сервиса xl2tpd.
настройки strongswan и xl2tpd полностью идентичные. немного отличается версия xl2tpd сервиса, на проде новее!
из-за чего это может быть?

есть отличие в том что!
на тесте xl2tpd скомпилирован без модуля ядра,
а на проде с модулем ядра

Но не знаю это ли влияет, и пока-что не разбирался как это исправлять

nikon_ww
() автор топика

Проверь что на хосте адрес не кэшируется. Если делать nslookup ip чередуются? В случае если адрес не доступен переключение на следующий ip переходит?

anonymous
()

Должен перебирать DNS записи хоста, пока не сможет подключиться (т.е. только тот ip на котором активно подключение ipsec).

Эм реально должен? Это где-то описано в документации xl2tpd?
PS Понимаете, есть такая странная штука, что ipsec ничего не знает про ваш l2tp, так же как и l2tp ничего не знает про ваш ipsec. Это «совершенно два разных человека», первый поднимает транспорт не более того, а если «кто-то» согласно прописанным правилам попадет (без разницы это может быть и ssh как пример), то пойдет через этот транспорт, если нет, то извините, всё согласно остальным правилам и таблицы роутинга.

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 3)
Ответ на: комментарий от anc

в том и прикол, что не важно что l2tp не знает про ipsec.
В конфиге указано поднимать только шифрованное соединение. Т.е. он просто не может поднять соединение на IP до которого не поднят канал.

При неудачной попытке соединения l2tp на тестовой машине, xl2tpd переходит к попытке соединения с другим IP который указан в следующей A записи в DNS.

При неудачной попытке соединения l2tp на проде, он продолжает попытки соединения на тот же IP.

nslookup на обоих машинах показывает весь правильный список IP для нужного имени хоста.

nikon_ww
() автор топика
Ответ на: комментарий от anonymous

у меня при тесте все адреса доступны, но ipsec поднят только с одним, и только на него l2tp удачно может подключиться

nikon_ww
() автор топика

Какая хоть Cent OS напишите. Но на всякий случай кастану intelfx как действительно знатока systemd и другой «не баш лапши».

anc ★★★★★
()
Ответ на: комментарий от nikon_ww

В конфиге указано поднимать только шифрованное соединение.

Это в каком конфиге я стесняюсь спросить? Огласите весь список пжлста

anc ★★★★★
()
Ответ на: комментарий от anc

Эээ, а каким я боком к l2tp?

А вообще смешно, я вот буквально 5 минут назад закончил настраивать себе VPN до работы как раз на ipsec/l2tp, и тут ты меня кастуешь в тред про ipsec/l2tp. %)

intelfx ★★★★★
()
Ответ на: комментарий от anc

на сервере l2tp. На Mikrotik В профайле указано encryption required

nikon_ww
() автор топика
Ответ на: комментарий от intelfx

Когда настройка по IP, то все поднимается нормально естесственно.
Но когда настроил по FQDN, то почему-то на тесте все пошло как хочется, а на проде нет.

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

Но раз на тесте перебирает ip нормально, значит в на проде как-то это возможно пофиксить.

need help)

nikon_ww
() автор топика
Ответ на: комментарий от intelfx

Простите если зря побеспокоил. Возникла мысль что где-то не так в юнитах systemd может быть с последовательностью вызовов демонов или там не предусмотрели. На «баш лапше» это решалось, а вот как решили в systemd я не знаю. Поэтому и кастанул :)

anc ★★★★★
()
Ответ на: комментарий от intelfx

На тесте nsswitch.conf

#
# /etc/nsswitch.conf
#
# An example Name Service Switch config file. This file should be
# sorted with the most-used services at the beginning.
#
# The entry '[NOTFOUND=return]' means that the search for an
# entry should stop if the search in the previous entry turned
# up nothing. Note that if the search failed due to some other reason
# (like no NIS server responding) then the search continues with the
# next entry.
#
# Valid entries include:
#
#       nisplus                 Use NIS+ (NIS version 3)
#       nis                     Use NIS (NIS version 2), also called YP
#       dns                     Use DNS (Domain Name Service)
#       files                   Use the local files
#       db                      Use the local database (.db) files
#       compat                  Use NIS on compat mode
#       hesiod                  Use Hesiod for user lookups
#       [NOTFOUND=return]       Stop searching if not found so far
#

# To use db, put the "db" in front of "files" for entries you want to be
# looked up first in the databases
#
# Example:
#passwd:    db files nisplus nis
#shadow:    db files nisplus nis
#group:     db files nisplus nis

passwd:     files
shadow:     files
group:      files

#hosts:     db files nisplus nis dns
hosts:      files dns

# Example - obey only what nisplus tells us...
#services:   nisplus [NOTFOUND=return] files
#networks:   nisplus [NOTFOUND=return] files
#protocols:  nisplus [NOTFOUND=return] files
#rpc:        nisplus [NOTFOUND=return] files
#ethers:     nisplus [NOTFOUND=return] files
#netmasks:   nisplus [NOTFOUND=return] files

bootparams: nisplus [NOTFOUND=return] files

ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files

netgroup:   nisplus

publickey:  nisplus

automount:  files nisplus
aliases:    files nisplus

на проде

#
# /etc/nsswitch.conf
#
# An example Name Service Switch config file. This file should be
# sorted with the most-used services at the beginning.
#
# The entry '[NOTFOUND=return]' means that the search for an
# entry should stop if the search in the previous entry turned
# up nothing. Note that if the search failed due to some other reason
# (like no NIS server responding) then the search continues with the
# next entry.
#
# Valid entries include:
#
#       nisplus                 Use NIS+ (NIS version 3)
#       nis                     Use NIS (NIS version 2), also called YP
#       dns                     Use DNS (Domain Name Service)
#       files                   Use the local files
#       db                      Use the local database (.db) files
#       compat                  Use NIS on compat mode
#       hesiod                  Use Hesiod for user lookups
#       [NOTFOUND=return]       Stop searching if not found so far
#

# To use db, put the "db" in front of "files" for entries you want to be
# looked up first in the databases
#
# Example:
#passwd:    db files nisplus nis
#shadow:    db files nisplus nis
#group:     db files nisplus nis

passwd:     files sss
shadow:     files sss
group:      files sss
#initgroups: files sss

#hosts:     db files nisplus nis dns
hosts:      files dns myhostname

# Example - obey only what nisplus tells us...
#services:   nisplus [NOTFOUND=return] files
#networks:   nisplus [NOTFOUND=return] files
#protocols:  nisplus [NOTFOUND=return] files
#rpc:        nisplus [NOTFOUND=return] files
#ethers:     nisplus [NOTFOUND=return] files
#netmasks:   nisplus [NOTFOUND=return] files

bootparams: nisplus [NOTFOUND=return] files

ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files sss

netgroup:   nisplus sss

publickey:  nisplus

automount:  files nisplus sss
aliases:    files nisplus

nikon_ww
() автор топика
Ответ на: комментарий от intelfx

resolv.conf

на тесте

; generated by /sbin/dhclient-script
nameserver 192.168.0.1

на проде

# Generated by NetworkManager
search mydomain.com.ua
nameserver 213.133.99.99
nameserver 213.133.100.100
nameserver 213.133.98.98

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

Ну вот тебе и разница.

На «тесте» в твоей сети есть локальный кэширующий ресолвер (судя по 192.168.0.1, это dnsmasq на роутере), который и возвращает тебе каждый раз новый адрес. А на «проде» ты напрямую обращаешься к DNS-серверам твоего видимо что провайдера.

intelfx ★★★★★
()
Ответ на: комментарий от anc

на тесте CentOS release 6.10 (Final)

на проде CentOS Linux release 7.7.1908 (Core)

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

к кому в таком случае мне обратиться?

К себе, конечно же. Подними тот же dnsmasq локально.

Но вообще я бы не стал полагаться на такое поведение, dnsmasq или нет.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Но вообще я бы не стал полагаться на такое поведение, dnsmasq или нет.

т.е. вы думаете, это не правильное или не предумышленное поведение xl2tpd, когда он выбирает при каждой попытке новый ip?

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

вы думаете, это не правильное или не предумышленное поведение xl2tpd

А ты вообще читал, что я тебе ответил?

Это поведение не xl2tpd, а ресолвера.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

да. логично. туплю просто.

и все-таки вы имеете в виду, что не полагаться на такое поведение ресолвера?

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

Вот и возвращаемся к началу

Эм реально должен? Это где-то описано в документации xl2tpd?

И теперь вопрос к intelfx Вы написали

я вот буквально 5 минут назад закончил настраивать себе VPN до работы как раз на ipsec/l2tp

Как говориться «я не нумизмат но действительно интересно», реально в systemd юнитах как предусмотрен вариант описанный в ОП или нет? Ведь правда сама задача часто востребованная, однако у ТС возникают вполне обоснованные проблемы, и приплетать сюда варианты резолвенга это так себе, оно не относиться к самой задаче. Задача стартануть ipsec и по этому же ip отправить позже стартовавший xl2tpd.

anc ★★★★★
()
Ответ на: комментарий от intelfx

мне все-таки кажется что проблема не в ресолвере. т.к. при ping mydomain, при каждом новом запросе отдает новый ip

такое впечатление, что xl2tpd кэширует у себя ip вместо того, чтобы каждый раз запрашивать у ресолвера

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

Верно.

Я только что проверил — dnsmasq действительно ведёт себя именно так, как ты наблюдаешь, но в его документации это не написано.

intelfx ★★★★★
()
Ответ на: комментарий от nikon_ww

мне все-таки кажется что проблема не в ресолвере. т.к. при ping mydomain, при каждом новом запросе отдает новый ip

такое впечатление, что xl2tpd кэширует у себя ip вместо того, чтобы каждый раз запрашивать у ресолвера

Не могу воспроизвести. Но всё может быть. Если ты видишь что-то, что противоречит моим словам — значит, жди кого-нибудь, кто разбирается в центоси и сможет сказать точно, в чём дело.

intelfx ★★★★★
()
Ответ на: комментарий от nikon_ww

т.е. вы думаете, это не правильное или не предумышленное поведение xl2tpd, когда он выбирает при каждой попытке новый ip?

Вы читать умеете? Я вам написал «это совсем два разных человека». С таким же успехом можно писать что ssh/curl/ftp/etc «выбирает новый ip» к ipsec тут никакого отношения от слова совсем.

anc ★★★★★
()
Ответ на: комментарий от anc

Это такой троллинг или что? Каким боком здесь вообще systemd?

однако у ТС возникают вполне обоснованные проблемы, и приплетать сюда варианты резолвенга это так себе, оно не относиться к самой задаче

Ресолвинг не относится к задаче о том, почему на двух машинах адрес ресолвится по-разному? И действительно, как же я не подумал.

intelfx ★★★★★
()

У dnsmasq как раз и происходит round-roubin, на каждый запрос отдаётся следующий ip. Ставишь локально dnsmasq и отправляй запросы на него Интересно systemd-resolver как себя ведёт.

anonymous
()
Ответ на: комментарий от nikon_ww

мне важно, что xl2tpd не перебирает ip из dns записей

Ну почитайте его код, что еще сказать... есть там round robin или нет.

anc ★★★★★
()
Ответ на: комментарий от intelfx

так ресолвится же одинаково.

на тесте

dig net.mydomain.com.ua

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.3 <<>> net.mydomain.com.ua
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11645
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;net.mydomain.com.ua.            IN      A

;; ANSWER SECTION:
net.mydomain.com.ua.     1199    IN      A       77.120.xxx.144
net.mydomain.com.ua.     1199    IN      A       82.117.xxx.121
net.mydomain.com.ua.     1199    IN      A       109.87.xxx.24

;; Query time: 78 msec
;; SERVER: 192.168.0.1#53(192.168.0.1)
;; WHEN: Fri Mar 13 16:22:00 2020
;; MSG SIZE  rcvd: 84

на проде

dig net.mydomain.com.ua

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> net.mydomain.com.ua
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15114
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;net.mydomain.com.ua.            IN      A

;; ANSWER SECTION:
net.mydomain.com.ua.     439     IN      A       82.117.xxx.121
net.mydomain.com.ua.     439     IN      A       77.120.xxx.144
net.mydomain.com.ua.     439     IN      A       109.87.xxx.24

;; Query time: 0 msec
;; SERVER: 213.133.99.99#53(213.133.99.99)
;; WHEN: Fri Mar 13 16:21:52 EET 2020
;; MSG SIZE  rcvd: 95

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

Что значит «одинаково»? Даже здесь видно, что порядок записей разный на двух машинах. Значит, хотя бы в одном из случаев записи «перетасовываются».

Несколько раз попробуй вызвать и там, и там.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Это такой троллинг или что? Каким боком здесь вообще systemd?

Ни в коем разе! В кои-то веки даже не пытаюсь потопить. Наоборот думал мало ли что-то из каробки сделали для двух часто используемых демонов.

anc ★★★★★
()
Ответ на: комментарий от intelfx

на тесте

[root@cos-test etc]# ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=57 time=15.2 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 703ms
rtt min/avg/max/mdev = 15.238/15.238/15.238/0.000 ms

[root@cos-test etc]# ping net.xxx.com.ua
PING net.xxx.com.ua (109.87.xxx.24) 56(84) bytes of data.
64 bytes from 24.xxx.87.109.xxx.net (109.87.xxx.24): icmp_seq=1 ttl=60 time=1.30 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 571ms
rtt min/avg/max/mdev = 1.309/1.309/1.309/0.000 ms

[root@cos-test etc]# ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=57 time=14.9 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 647ms
rtt min/avg/max/mdev = 14.954/14.954/14.954/0.000 ms

[root@cos-test etc]# ping net.xxx.com.ua
PING net.xxx.com.ua (82.117.xxx.121) 56(84) bytes of data.
64 bytes from 82-117-xxx-121.gpon.sta-BE.xxx.ua (82.117.xxx.121): icmp_seq=1 ttl=56 time=20.6 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 548ms
rtt min/avg/max/mdev = 20.667/20.667/20.667/0.000 ms

на проде

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=50 time=40.0 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 40.046/40.046/40.046/0.000 ms

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=50 time=40.0 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 40.067/40.067/40.067/0.000 ms

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (109.87.xxx.24) 56(84) bytes of data.
64 bytes from 24.xxx.87.109.xxx.net (109.87.xxx.24): icmp_seq=1 ttl=52 time=46.4 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 46.455/46.455/46.455/0.000 ms

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=50 time=40.0 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 40.088/40.088/40.088/0.000 ms

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (77.120.xxx.144) 56(84) bytes of data.
64 bytes from 77-120-xxx-144.dynamic-FTTB.xxx.com (77.120.xxx.144): icmp_seq=1 ttl=50 time=40.0 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 40.045/40.045/40.045/0.000 ms

[nikolay@mail log]$ ping net.xxx.com.ua
PING net.xxx.com.ua (82.117.xxx.121) 56(84) bytes of data.
64 bytes from 82-117-xxx-121.gpon.sta-BE.xxx.ua (82.117.xxx.121): icmp_seq=1 ttl=54 time=37.7 ms
^C
--- net.xxx.com.ua ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 37.739/37.739/37.739/0.000 ms

nikon_ww
() автор топика
Ответ на: комментарий от intelfx

на тесте

[root@cos-test log]# dig net.xxx.com.ua +short A
82.117.xxx.121
109.87.xxx.24
77.120.xxx.144
[root@cos-test log]# dig net.xxx.com.ua +short A
77.120.xxx.144
109.87.xxx.24
82.117.xxx.121
[root@cos-test log]# dig net.xxx.com.ua +short A
82.117.xxx.121
77.120.xxx.144
109.87.xxx.24

на проде

[nikolay@mail log]$ dig net.xxx.com.ua +short A
77.120.xxx.144
82.117.xxx.121
109.87.xxx.24
[nikolay@mail log]$ dig net.xxx.com.ua +short A
77.120.xxx.144
82.117.xxx.121
109.87.xxx.24
[nikolay@mail log]$ dig net.xxx.com.ua +short A
109.87.xxx.24
77.120.xxx.144
82.117.xxx.121
nikon_ww
() автор топика

LOG xl2tpd

на тесте

Mar 13 11:57:04 cos-test xl2tpd[1640]: [b]Connecting to host net.xxx.com.ua[/b], port 1701
Mar 13 11:57:04 cos-test xl2tpd[1640]: Connection established to [b]82.117.xxx.121[/b], 1701.  Local: 46216, Remote: 167 (ref=0/0).
Mar 13 11:57:04 cos-test xl2tpd[1640]: Calling on tunnel 46216
Mar 13 11:57:04 cos-test xl2tpd[1640]: Call established with 82.117.xxx.121, Local: 8894, Remote: 1, Serial: 1 (ref=0/0)
Mar 13 11:57:04 cos-test xl2tpd[1640]: handle_avps: Bad exit status handling attribute 1 (Result Code) on mandatory packet.
Mar 13 11:57:04 cos-test xl2tpd[1640]: call_close: Call 8894 to 82.117.xxx.121 disconnected
Mar 13 11:57:04 cos-test xl2tpd[1640]: handle_avps: Bad exit status handling attribute 1 (Result Code) on mandatory packet.
Mar 13 11:57:04 cos-test xl2tpd[1640]: Connection 167 closed to 82.117.xxx.121, port 1701 (Result Code: expected at least 10, got 8)

Mar 13 11:57:34 cos-test xl2tpd[1640]: [b]Connecting to host net.xxx.com.ua[/b], port 1701
Mar 13 11:57:34 cos-test xl2tpd[1640]: Connection established to [b]109.87.xxx.24[/b], 1701.  Local: 54374, Remote: 168 (ref=0/0).
Mar 13 11:57:34 cos-test xl2tpd[1640]: Calling on tunnel 54374
Mar 13 11:57:34 cos-test xl2tpd[1640]: Call established with 109.87.xxx.24, Local: 15870, Remote: 1, Serial: 2 (ref=0/0)
Mar 13 11:57:34 cos-test xl2tpd[1640]: handle_avps: Bad exit status handling attribute 1 (Result Code) on mandatory packet.
Mar 13 11:57:34 cos-test xl2tpd[1640]: call_close: Call 15870 to 109.87.xxx.24 disconnected
Mar 13 11:57:34 cos-test xl2tpd[1640]: handle_avps: Bad exit status handling attribute 1 (Result Code) on mandatory packet.
Mar 13 11:57:34 cos-test xl2tpd[1640]: Connection 168 closed to 109.87.xxx.24, port 1701 (Result Code: expected at least 10, got 8)

Mar 13 11:58:04 cos-test xl2tpd[1640]: [b]Connecting to host net.xxx.com.ua[/b], port 1701
Mar 13 11:58:04 cos-test xl2tpd[1640]: Connection established to [b]77.120.xxx.144[/b], 1701.  Local: 11772, Remote: 169 (ref=0/0).
Mar 13 11:58:04 cos-test xl2tpd[1640]: Calling on tunnel 11772
Mar 13 11:58:04 cos-test xl2tpd[1640]: Call established with 77.120.xxx.144, Local: 44920, Remote: 1, Serial: 3 (ref=0/0)

на проде

Mar 13 08:18:00 mail xl2tpd: xl2tpd[1600]: [b]Connecting to host net.xxx.com.ua[/b], port 1701
Mar 13 08:18:00 mail xl2tpd: xl2tpd[1600]: Connection established to [b]82.117.xxxx.121[/b], 1701.  Local: 27844, Remote: 157 (ref=0/0).
Mar 13 08:18:00 mail xl2tpd: xl2tpd[1600]: Calling on tunnel 27844
Mar 13 08:18:00 mail xl2tpd: xl2tpd[1600]: Call established with [b]82.117.xxx.121[/b], Local: 1640, Remote: 1, Serial: 1 (ref=0/0)
Mar 13 08:18:00 mail xl2tpd: xl2tpd[1600]: control_finish: Connection closed to 82.117.xxx.121, serial 1 ()
Mar 13 08:18:30 mail xl2tpd: xl2tpd[1600]: Calling on tunnel 27844
Mar 13 08:18:30 mail xl2tpd: xl2tpd[1600]: Call established with [b]82.117.xxx.121[/b], Local: 35460, Remote: 2, Serial: 2 (ref=0/0)
Mar 13 08:18:30 mail xl2tpd: xl2tpd[1600]: control_finish: Connection closed to 82.117.xxx.121, serial 2 ()
Mar 13 08:19:00 mail xl2tpd: xl2tpd[1600]: Calling on tunnel 27844
Mar 13 08:19:00 mail xl2tpd: xl2tpd[1600]: Call established with [b]82.117.xxx.121[/b], Local: 52318, Remote: 3, Serial: 3 (ref=0/0)
Mar 13 08:19:00 mail xl2tpd: xl2tpd[1600]: control_finish: Connection closed to 82.117.xxx.121, serial 3 ()
Mar 13 08:19:26 mail xl2tpd: xl2tpd[1600]: Calling on tunnel 27844
Mar 13 08:19:26 mail xl2tpd: xl2tpd[1600]: Call established with 82.117.xxx.121, Local: 56878, Remote: 4, Serial: 4 (ref=0/0)
Mar 13 08:19:26 mail xl2tpd: xl2tpd[1600]: control_finish: Connection closed to 82.117.xxx.121, serial 4 ()
Mar 13 08:19:30 mail xl2tpd: xl2tpd[1600]: Calling on tunnel 27844
Mar 13 08:19:30 mail xl2tpd: xl2tpd[1600]: Call established with 82.117.xxx.121, Local: 57968, Remote: 5, Serial: 5 (ref=0/0)
Mar 13 08:19:30 mail xl2tpd: xl2tpd[1600]: control_finish: Connection closed to 82.117.xxx.121, serial 5 ()
Mar 13 08:19:39 mail xl2tpd: xl2tpd[1600]: death_handler: Fatal signal 15 received
Mar 13 08:19:39 mail xl2tpd: xl2tpd[1600]: Connection 157 closed to 82.117.xxx.121, port 1701 (Server closing)
nikon_ww
() автор топика
Ответ на: LOG xl2tpd от nikon_ww

Прикольно.

Так, окей, судя по этим логам, дело действительно не в ресолвере (или не только в нём). Ты был прав — судя по всему, новый xl2tpd ресолвит только один раз (ну или такое ощущение складывается из логов).

Конфиги там одинаковые?

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

там еще кажется разница есть в том, что у одного сервиса есть модуль работы с ядром, а у другого нет.
В этом может быть причина?

nikon_ww
() автор топика
Ответ на: LOG xl2tpd от nikon_ww

В конфиге xl2tp могут быть подобные параметры

autodial = yes
redial = yes

Или они по умолчанию yes, их выключить.
Предполагаю тогда сервис грохнется и сам рестартанет, это к юнитам systemd вопрос. Если действительно так то рано или поздно после нескольких рестартов вы получите профит. Но конечно все это через попу. Зато автоматизировано.

anc ★★★★★
()
Ответ на: комментарий от anc

redial = yes

есть в конфиге (в обоих естественно)

а как без этого параметра он должен переподключаться?
объясните пожалуйста теорию

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

я вот о чем:

на проде

Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Using l2tp kernel support.
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: xl2tpd version xl2tpd-1.3.14 started on mail.xxx.com.ua PID:1600
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Forked by Scott Balmos and David Stipp, (C) 2001
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Inherited by Jeff McAdams, (C) 2002
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Forked again by Xelerance (www.xelerance.com) (C) 2006-2016
Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Listening on IP address 0.0.0.0, port 1701

на тесте

Mar 13 11:57:03 cos-test xl2tpd[1640]: L2TP kernel support not detected (try modprobing l2tp_ppp and pppol2tp)
Mar 13 11:57:03 cos-test xl2tpd[1640]: xl2tpd version xl2tpd-1.3.8 started on cos-test PID:1640
Mar 13 11:57:03 cos-test xl2tpd[1640]: Written by Mark Spencer, Copyright (C) 1998, Adtran, Inc.
Mar 13 11:57:03 cos-test xl2tpd[1640]: Forked by Scott Balmos and David Stipp, (C) 2001
Mar 13 11:57:03 cos-test xl2tpd[1640]: Inherited by Jeff McAdams, (C) 2002
Mar 13 11:57:03 cos-test xl2tpd[1640]: Forked again by Xelerance (www.xelerance.com) (C) 2006-2016
Mar 13 11:57:03 cos-test xl2tpd[1640]: Listening on IP address 0.0.0.0, port 1701

nikon_ww
() автор топика
Ответ на: комментарий от nikon_ww

А это простите зачем?

Mar 13 08:17:48 mail xl2tpd: xl2tpd[1600]: Listening on IP address 0.0.0.0, port 1701

Если он у вас согласно ОП клиент.

anc ★★★★★
()
Ответ на: комментарий от nikon_ww

modprobe l2tp_ppp и modprobe pppol2tp на тесте. Странно хотите получить одинаковый результат тестируя разные версии программ на разных ОС. По changelog там много чего навертели между версиями. Если добавить в hosts ip отличающийся от подключенного уже, то переподключение должно произойти на другой ip при запоминание ip программой? Наверно лучше спросить на github поведение, ну или взять третий дистрибутив посмотреть как там будет, правда проблему не решит.

anonymous
()
Ответ на: комментарий от nikon_ww

а как без этого параметра он должен переподключаться?

Да вот я не знаю systemd его рестартит автоматом при падении или нет.

anc ★★★★★
()
19 июня 2020 г.

Сделал скрипт, который перегружает сервис и выполняет подключение l2tp

str1=$(ifconfig | grep "ip адрес который должен получить при подключении l2tp")
if [ -n "$str1" ]
 then
   echo "IPSec connected"
 else
   str2=$(cat /proc/net/nf_conntrack | grep 500 | awk '{print $7}' | cut -c 5-)
   str3=$(cat /proc/net/nf_conntrack | grep 1701 | awk '{print $7}' | cut -c 5-)
   if [ "$str2" = "$str3" ]
        then
                echo "Check one more time"
        else
                service xl2tpd restart
                sleep 10
                bash xl2tpd.sh
   fi
fi
nikon_ww
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.