noxrepo / pox

The POX network software platform
https://noxrepo.github.io/pox-doc/html/
Apache License 2.0
619 stars 470 forks source link

Issue with misc.ip_loadbalancer #270

Closed javiermarroquin closed 1 year ago

javiermarroquin commented 2 years ago

DEBUG:core:Running on CPython (3.8.10/Sep 28 2021 16:10:42) DEBUG:core:Platform is Linux-5.11.0-40-generic-x86_64-with-glibc2.29 WARNING:version:Support for Python 3 is experimental. INFO:core:POX 0.7.0 (gar) is up.

This is my command ./pox.py --verbose forwarding.l3_learning --fakeways=192.168.4.1,192.168.20.1 log.level --DEBUG --openflow=DEBUG misc.ip_loadbalancer --ip=192.168.4.2 --servers=192.168.4.3,192.168.4.4.

L3 forwarding works fine, but as soon as I try a tcp connection (http) from 192.168.20.2 to 192.168.4.2 it crashes with:

ERROR:openflow.of_01:Exception reading connection [00-00-00-00-00-01 4] Traceback (most recent call last): File "/home/javier/pox/pox/openflow/of_01.py", line 940, in read h(self, msg) File "/home/javier/pox/pox/openflow/of_01.py", line 206, in handle_ERROR msg.show(str(con) + " Error: ").strip()) File "/home/javier/pox/pox/openflow/libopenflow_01.py", line 4043, in show outstr += prefix + hexdump(self.data).replace("\n", "\n" + prefix) File "/home/javier/pox/pox/lib/util.py", line 485, in hexdump data = [ord(c) for c in data] File "/home/javier/pox/pox/lib/util.py", line 485, in data = [ord(c) for c in data] TypeError: ord() expected string of length 1, but int found

MurphyMc commented 2 years ago

This was fixed earlier this year in my repo, but the change hasn't been merged into noxrepo/pox yet.

For the short term, pull from the gar branch of https://github.com/MurphyMc/pox instead.

MurphyMc commented 2 years ago

(Reopening until this actually gets merged.)

javiermarroquin commented 2 years ago

Awesome. Thanks a million. We'll try with the code from your repo.

MurphyMc commented 1 year ago

Fix should be in halosaur.