Index: pf.c =================================================================== RCS file: /cvs/src/sys/net/pf.c,v retrieving revision 1.1110 diff -u -p -r1.1110 pf.c --- pf.c 12 Feb 2021 16:16:10 -0000 1.1110 +++ pf.c 15 Feb 2021 09:59:50 -0000 @@ -6020,7 +6020,7 @@ pf_route(struct pf_pdesc *pd, struct pf_ dst->sin_addr = s->rt_addr.v4; rtableid = m0->m_pkthdr.ph_rtableid; - rt = rtalloc(sintosa(dst), RT_RESOLVE, rtableid); + rt = rtalloc_mpath(sintosa(dst), &ip->ip_src.s_addr, rtableid); if (!rtisvalid(rt)) { if (s->rt != PF_DUPTO) { pf_send_icmp(m0, ICMP_UNREACH, ICMP_UNREACH_HOST, @@ -6162,7 +6162,8 @@ pf_route6(struct pf_pdesc *pd, struct pf dst->sin6_addr = s->rt_addr.v6; rtableid = m0->m_pkthdr.ph_rtableid; - rt = rtalloc(sin6tosa(dst), RT_RESOLVE, rtableid); + rt = rtalloc_mpath(sin6tosa(dst), &ip6->ip6_src.s6_addr32[0], + rtableid); if (!rtisvalid(rt)) { if (s->rt != PF_DUPTO) { pf_send_icmp(m0, ICMP6_DST_UNREACH,