завихрение - разрешает опцию, не работающую: “Имя хоста НЕ было найдено в кэше DNS”

Я пытаюсь использовать завихрение --resolve опция соединиться с указанным IP-адресом при выполнении Запроса HTTP, но завихрения удерживает на месте возвращение к IP-адресу, как получено моим локальным кэшем DNS / сопоставитель.

Команда:

curl -s -S -I -H "Host: example.com" --resolve example.com:80:1.1.1.1 --verbose http://example.com/

(где example.com заменяется моим доменным именем, и 1.1.1.1 замененный желаемым целевым IP-адресом)

Результат:

* Added example.com:80:1.1.1.1 to DNS cache
* Hostname was NOT found in DNS cache
*   Trying 2.2.2.2...
* Connected to example.com (2.2.2.2) port 80 (#0)
> HEAD / HTTP/1.1
> User-Agent: curl/7.35.0
> Accept: */*
> Host: example.com

(где 2.2.2.2 заменяется IP-адресом, кэшируемым в моем локальном сопоставителе DNS для моего доменного имени),

Так, похоже, что завихрение пытается добавить 1.1.1.1 к кэшу DNS для example.com, но сбои так или иначе и возвращаются назад к исходному IP-адресу.

Какие-либо идеи о том, как решить эту проблему или диагностировать далее для обнаружения почему не работа?

4
задан 20 February 2015 в 22:48

1 ответ

Попробовав это с другими доменными именами, я обнаружил, что проблема вызвана тем, что доменные имена не совпадают в параметре --resolve и URL-адресе (у одного было www, у другого - нет). Ошибка пользователя!

Неверно:

curl -s -S -I -H "Host: example.com" --resolve example.com:80:1.1.1.1 --verbose http://www.example.com/

Правильно:

curl -s -S -I -H "Host: example.com" --resolve example.com:80:1.1.1.1 --verbose http://example.com/
3
ответ дан 1 December 2019 в 10:05

Другие вопросы по тегам:

Похожие вопросы: