diff --git a/example.py b/example.py index c7e8e5a..6749023 100644 --- a/example.py +++ b/example.py @@ -224,11 +224,11 @@ class L3Switch(app_manager.RyuApp): self.send_arp(datapath, 1, self.MAC_ADDR, ipv4_pkt.src, "FF:FF:FF:FF:FF:FF", ipv4_pkt.dst, ofproto.OFPP_FLOOD) return - out_port = self.mac_to_port[dstMac] - actions = [parser.OFPActionSetDlSrc(ipv4_pkt.src), parser.OFPActionSetDlDst(ipv4_pkt.dst), parser.OFPActionOutput(out_port)] + out_port = self.mac_to_port[dpid][dstMac] + actions = [parser.OFPActionOutput(out_port)] # install a flow to avoid packet_in next time - match = parser.OFPMatch(dl_src=ipv4_pkt.src, dl_dst=ipv4_pkt.dst) + match = parser.OFPMatch(in_port=in_port, ipv4_dst=ipv4_pkt.dst) # verify if we have a valid buffer_id, if yes avoid to send both # flow_mod & packet_out if buffer_id != ofproto.OFP_NO_BUFFER: