yep turned out that the plugin issue is rather symmetric NAT related. but there is a fix (of hmm e.g. the ping alike kalive messages for port routing table that is periodically sent could be sent from always same ip port (source ip port) to the same dest ip port (for keeping in routing table) software wise.
so until installed wireshark, had no idea what the issue were. turned out the NAT is symmetric and the keep alive packages sent to router (each time from different source port) does not work due to NAT being symmetric.
i of course also made alot fixes although not completed. but even testing this is very issued.
e.g. i compile plugin which takes 2 minutes or so. then i copy it then package the exe product which takes 7 or 10 minutes or so. so to test i run with unreal editor and then also on same computer samewise i use packaged exe (since i use some iterative port taking logic i can run same exe on computer twice or more whatever (it tests ports if not then rechecks port -1 alike port gathering, (it gathers stun ip port) (although that is not fully complete method there either)
then it gathers stun protcol based (via webrtc native lib) ip port then it periodically sents keep alive msg to router public ip for it. but then there I need to make change to support symmetric nat condition.
hmm so it seems as this issue is fixable.
meanwhile so today i couldnt spare time to yet analysis book study due to above issues.
its like: the client initiates connection to game server but receives no input alike condition.
i investigated and fixed lots of issues but without being able to fix until installing wireshark and seeing icmp code 3 and its explanation in google.
so been again testing testing and failing of client server communication test today all day like yesterday.
but i iterated alot. i mean whilst issue were slightly different caused by mainly above issue, there were also many alot inherent issues that were fixed in online session code there in plugin whilst checking this issue. so its a dull task of running exe, creating session then opening unreal editor then finding retrieving sessions then join session then you see that client never could connect (game map of listen map is not loaded in client even)
so it were very troublesome to test same test case all again all day (alike yesterday passed like this also) but least i think after doing some fixes to the hmm periodic keep alive ping sender code to uses the bind sockets there in network module or some such code with mutexes there so that symmetric nat issue is not an issue with sending from a single ip port which would be the actual bound ip port in game code alike. hmm so i think to implement this might take 1 hour or so. then testing 30 minutes or so at most.
so i believe wishfully tomorrow could fix this symmetric nat issue and then complete plugin code issues as part time following days. hmm wishfully, for banach tarski idea frameworkization task, I could spare time to analysis book study task starting from tomorrow. today were like nonstop coding studying to above issue which couldnt be figured out any inference until having installed wireshark to check.
Yorumlar
Yorum Gönder