diff --git a/prog/weave-npc/main.go b/prog/weave-npc/main.go index 12b5078f..e49e564c 100644 --- a/prog/weave-npc/main.go +++ b/prog/weave-npc/main.go @@ -128,7 +128,7 @@ func createBaseRules(ipt *iptables.IPTables, ips ipset.Interface) error { // If the destination address is not any of the local pods, let it through if err := ipt.Append(npc.TableFilter, npc.MainChain, - "-m", "physdev", "--physdev-out="+bridgePortName, "-j", "ACCEPT"); err != nil { + "-m", "physdev", "--physdev-is-bridged", "--physdev-out="+bridgePortName, "-j", "ACCEPT"); err != nil { return err } @@ -171,7 +171,7 @@ func createBaseRules(ipt *iptables.IPTables, ips ipset.Interface) error { ruleSpecs := [][]string{ {"-m", "state", "--state", "RELATED,ESTABLISHED", "-j", "ACCEPT"}, - {"-m", "physdev", "--physdev-in=" + bridgePortName, "-j", "RETURN"}, + {"-m", "physdev", "--physdev-is-bridged", "--physdev-in=" + bridgePortName, "-j", "RETURN"}, } if allowMcast { ruleSpecs = append(ruleSpecs, []string{"-d", "224.0.0.0/4", "-j", "RETURN"})