One of my colleague raised a question: After changing resolv.conf, sendmail still query the old resolver, why?
1. Set 192.168.122.65 as nameserver in resolv.conf, start sendmail service, send a mail to email@example.com, and take a tcpdump. We can see there's a query asking 192.168.122.65 for MX record of hat.com .
2. Change nameserver from 192.168.122.65 to 192.168.122.72 in resolv.conf, send a mail to firstname.lastname@example.org and take a tcpdump again. This time we expect a query to 192.168.122.72 (new), but the actual query is to 192.168.122.65 (old).
3. Restart sendmail service, send a mail to email@example.com, this time we can see a query to 192.168.122.72 (new) as expected.
When we were thinking about what's going wrong with sendmail, another colleague joined in discussion, and she mentioned that httpd and some other long-running services also have this behavior.
Since sendmail is not the only case, I think we should have a check on glibc.