Ошибка подключения IMAP: Адрес, не поддерживаемый протоколом

#python #imap

Вопрос:

Я использую IMAP для получения электронных писем. Это прекрасно работает в моем блокноте jupyter.

 imap = imaplib.IMAP4_SSL("imap-mail.outlook.com") # authenticate imap.login(username, password) imap.select(  ('OK', [b'10760'])  

Но когда я использую этот же код на своем удаленном компьютере, я не могу подключиться к IMAP.Это показывает следующую ошибку.

 OSError: [Error 97] Address not supported by protocol  

Кто — нибудь может понять, в чем здесь ошибка?

Комментарии:

1. Похоже, что хост только для IPv6 и устройство только для IPv4 (или наоборот).

2. Есть ли какой-либо способ преодолеть эту проблему?

3. Вероятно, вам захочется устранить неполадки в средствах разрешения имен вашей операционной системы (или, если это Windows, замените ее, если сможете).

4. Это Office365, который поддерживает как v4, так и v6. Мое первое предположение состоит в том, что на одном из хостов наполовину включен IPv6, т. Е. разрешение DNS возвращает адреса как v4, так и v6, а некоторые вредоносные программы используют только первый возвращенный адрес и не имеют IPv6. Угадывание: telnet -4 imap-mail.outlook.com 143 работает, telnet -6 imap-mail.outlook.com 143 не работает. Если это так, то решение состоит в том, чтобы завершить включение IPv6. Другой способ-починить дерьмо.