![erro de validação de endereço IP freebsd postfix python policyd-spf](https://rvso.com/image/1542102/erro%20de%20valida%C3%A7%C3%A3o%20de%20endere%C3%A7o%20IP%20freebsd%20postfix%20python%20policyd-spf.png)
Recentemente encontrei um problema no meu servidor de email freebsd postfix com o pacotepy27-postfix-policyd-spf-python-1.3.2_1
Meus maillogs estavam cheios com as seguintes mensagens:
policyd-spf[16637]: ERROR: 127.0.0.0/8 in skip_addresses not IP network. Message: '11.22.33.44' does not appear to be an IPv4 or IPv6 address. Did you pass in a bytes (str in Python 2) instead of a unicode object?. Aborting white list processing.
Mudar para python 3 conforme sugerido por outras pessoas NÃO funcionou (nem alterar o shebang, nem iniciá-lo via python3 diretamente
Responder1
A solução para o meu problema foi (por enquanto) adicionar as seguintes linhas à função _cidrmatch
em/usr/local/bin/policyd-spf
def _cidrmatch(ip, netwrk)
netwrk = unicode(netwrk)
ip = unicode(ip)
try:
address = ipaddress.ip_address(ip)
Isso é feito para que o módulo python ipaddr tenha que lidar apenas com string unicode (conforme solicitado pela mensagem de erro)
mudar para python3 conforme sugerido por outras postagens na web não funcionou para mim (talvez algumas dependências ausentes?)
Esse post também me ajudou muito https://stackoverflow.com/questions/30389019/valueerror-10-0-0-0-24-does-not-appear-to-be-an-ipv4-or-ipv6-network
MAS TENHA EM MENTE: esta correção seráPERDIDOdepois que o pacote recebe uma atualização, então isso é apenaspretende ser uma nota útilpara alguém que está enfrentando o mesmo problema que eu!
Então, se alguém tiver uma solução real, avise-nos :)