O arquivo canônico opcional especifica um mapeamento de endereço para endereços locais e não locais. O mapeamento é usado pelo daemon cleanup (8). O mapeamento de endereço é recursivo.

O arquivo serve como entrada para o comando postmap (1). O resultado, um arquivo indexado no formato dbm ou db, é usado para pesquisa rápida pelo sistema de correio.

O mapeamento canônico afeta os endereços do cabeçalho da mensagem (ou seja, os endereços que aparecem nas mensagens) e os endereços do envelope da mensagem (por exemplo, os endereços usados nos comandos do protocolo SMTP). Pense na regra Sendmail definida `S3` , se quiser.

Normalmente, usaria a tabela canônica para substituir os nomes de login por `Firstname.Lastname` ou para limpar os endereços produzidos pelos sistemas de correio herdados.

O mapeamento canônico não deve ser confundido com o suporte ao domínio virtual. Use o mapa de domínio virtual para esse fim.

O mapeamento canônico não deve ser confundido com aliasing local. Use o mapa de alias de correio para esse fim.

O formato dos mapeamentos canônicos é o seguinte, sendo tentados na ordem conforme listado:

- `user@domain` mapeado para ... `address` :
  `user@domain` é substituído pelo `address` Este formulário tem a maior precedência. Este formulário é útil para limpar endereços produzidos por sistemas de correio herdados. Também pode ser usado para produzir endereços no estilo `Firstname.Lastname` , mas veja abaixo uma solução mais simples.
- `user` mapeado para ... `address` :
  `user@site` é substituído pelo endereço quando site é igual a `$myorigin` , quando site é listado em `$mydestination` ou quando é listado em `$inet_interfaces` . Este formulário é útil para substituir os nomes de login por `Firstname.Lastname` .
- `@domain` mapeado para ... `address` :
  Todo endereço no domínio é substituído por endereço. Este formulário tem a menor precedência.

Em todos os formulários acima, quando o endereço tiver o formato `@otherdomain` , o resultado será o mesmo usuário em outro domínio.

EXTENSÃO DE ENDEREÇO: Quando a pesquisa de tabela falha, e a parte local do endereço contém o delimitador de destinatário opcional (por exemplo, `user+foo@domain` ), a pesquisa é repetida para o endereço não estendido (por exemplo, `user@domain` ) e a extensão incomparável é propagada para o resultado da pesquisa de tabela. A ordem correspondente é: `user+foo@domain` , `user@domain` , `user+foo` , `user` e `@domain` .