Я пытаюсь получить электронную почту от Gmail. Occaisionly (приблизительно 1 из 5 раз) Я получаю сообщение System.Net.Sockets.SocketException, ошибка:Операция сокета была предпринята для недоступной сети [2a00: 1450: 4013: c01 :: 6d]: 993 при получении электронной почты Gmail с S22 ImapClient
A socket operation was attempted to an unreachable network [2a00:1450:4013:c01::6d]:993
Сетевой адрес не всегда то же самое, но немного меняется. Эта ошибка появляется во всех окнах Gmail, которые я хочу проверить, но не появляется в моем почтовом ящике Office 365 вообще.
Мое приложение - это приложения MVC 5, размещенные Microsoft Azure. Я использую S22 Imap library
Соответствующая часть кода для извлечения электронной почты является:
using S22.Imap;
ImapClient Client;
List<MailMessage> NewMessages;
try
{
Client = new ImapClient(tenant.ImapHostName,
tenant.ImapPortNumber,
tenant.ImapUserName,
tenant.ImapPassword,
AuthMethod.Login, tenant.UseSsl);
}
catch (Exception e)
{
return;
}
try
{
NewMessages = GetUnseenMessages(Client);
}
catch (Exception e)
{
}
Я отключить IPv6 на моем Azure WebService (оно было отключено от адаптера), но все же эта ошибка возвращается через и снова.
FWIW, мой [MailKit] (https://github.com/jstedfast/MailKit) библиотека будет пытаться все IP-адреса, возвращаемые DNS, пока один из них не будет успешно подключен. Я упоминаю об этом, если OP не может легко обойти это ограничение в S22.Imap. Удачи! – jstedfast