freebsd postfix pythonpolicyd-spf IP 주소 유효성 검사 오류

freebsd postfix pythonpolicyd-spf IP 주소 유효성 검사 오류

최근에 내 freebsd postfix 메일 서버에서 패킷이 포함된 문제가 발생했습니다.py27-postfix-policyd-spf-python-1.3.2_1

내 메일로그는 다음 메시지로 가득 차 있습니다.

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.

다른 사람들이 제안한 대로 Python 3으로 전환해도 작동하지 않았습니다. (shebang을 변경하거나 python3을 통해 직접 시작하지도 않았습니다.)

답변1

내 문제에 대한 해결책은 (현재) 다음 줄을 함수에 추가하는 것입니다 _cidrmatch./usr/local/bin/policyd-spf

def _cidrmatch(ip, netwrk)
  netwrk = unicode(netwrk)
  ip = unicode(ip)
  try:
    address = ipaddress.ip_address(ip)

이는 Python 모듈 ipaddr이 유니코드 문자열(오류 메시지에서 요청한 대로)만 처리해야 하도록 수행됩니다.

웹의 다른 게시물에서 제안한 대로 python3으로 전환해도 작동하지 않았습니다(일부 종속성이 누락되었을 수도 있나요?).

이번 포스팅도 많은 도움이 되었습니다 https://stackoverflow.com/questions/30389019/valueerror-10-0-0-0-24-does-not-appear-to-be-an-ipv4-or-ipv6-network

하지만 명심하세요: 이 수정 사항은다 쓴패킷이 업데이트된 후이므로 이는 단지유용한 메모로 의도됨나와 같은 문제에 직면한 누군가에게!

누구든지 실제 해결책이 있다면 알려주세요 :)

관련 정보