LINUX.ORG.RU

Как выяснить, по какой причине curl соединение с сервером может длиться более 30 секунд?

 ,


0

2

Есть VPS сервер (ubuntu) и ip-камера с белым адресом. Сервер каждые 10 минут делает запросы на камеру на проверку новых видео. Одна проверка включает в себя 6 запросов (проверка доступности ip, получение токена, установка параметров, полученные данных, остановка токена, удаление токена). curl запрос выглядит вот так:

curl_setopt_array($ch, [CURLOPT_USERPWD => 'admin:admin', 
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 500,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HTTPAUTH=>CURLAUTH_ANY
]);

Сегодня по неизвестной мне причине причине начал получать ошибку Connection timed out after 10001 milliseconds. Ошибка возникает на любом из 6 этапов. Для эксперимента запустил цикл со 100 такими запросами. 49 были с ошибкой.

Увеличил значение CONNECTTIMEOUT до 30, но это никак не повлияло положительно. Теперь я стал получать ошибки Connection timed out after 30001 milliseconds.

Я предполагаю, что проблема на стороне сервера, так как если выполнять эти же запросы с домашнего ПК, то на 100 запросов будет 0 ошибок. Камера не находится в одной локальной сети в ПК. ОДНАКО, если на домашнем ПК включить VPN с ip моего сервера, то будут те же самые ошибки. То есть явно что-то не так с сервером.

Ростелеком (провайдер камеры) говорит, что ни в чём не виноват и это проблема у меня.

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



Последнее исправление: accountnujen (всего исправлений: 2)

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

Разбираться надо, однако. mtr бы до камеры и до сервера сравнил, захват пакетов посмотрел, может хоть знал бы, про что спрашивать: про VPN, роутинг али камеру.

t184256 ★★★★★
()

Ростелеком (провайдер камеры) говорит, что ни в чём не виноват и это проблема у меня.

ростик как-бы намекает, что

https://rt.ru/videocontrol

PS и вообще белый адрес на камеру - идея так себе. как и вся ваша модель наблюдения

kindof
()
Последнее исправление: kindof (всего исправлений: 1)

Между сервером и камерой скорее всего потери пакетов, выясни где именно они происходят и, если они не на твоём железе, уже можешь с логами трассировок к провайдеру идти (но он всё так же тебя может послать).

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

я в этом tcpdump не вижу ничего. оно как вертикальные зелёные полоски из матрицы… подскажите, есть там что-то странное? @mky можно вас тоже сюда?

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

вот запустил 10 простых curl запросов на морду камеры. 2 из них были с ошибкой. https://pastebin.com/QGsEJDLw

Есть VPS сервер (ubuntu) и ip-камера с белым адресом

999.99.9.9.5997 > 10.0.0.207.50362

«опять эта проклятая неопределенность» (с)

cksum 0x64b5 (incorrect -> 0xb3b7), seq 56, ack 32845, win 443, options [nop,nop,TS val 111513856 ecr 3509506], length 0

кто-то поменял хедер, кто же это?

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

«опять эта проклятая неопределенность» (с)

999 - это моя камера. Разумеется там нормальный ip, просто учитывая множественные дыры, светить его я не хочу.

999.99.9.9.5997 > 10.0.0.207.50362

В моём понимании, это ответ сервера. Я же должен загрузить css стили, js скрипты и всю остальную лабуду с морды, вот я их и получаю.

кто-то поменял хедер, кто же это?

А по поводу хедера - я не понял. Можно пояснительную бригаду?

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

999 - это моя камера. Разумеется там нормальный ip

В моём понимании, это ответ сервера

т.е. даже стрелочка > не говорит вам откуда и куда идет пакет?

а 10.0.0.207 - это кто?

А по поводу хедера - я не понял. Можно пояснительную бригаду?

заголовок пакета. возможный ответ - во втором комменте

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

10.0.0.207

VPS

возможный ответ - во втором комменте

ростик как-бы намекает, что

только он почему-то намекает исключительно на нидерландском сервере. если я из дома буду curl отправлять - ошибок нет.

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

вы прочитали весть комент?

PS и вообще белый адрес на камеру - идея так себе. как и вся ваша модель наблюдения

до 30.11.22, 07 утра 25 минут у меня всё работало нормально. И меня это устраивало. Мне нужно иметь белый адрес, чтобы получать доступ к камере откуда бы то ни было.

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

до 30.11.22, 07 утра 25 минут у меня всё работало нормально. И меня это устраивало. Мне нужно иметь белый адрес, чтобы получать доступ к камере откуда бы то ни было.

вы когда последний раз обновляли прошивку на камере?

вы следите за ее состоянием только по картинке?

вопросы риторические.

если надо откуда угодно - разумнее иметь VPS c public IP а с камер(ы) организовать туда надежный и контролируемый транспорт.

kindof
()
Ответ на: комментарий от accountnujen

спасибо вам огромное за совет, но как бы мне решить проблему в текущей ситуации?

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

kindof
()