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

«Виснут» все https соединения

 ,


0

2

Приветствую! Извиняюсь за такое название темы. Подробное описание проблемы. Есть свежеустановленная система ubuntu server 20.04.4 lts в качестве nas. На этой системе не возможно подключиться к сайтам, использующие https, командой wget или curl:

root@nas:/home/user/temp# wget https://ya.ru
--2022-03-14 21:33:14--  https://ya.ru/
Resolving ya.ru (ya.ru)... failed: Temporary failure in name resolution.
wget: unable to resolve host address ‘ya.ru’
root@nas:/home/user/temp# ping ya.ru -c3
PING ya.ru(ya.ru (2a02:6b8::2:242)) 56 data bytes
64 bytes from ya.ru (2a02:6b8::2:242): icmp_seq=1 ttl=55 time=27.5 ms
64 bytes from ya.ru (2a02:6b8::2:242): icmp_seq=2 ttl=55 time=27.4 ms
64 bytes from ya.ru (2a02:6b8::2:242): icmp_seq=3 ttl=55 time=27.5 ms

--- ya.ru ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 27.437/27.492/27.528/0.039 ms
root@nas:/home/user/temp# wget https://ya.ru
--2022-03-14 21:34:26--  https://ya.ru/
Resolving ya.ru (ya.ru)... 2a02:6b8::2:242, 87.250.250.242
Connecting to ya.ru (ya.ru)|2a02:6b8::2:242|:443... connected.
^C
root@nas:/home/user/temp# wget https://www.google.com
--2022-03-14 21:43:54--  https://www.google.com/
Resolving www.google.com (www.google.com)... failed: Temporary failure in name resolution.
wget: unable to resolve host address ‘www.google.com’
root@nas:/home/user/temp# ping www.google.com -c3
PING www.google.com(ws-in-x6a.1e100.net (2a00:1450:400c:c00::6a)) 56 data bytes
64 bytes from ws-in-f106.1e100.net (2a00:1450:400c:c00::6a): icmp_seq=1 ttl=58 time=62.4 ms
64 bytes from ws-in-f106.1e100.net (2a00:1450:400c:c00::6a): icmp_seq=2 ttl=58 time=62.3 ms
64 bytes from ws-in-f106.1e100.net (2a00:1450:400c:c00::6a): icmp_seq=3 ttl=58 time=62.4 ms

--- www.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 62.323/62.377/62.420/0.040 ms
root@nas:/home/user/temp# wget https://www.google.com
--2022-03-14 21:44:38--  https://www.google.com/
Resolving www.google.com (www.google.com)... 2a00:1450:400c:c00::67, 2a00:1450:400c:c00::68, 2a00:1450:400c:c00::63, ...
Connecting to www.google.com (www.google.com)|2a00:1450:400c:c00::67|:443... connected.
^C
root@nas:/home/user/temp# wget http://www.google.com
--2022-03-14 21:51:00--  http://www.google.com/
Resolving www.google.com (www.google.com)... 2a00:1450:400c:c00::67, 2a00:1450:400c:c00::68, 2a00:1450:400c:c00::63, ...
Connecting to www.google.com (www.google.com)|2a00:1450:400c:c00::67|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 16942 (17K) [text/html]
Saving to: ‘index.html’

index.html                      100%[=======================================================>]  16,54K  --.-KB/s    in 0s

2022-03-14 21:51:01 (224 MB/s) - ‘index.html’ saved [16942/16942]
^C - нажимал сочетание ctrl+c, т.к. уже к тому времени проходило 5-10 мин. Но если к сайту обращаться по http, то всё работает. В этой системе 3 сетевых карты:
Intel Corporation Ethernet Controller 10G X550T
Intel Corporation Ethernet Connection I217-V
Qualcomm Atheros AR8161 Gigabit Ethernet
Со всеми такая проблема. Интернет этот nas получает от другого маршрутизатора на тоже ubuntu server (та же версия). С другими клиентами проблем нет, в том числе и на самом маршрутизаторе. На клиенте (w10) и маршрутизаторе такая же сетевая 10g карта. Ранее на этом nas была установлена openmediavault 5 (на debian 10 кажется) и работало нормально, т.е. железо исправно. Патч-корд тоже менял. Так же уменьшал величину mtu до 1400 (с 1500), не помогло, ip(6)tables сбрасывал правила, которых и так не было, при попытке выполнить ip(6)tables-save, ничего не выводилось. Сейчас выглядит так:
root@nas:~# iptables-save
# Generated by iptables-save v1.8.4 on Tue Mar 15 21:09:28 2022
*mangle
:PREROUTING ACCEPT [3171361:151322853]
:INPUT ACCEPT [3171359:151322813]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [3860734:8170267841]
:POSTROUTING ACCEPT [3860744:8170269349]
COMMIT
# Completed on Tue Mar 15 21:09:28 2022
# Generated by iptables-save v1.8.4 on Tue Mar 15 21:09:28 2022
*raw
:PREROUTING ACCEPT [3226639:153877829]
:OUTPUT ACCEPT [3920836:8338660083]
COMMIT
# Completed on Tue Mar 15 21:09:28 2022
# Generated by iptables-save v1.8.4 on Tue Mar 15 21:09:28 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
# Completed on Tue Mar 15 21:09:28 2022
# Generated by iptables-save v1.8.4 on Tue Mar 15 21:09:28 2022
*filter
:INPUT ACCEPT [3296077:157105730]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [3989630:8547160348]
COMMIT
# Completed on Tue Mar 15 21:09:28 2022
Установленный на этой системе (еле получилось это сделать, т.к. не удалалось выполнить wget -q -O- http://www.webmin.com/jcameron-key.asc | sudo apt-key add) установлен webmin, к нему подключение так же работает частично, что-нибудь не загружается (элементы интерфейса). Уже не знаю что ещё можно придумать.


Temporary failure in name resolution.

Смотрите что у вас приписано dns сервером и если это ваше разбирайтесь с ним или пропишите что-то другое.

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

dns получает по dhcp:

root@nas:/home/user/temp# cat /run/systemd/resolve/resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients directly to
# all known uplink DNS servers. This file lists all configured search domains.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 192.168.2.1
nameserver fe80::xxxx:xxxx:xxxx:f11%4
nameserver fe80::yyyy:yyyy:yyyy:b8d0%4
search router.lan
root@nas:/home/user/temp# resolvectl status
Global
       LLMNR setting: no
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

Link 5 (enp1s0f1)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 4 (enp1s0f0)
      Current Scopes: DNS
DefaultRoute setting: yes
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
  Current DNS Server: fe80::xxxx:xxxx:xxxx:b8d0
         DNS Servers: 192.168.2.1
                      fe80::yyyy:yyyy:yyyy:f11
                      fe80::zzzz:zzzz:zzzz:b8d0
          DNS Domain: router.lan

Link 3 (eno1)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 2 (enp3s0)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
Правда при выполнение dig получаю ответ от 127.0.0.53 (из файла stub-resolv.conf), а не от 192.

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

Убрал «лишние» dns:

root@nas:/home/user/temp# resolvectl status
Global
       LLMNR setting: no
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

Link 5 (enp1s0f1)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 4 (enp1s0f0)
      Current Scopes: DNS
DefaultRoute setting: yes
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
  Current DNS Server: 192.168.2.1
         DNS Servers: 192.168.2.1
          DNS Domain: router.lan

Link 3 (eno1)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 2 (enp3s0)
      Current Scopes: none
DefaultRoute setting: no
       LLMNR setting: yes
MulticastDNS setting: no
  DNSOverTLS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
Это не на что не повлияло. Так же не работает.

root@nas:/home/user/temp# dig ya.ru

; <<>> DiG 9.16.1-Ubuntu <<>> ya.ru
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21025
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;ya.ru.                         IN      A

;; ANSWER SECTION:
ya.ru.                  2972    IN      A       87.250.250.242

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Вт мар 15 22:31:03 MSK 2022
;; MSG SIZE  rcvd: 50

В поле «SERVER:» указано 127.0.0.53, а вроде должно быть 192.168.2.1. Пока точно не понял, зачем этот 127.0.0.53.

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

По этой ссылке https://askubuntu.com/questions/1128536/how-to-make-persistent-changes-to-etc... исправил символическую ссылку. Без изменений.

root@nas:/home/user/temp# wget http://ya.ru
--2022-03-15 22:46:25--  http://ya.ru/
Resolving ya.ru (ya.ru)... 2a02:6b8::2:242, 87.250.250.242
Connecting to ya.ru (ya.ru)|2a02:6b8::2:242|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://ya.ru/ [following]
--2022-03-15 22:46:25--  https://ya.ru/
Connecting to ya.ru (ya.ru)|2a02:6b8::2:242|:443... connected.
^C

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

Пока точно не понял, зачем этот 127.0.0.53.

Это лёнькино поделие под названием resolved

anc ★★★★★
()
Ответ на: комментарий от anc
root@nas:~# ping6 -c 1 2a02:6b8::2:242
PING 2a02:6b8::2:242(2a02:6b8::2:242) 56 data bytes
64 bytes from 2a02:6b8::2:242: icmp_seq=1 ttl=55 time=27.5 ms

--- 2a02:6b8::2:242 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 27.526/27.526/27.526/0.000 ms

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

У меня подобная хрень на стандартных днс, вот как у тебя от роутера. Прописываю принудительно 77.88.8.1 и все внезапно чинится и летает. Что это - не понимаю.

LightDiver ★★★★★
()

Для начала нужно выяснить, где именно спотыкается wget. Для этого нужно запустить его под strace:

strace wget https://ya.ru

и там уже смотреть, что происходит.

i-rinat ★★★★★
()
Ответ на: комментарий от vlad_s

По логу видно, соединение устанавливается, wget шлёт что-то там, ждёт ответа, но похоже, не дожидается. Возможно, какая-то беда с IPv6? Если форсировать IPv4 вот так: wget -4 https://ya.ru, работает?

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

Так же виснет, strace концовкой похож на предыдущий:

write(2, "Connecting to ya.ru (ya.ru)|87.2"..., 51Connecting to ya.ru (ya.ru)|87.250.250.242|:443... ) = 51
socket(AF_INET, SOCK_STREAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(443), sin_addr=inet_addr("87.250.250.242")}, 16) = 0
ioctl(0, TIOCGPGRP, [182608])           = 0
getpgrp()                               = 182608
write(2, "connected.\n", 11connected.
)            = 11
openat(AT_FDCWD, "/root/.rnd", O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0644, st_size=1024, ...}) = 0
read(6, "\\H\267\254\32\216\n\"\366\2504\203\3676\323\320\223A\"R\253z\361\20\227\347oP\334\1\2\275"..., 1024) = 1024
read(6, "", 1024)                       = 0
close(6)                                = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
rt_sigaction(SIGALRM, {sa_handler=0x55b617823970, sa_mask=[ALRM], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7fdefbdbc0c0}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
setitimer(ITIMER_REAL, {it_interval={tv_sec=0, tv_usec=0}, it_value={tv_sec=900, tv_usec=0}}, NULL) = 0
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
getpid()                                = 182611
write(3, "\26\3\1\1|\1\0\1x\3\3V\320\276\34k\216h\262\327\276\26\216\267\231\200\"\303b\6r\314"..., 385) = 385
read(3, ^C0x55b618ef7f93, 5)              = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
strace: Process 182611 detached

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

Мистика.

Возможно, что-то режет TCP пакеты, упоминающие порт 443? Насколько я знаю, ya.ru отвечает на plaintext HTTP на порту 443. То есть curl -D - http://ya.ru:443 должен увидеть HTTP/1.1 302 Moved temporarily. Это работает?

i-rinat ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.