Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ipv6 Connection (iOS Requirement) #17

Closed
mertkurum opened this issue Jun 3, 2016 · 8 comments
Closed

Ipv6 Connection (iOS Requirement) #17

mertkurum opened this issue Jun 3, 2016 · 8 comments

Comments

@mertkurum
Copy link

Hello, Apple doesnt accept apps without ipv6 support. I am using noobhub for gideros but It gives error on tcp connection for ipv6.

https://coronalabs.com/blog/2016/05/27/apple-ios-and-the-ipv6-deadline/

@Overtorment
Copy link
Owner

Hello.
Ive checked the docs, looks like there's nothing to be changed in Lua code, as it already uses
socket.connect(self.server, self.port)
which is pretty much agnostic to ipv4/ipv6 changes.

BUT, you might need to make a small change in nodejs code.
Instead of
server.listen(cfg.port);
(here: https://github.com/Overtorment/NoobHub/blob/master/server/node.js#L107 )

Put
server.listen(cfg.port, "::");
(or use real ipv6 address of the server)

Let me know if that worked (you can also make a pull request)

@Overtorment
Copy link
Owner

Okay, we have just tested the solution with other Noobhub users.
server.listen(cfg.port, '::'); pretty much should solves all issues.
If not - post detailed about what errors it throws.

@mertkurum
Copy link
Author

Hello, I am not using node.js for server. I have created my own server socket with c#. I have changed some logic on server and I will test it today.

However, gideros uses luasocket which doesnt support ipv6. New luasocket versions has socket.tcp6() method which supports ipv6 connections. Do we need it in socket class or something?

@Overtorment
Copy link
Owner

I checked LuaSocket documentation. You definitely need latest luasocket lib in Gideros.
Then, in noobhub.lua try to put it like this:

local socket = require( "socket" )
socket = socket.tcp6()

(as per documentation here http://tst2005.github.io/lua-socket/tcp.html)

Haven't tried it myself tho. Other Noobhub user reported that everything just worked when he fed direct ipv6 address to Noobhub client object (but he did change server code to listen on ipv6 interface: server.listen(cfg.port, '::');)

Let me know if this works.

@gnotus
Copy link

gnotus commented Sep 4, 2016

Hi,
We are using your code in an App for Mercedes Benz in Germany, it works really well, but we have the Ipv6 iOS issue now.
I am using CoronaSDK, what do I need to change to address the Ipv6 iOS changes?
I just got an App refused by Apple...
Reading the comments above, just need to change the server code to, server.listen(cfg.port, '::');??
Do I need to make the socket = socket.tcp6() change? When I did it give an error on line 85...

Thanks in advance,
Rui Tito

@Overtorment
Copy link
Owner

Hello! Noobhub is ipv6 ready. No need to call tcp6(). Several folks have their ipv6 apps published with no problems.

Anyways, here, I made a checklist for you to help troubleshoot:

  • Make sure CoronaSDK build is Daily Build 2016.2883 or higher
  • Make sure you are not trying to connect via old ipv4 address (like 11.22.33.44)
  • Make sure your domain name has AAAA record. How to check:
burn@laptop2:~/Documents/NoobHub$ dig google.com AAAA | grep AAAA
...
google.com.     33  IN  AAAA    2404:6800:4005:803::200e
  • Update to latest Noobhub. I have just made a light modification on server side (yeah, the one you pointed out, I forgot to push it...)

Keep me updated on how it is going, I will be happy to help.

@gnotus
Copy link

gnotus commented Sep 5, 2016

Hi Igor,
Many thanks for the support, I really appreciated.
I already setup a new server, made the changes, and I will upload to Apple today.
Let us know if you are available for some jobs, Corona related...
Take care,
Rui Tito
FYI I am from Portugal, but living in Brazil, and developing a platform for mobile training...

@gnotus
Copy link

gnotus commented Sep 9, 2016

Hi Igor,
Thanks again, it got approved...
Rgds
Rui Tito

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants