Equations

Friday 20 November 2015

POX Controller fixes

It seems that POX controller has some bugs in its source code, which appears as errors in the output window like these lines:
INFO:packet:(ipv6) warning IP packet data incomplete (114 of 316)
INFO:packet:(dns) parsing questions: incomplete name
INFO:packet:(dhcp parse) warning DHCP packet data too short to parse header: data len 86

Following POX mailing list this can be fixed by editing the POX source code:


  • add at line 244 in packet.dns:

    elif r.qtype == 28:
      assert isinstance(r.rddata, IPAddr6)
      return s + r.rddata.toRaw()


  • change at line 435 in packet.dns:

  return IPAddr6.from_raw(l[beg_index : beg_index + dlen])


  • add at line 521 in addresses.py:

  def toRaw (self):
    return self.raw


  • change at line 4431 in openflow.libopenflow_01.py the value of OFP_DEFAULT_MISS_SEND_LEN to a bigger value (default is 128). This error happens because DHCP packets are truncated.