Git Product home page Git Product logo

Comments (14)

kinnay avatar kinnay commented on August 17, 2024

If you want to host the server on your own domain, just replace this part by your own domain:

image

Also change the domain name here: https://github.com/kinnay/SMB35/blob/master/source/main.py#L196

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

Hello, the domain in main.py i have chanced but the ips file don't work.
Can you please add the domain bluephynix.de to the ips file ?

from smb35.

kinnay avatar kinnay commented on August 17, 2024

No please do that yourself. Don't forget to change the first two bytes (00 15). These are the length of the server name, including the null terminator.

This might work, assuming you are hosting the server at port 20000:

image

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

It is not working i have all my file rewrite with the 00 14, but all testfiles are not working.
I really don't know what to do right now.
I Hope you can help me please!

from smb35.

kinnay avatar kinnay commented on August 17, 2024

I will need a few more details to help you. Does it work if you use the original patch (i.e. the patch that connects to smb35.ymar.dev)? Also, what does "not working" mean? Do you see an error dialog on your Switch? If yes, what's the error code?

Also, it is important that you have the latest version of the game (it should say Ver. 1.0.2 in the top left corner on the title screen).

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

Hello, thank you for your help.
I have the Patch 1.0.2 installed an the Switch.
Your original IPS-Patch ist working great on my Switch to your test Server.
With my newest IPS-Patch i have the Error-Code: 2306-0502
With my old IPS-Patch Files the Switch is on start the Game crashed to the fuse-primary payload.

from smb35.

kinnay avatar kinnay commented on August 17, 2024

Okay, the error code means Transport::ConnectionFailure, so for some reason the game can't connect to your server. Your newest IPS patch is probably good, but something is wrong with your server setup. A few questions to think about:

  • Is port 20000 accessible on your server and does it provide a valid server certificate? Did the server even start correctly or did it crash (this can happen if you are missing python packages or using a too old python version)?
  • Do you see something interesting in the server logs? For example, do you see any interesting errors? Is the Switch able to establish a websocket connection? If yes, does it also establish a PRUDP connection? If you want, you can get even more log messages by settings the log level to logging.DEBUG in main.py.

I hope this helps.

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

I have a update:
The switch apparently connects to the server.

But the Server is calling follow error in the bash-console:
Traceback (most recent call last):
File "/home/smb35/anynet/util.py", line 86, in catch
yield
File "/home/smb35/anynet/tls.py", line 275, in handle
stream = await anyio.streams.tls.TLSStream.wrap(
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 94, in wrap
await wrapper._call_sslobject_method(ssl_object.do_handshake)
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 100, in _call_sslobject_method
result = func(*args)
File "/usr/local/lib/python3.9/ssl.py", line 944, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:1123)
INFO:anynet.http:Received HTTP request: GET /
INFO:anynet.http:Sending HTTP response (200)
INFO:anynet.http:Received HTTP request: GET /
INFO:anynet.http:Sending HTTP response (200)
ERROR:anynet.util:An exception occurred

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

This is the Log im Loglevel=Debug

DEBUG:asyncio:Using selector: EpollSelector
INFO:anynet.http:Starting HTTP server at :20001
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20001
INFO:anynet.http:Starting HTTP server at :20002
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20002
DEBUG:nintendo.nex.prudp:Serving PRUDP transport at :20000
INFO:anynet.http:Starting HTTP server at :20000
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20000
INFO:anynet.websocket:Routing WS server at /
INFO:nintendo.nex.rmc:Starting RMC server at PRUDP port 1
INFO:nintendo.nex.rmc:Starting RMC server at PRUDP port 2
Server is running!
ERROR:anynet.util:An exception occurred
Traceback (most recent call last):
File "/home/smb35/anynet/util.py", line 86, in catch
yield
File "/home/smb35/anynet/tls.py", line 275, in handle
stream = await anyio.streams.tls.TLSStream.wrap(
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 94, in wrap
await wrapper._call_sslobject_method(ssl_object.do_handshake)
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 100, in _call_sslobject_method
result = func(*args)
File "/usr/local/lib/python3.9/ssl.py", line 944, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:1123)
DEBUG:asyncio:Using selector: EpollSelector
INFO:anynet.http:Starting HTTP server at :20001
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20001
INFO:anynet.http:Starting HTTP server at :20002
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20002
DEBUG:nintendo.nex.prudp:Serving PRUDP transport at :20000
INFO:anynet.http:Starting HTTP server at :20000
INFO:anynet.tls:Starting TLS server at 31.172.93.119:20000
INFO:anynet.websocket:Routing WS server at /
INFO:nintendo.nex.rmc:Starting RMC server at PRUDP port 1
INFO:nintendo.nex.rmc:Starting RMC server at PRUDP port 2
Server is running!
ERROR:anynet.util:An exception occurred
Traceback (most recent call last):
File "/home/smb35/anynet/util.py", line 86, in catch
yield
File "/home/smb35/anynet/tls.py", line 275, in handle
stream = await anyio.streams.tls.TLSStream.wrap(
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 94, in wrap
await wrapper._call_sslobject_method(ssl_object.do_handshake)
File "/usr/local/lib/python3.9/site-packages/anyio/streams/tls.py", line 100, in _call_sslobject_method
result = func(*args)
File "/usr/local/lib/python3.9/ssl.py", line 944, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:1123)

DEBUG:anynet.http:New HTTP connection: 89.182.154.165:49414
INFO:anynet.http:Received HTTP request: GET /
INFO:anynet.http:Sending HTTP response (200)
DEBUG:anynet.tls:Closing TLS connection

I have the SSLCerticate from Lets encrypt (Plesk-App)

ssl

from smb35.

kinnay avatar kinnay commented on August 17, 2024

The game doesn't accept your server certificate. That's really weird though, because my smb35.ymar.dev certificate is signed by Let's Encrypt too, and you said that it works fine on smb35.ymar.dev. I'll let you know if I come up with any ideas, but for now I'm clueless.

from smb35.

kinnay avatar kinnay commented on August 17, 2024

Hmm curl doesn't accept the certificate for some reason:

image

This explains why it doesn't work on your Switch, because the game uses curl internally to set up the game server connection.

Still, two things are weird about this:

  1. It works fine on your main website (the one that redirects to google).
  2. The certificate is accepted by all internet browsers I tried.

Especially 2 is weird. I don't understand why curl is different from web browsers.

from smb35.

kinnay avatar kinnay commented on August 17, 2024

I might have an idea. When you requested the certificate from Let's Encrypt you probably got 4 different pem files. You have to use fullchain.pem for the SMB35 server. It will not work if you use cert.pem, because cert.pem does not contain the intermediate CAs. Can you check if you used the correct certificate file?

image

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

Thank you very mich.
This is the Problem. I have add the the normal Cert.
Iam at work . i will test it laser or tomorrow

from smb35.

PhynixP avatar PhynixP commented on August 17, 2024

Very very thank you for YouTube helpdesk and for the mega Server Tools and libs.
The Connection works now.

from smb35.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.