search for: dnat_took_place

Displaying 2 results from an estimated 2 matches for "dnat_took_place".

2006 Jul 15
3
vif/network-bridge and SNAT ?
...us may have made the same stupid mistake. It''s not really a problem. I have more real IP addresses I can use, but they are in short supply. The bitch seems to come from br_nf_pre_routing_finish() in net/bridge/br_netfilter.c (linux source)... and follows these conditions... if (dnat_took_place(skb)) { <snip> if (ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, <snip> if (!ip_route_output_key(&rt, &fl)) { <snip> if (((struct dst_entry *)rt)->dev == dev ||...
2007 Apr 18
4
[Bridge] [PATCH/RFC] Let {ip, arp}tables "see" bridged VLAN tagged {I, AR}P packets
..., VLAN_HLEN); + skb->nh.raw += VLAN_HLEN; + } skb->dst->output(skb); return 0; } @@ -155,6 +172,7 @@ static int br_nf_pre_routing_finish(stru skb->pkt_type = PACKET_OTHERHOST; nf_bridge->mask ^= BRNF_PKT_TYPE; } + nf_bridge->mask ^= BRNF_NF_BRIDGE_PREROUTING; if (dnat_took_place(skb)) { if (ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, @@ -186,6 +204,11 @@ bridged_dnat: nf_bridge->mask |= BRNF_BRIDGED_DNAT; skb->dev = nf_bridge->physindev; clear_cb(skb); + if (skb->protocol == + __constant_htons(ETH_P_8021Q)) { +...