On Saturday, Jul 5, 2003, at 06:45 US/Pacific, Jason Dixon wrote:

Unfortunately, traffic destined for the broadcast address
(192.168.0.255) is not being translated on $int_if and passed on.  It
simply disappears.  I've dumped the traffic on enc0, $int_if, and the
target server on the wired segment to confirm this.  I've tried to NAT
and filter on enc0, but I'm not seeing any improvement.  I'm mildly

The kernel won't forward broadcast packets. I encountered this a few months ago in the "L2 broadcast and NAT state" thread. In my case, ethernet broadcast was the concern, so I modified sys/net/if_ethersubr.c ether_input() to drop the broadcast flag before passing it up to IP:

        case ETHERTYPE_IP:
                m->m_flags &= ~M_BCAST;
                schednetisr(NETISR_IP);

That just takes care of ethernet; what pf translates the dest IP
to (if anything) will determine if it gets remarked as a broadcast
at IP level.



Reply via email to