Формат, используемый строками 'Received', определен в RFC 2821, и регулярное выражение не может его проанализировать.
(Вы можете попробовать в любом случае, и для ограниченного подмножества заголовков, созданных известным программным обеспечением, у вас может получиться, но если вы добавите это к ряду странных вещей, обнаруженных в реальной почте, это не получится.)
Используйте существующий синтаксический анализатор RFC 2821, и вы должны быть в порядке, но в противном случае вам следует ожидать сбоя и написать программное обеспечение, чтобы справиться с ним. Не основывайте вокруг себя ничего важного, например, систему безопасности.
Нам нужно извлечь сервер "by".
'from' более вероятно, будет полезным. Имя хоста, указанное в строке «by», соответствует самому хосту, поэтому нет гарантии, что это будет публично разрешаемое полное доменное имя. И, конечно, вы не склонны получать действительные (TCP-Info) там.