Environment
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- postfix
- ipv6
Issue
- Errors in maillog after applying postfix update and when
ipv6
is disabled. - After applying errata and updating postfix from 2.6.6-2.2 to 2.6.6-6 I'm seeing the following errors in
/var/log/maillog
Aug 26 10:04:00 hostname postfix/pickup[24754]: fatal: parameter inet_interfaces: no local interface found for ::1
Aug 26 10:04:01 hostname postfix/master[1895]: warning: process /usr/libexec/postfix/pickup pid 24754 exit status 1
Aug 26 10:04:01 hostname postfix/master[1895]: warning: /usr/libexec/postfix/pickup: bad command startup -- throttling
Aug 26 10:04:01 hostname aliasesdb: /usr/sbin/postconf: fatal: parameter inet_interfaces: no local interface found for ::1
- Unable to send outgoing email.
Resolution
Postfix has been configured to listen on localhost IP address in /etc/postfix/main.cf
file. localhost
generally resolves to two IP addresses i.e. 127.0.0.1
(ipv4) and ::1
(ipv6) as part of localhost
declaration in /etc/hosts
file. It may be a case that IPV6 is disabled on the system but that doesn't allow postfix to bind to IPV6 localhost address on ::1
. As a result, postfix fails to start.
$ cat /etc/postfix/main.cf | grep inet_interfaces
inet_interfaces = localhost
$ cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Since IPV6 is disabled on the system, make sure to remove the following line from /etc/hosts
file to resolve the issue.
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Another solution is to configure postfix to listens on loopback-only
interface which only listens on 127.0.0.1
or to the specific IP address that is available on the system.
inet_interfaces = loopback-only
or
inet_interfaces = <System IP address>
Additionally, refer to the following related articles:
- How do I disable or enable the IPv6 protocol in Red Hat Enterprise Linux
- Postfix doesn't start on boot with error postfix: fatal: parameter inet_interfaces: no local interface found for 'specific IP address'
Root Cause
- The errors mentioned in the title can be seen when
ipv6
is disabled but the reference of IPV6 loopback address(::1)
is still preset in/etc/hosts
file.