Не найдя ответов на этот вопрос: Функция PHP mail () внутри виртуальной машины VMWare (Win7)
Я решил попробовать что-то новое. Я установил SMTP-реле на машине. Я могу использовать его и получать почту внутри каталога спулинга.
Однако, когда я пытаюсь настроить его для пересылки почты на уже настроенный SMTP-сервер (называемый «почта», на порту 25), происходит сбой.
Telnet также не работает на порту 25, поэтому кажется нормальным, что он не будет работать — «Отказано в соединении» — ошибка от telnet.
Но действительно странная вещь заключается в том, что если я настрою сервер Apache / PHP на этом компьютере и использую почтовую функцию PHP (настроенную для подключения к «mail» через порт 25), это сработает! Я могу отправлять электронные письма из PHP (которые мне не нужны), но я не могу подключиться к компьютеру через telnet.
Кто-нибудь когда-нибудь видел что-то подобное? Это сводит меня с ума!
заранее спасибо
Вы проверили настройки брандмауэра? Если ваш брандмауэр не разрешает подключения с внешних адресов к порту 25, но разрешает локальные подключения к порту 25, то это объясняет, почему PHP может использовать его очень хорошо, но вы не можете подключиться извне.
Вы пытались использовать IP-адрес «почты» вместо имени хоста.
Сетевые устройства на Win 7 используют ipv4 а также ipv6 по умолчанию. Если вы укажете Имя компьютера (не запись DNS машины) при открытии соединения (т. е. при запуске telnet) вместо «mail» можно произвольно разрешить либо адрес ipv4, либо адрес ipv6 этой машины (более или менее). Если ваш почтовый сервер прослушивает только IPv4-адрес, вы не получите соединение, когда «почта» разрешена.
Вы можете наблюдать ту же проблему, когда на машине «почта» имеется более одного сетевого устройства. Затем он может разрешить имя компьютера по любому из адресов сетевых устройств.