-
Notifications
You must be signed in to change notification settings - Fork 5
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
RaspiPass AP fails to change MACs/SSIDs #32
Comments
Getting the same thing here with a new RPi3 and 7.4 image. From my 2 days of testing, I found out that the Nintendo Relay IPs have changed. Pinchie only allows traffic through the RaspiPass that are directed to the Nintendo Relay points (which is a smart move in regards to security, considering it's an open WiFi connection). His IPTables are setup to only allow traffic for those IPs. The Relay IPs have changed since Pinchie's last update, so the current IPTables are not relevant any longer. To test this, I disabled the firewall on the RaspiPass, and instantly I got streetpasses. So now, I have to filter my 3DS traffic on my normal WiFi and find out what IPs it's trying to connect to, and then submit those changes to Pinchie. Or we'll just have to add it in manually (or I can try to figure out how to fork this Project and do it myself, new territory for me!). Will keep you posted on this. |
I was kind of thinking that once I kept reading about it. I'm wondering if we could just MAC filter what devices connect (only allow 3DS MACs, manually added, and maybe only allow traffic to 52.x.x.x and 192.195.x.x (unless they changed that drastically...) I'm trying to think of how I could assist... I have an enterprise grade switch which I can see what type of traffic is being sent, and a DD-WRT installed on a Netgear router spoofing NSPOOF connected to said switch, but I'm not sure if I can make it sniff only IP addresses entering/leaving that specific port. I could port mirror and have all traffic sent to that device to another port which I could have Wireshark running on, but I don't have another computer laying around. |
Hey Josh - Well shoot, if you could narrow down the traffic that the 3DS is pulling down while it's asleep, that would be most useful. We could then manually update the IPTables and get it working again properly, without having to drop the firewall. Here is a comment where Pinchie originally sifted his traffic for exactly this - not sure it will be helpful, but you can at least see where he was getting his info from to fix this issue a year ago. And in regards to MAC filtering, Pinchie tried it, but it didn't work on the RPi3 (see this comment). I would imagine it's possible, but I personally don't know how to implement it. If you can't pull it off, I can probably sift for the traffic via my corporate firewall (which I fully control). I'll just dig through the log files and see what the 3DS is hitting. Let me know if you have any success. |
If I had my Pi-Hole install working properly, it would be a lot easier... However, looking at the live log file (which gets insane on my network), I found this: Now, most of these I found are CNAMEs, so they just point to something else, but the IPs I gave are from Pi-Hole, or a DNS lookup (via PING). |
Josh - I heard from Pinchie, he mentioned we can try this to track it down:
So with a bit of log watching on the RPi3, we can probably find all the addresses as well. I also want to try the addresses you provided. Will continue playing. |
@joshbgosh10592 Been tinkering around with this more today. Getting further along. Hopefully will have this beat in a day or two. |
@fatmagic how did you disable the firewall? I wouldn't mind doing this, because I just want streetpasses. |
Hey @fatmagic Take a look at this. So, then we're only stuck trying to figure out what hostnames are being used by the 3DS. The rest, we could modify/create the cronjob to run and modify it from there. |
@the-mudkip You can disable the firewall with:
Note that the iptables rules are also present in the firewall.rules file in /raspi_secure - that file is automatically re-loaded on reboot (technically when the network interface comes back up from a down/off state) With regards to the firewall files in the /raspi_secure directory:
Unfortunately I've never had a list of hostnames - as @joshbgosh10592 points out, that would make iptables fixing a lot easier by grepping/piping nslookup output. Unfortunately the IPs only reverse-lookup'd to their very generic hosting provider server name, rather than a useful DNS entry. :( I've advised @fatmagic that by uncommenting the last line in iptables.sh and re-implementing the iptables rules (ie flush and reload) the dropped packets will be logged to dmesg. Unfortunately that means digging out the info you need from a huge pile of rejected multicast packets, but you can at least use To everyone, so sorry I hadn't replied. I had messages from fatmagic on Reddit but I had no idea you were all on here trying to fix this. You'd think I'd be subscribed to my own damn code's forum. My apologies. I appreciate you keeping this ticking along. :) |
@Pinchie No worries! This has gotten my creative/coding side alive and I'm enjoying it! If that's something you like to do/have done? It would make it truly set/forget it. |
That's something that would be fantastic, thank you so much. 😄 |
Sorry for going quiet here - was busy this weekend. Thanks for dropping in @Pinchie :-D |
Ok, so my original Pi-Hole install somehow managed to start working (after the host OS crashed and needed rebooted. I don't know, it's giving me a headache...) Anywho, I have the hostnames my 3DS reached out to. I'm not sure if all 5 of them are needed for streetpass, but here they are. Edit: Conntest.nintendowifi.net and service.spr.app.nintendo.net are required. conntest, if blocked, doesn't even try to do anything else (kind of expected, but wanted to validate anyway), and when I had service.spr.app.nintendo.net blocked, no streetpass came through.
Now, to make the script, I don't know how to make the script loop, but we could just take the example script I liked to and make 5 copies of it, or if someone knows how to input multiple hostnames, it would be even better. Another problem is that the 3DSs are reaching out to a CDN, which frequently provide more than one IP address (usually two). Not sure if the 3DS needs access to both or just one. I'm also not sure where RaspiPass is saving its log file, to put that into the script. |
How are you able to find out what are the correct IPs to whitelist based on
this list? Are you just pinging/tracerouting the TLD/URL? I have a build I
want to finish (it's for someone else) and just deploy with the IPs for
now. Then I'd like to see where you get with an automated list... will
help where I can!
I would say pull down as many IPs as you can find from those addresses.
Play it safe.
I have a question - forgive me for not fully understanding how Linux/Debian
treats these. Can we only use IPs when whitelisting on IPTables, instead of
using the FQDN?
…On Tue, Mar 27, 2018 at 12:10 PM, joshbgosh10592 ***@***.***> wrote:
Ok, so my original Pi-Hole install somehow managed to start working (after
the host OS crashed and needed rebooted. I don't know, it's giving me a
headache...) Anywho, I have the hostnames my 3DS reached out to. I'm not
sure if all 5 of them are needed for streetpass, but here they are.
l-npns.app.nintendo.netnppl.c.app.nintendowifi.netnpdl.cnd.nintendowifi.netservice.spr.app.nintendo.netconntest.nintendowifi.net
Now, to make the script, I don't know how to make the script loop, but we
could just take the example script I liked to and make 5 copies of it, or
if someone knows how to input multiple hostnames, it would be even better.
Another problem is that the 3DSs are reaching out to a CDN, which
frequently provide more than one IP address (usually two). Not sure if the
3DS needs access to both or just one.
I'm also not sure where RaspiPass is saving its log file, to put that into
the script.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJu6DUptoiDeEmCaAau5IH7WKIP0nxks5timSEgaJpZM4SyrXq>
.
|
You could ping them, but it would only return one IP address. I'm not sure if the 3DS would try both IPs DNS handed it and retry until it succeeded, or if it just gives up. I've been so busy this week, I'll need to visit it hopefully Saturday to pull all the DNS responses to the 3DS. Unfortunately, IPTables requires IP addresses and can't do FQDNs (to my knowledge). I really wish it would receive the request, make a DNS query, cache the responses, then add them to the table. But I guess that could open it up for DNS poisoning... |
Sorry for going radio silence there for a while... accounts.nintendo.com is 52.86.186.6 AND 52.205.220.59 |
One option to look at would be to amend the iptables.sh file to run the lookups. If you look at running something like Wondering if it wouldn't be best to look at reading that into an array and parsing through it. We could, for example, put something like this at the top of iptables.sh:
That will pull the IPs returned by Essentially -- given we have the right list of hostnames -- the whole bank of streetpass relay whitelist entries in iptables.sh can be replaced with lines of Then it's just a matter adding iptables --flush to the top of iptables.sh, and setting a root cronjob to run it regularly to re-lookup IPs on the fly. |
I didn't even know that command existed haha. That makes things a lot easier. |
So I got my Pi3 and 3DS back.. got the Pi booted and installed dnsutils to get the dig command while I clear out my streetpass queue. Looking at the copy I have here, I've got the timezone changing and faster web UI to push out in the next version too. Looks like I left a lot of unmerged work on the 'working' tree 🤦♂️ Once I'm clear I'll do digaround() as detailed above and see if I get any hits Hopefully the whitelist entries should just work with
|
Running ~24 hours with the firewall off, and no streetpass hits. I'm suspecting there's an issue with StreetPass on my 3DS since the battery was stone-dead when I got it back, but I'm trying to avoid a full system format. |
Hey Mark - make sure you clear out any existing Streetpasses. Happened to
me when I was trying to test. Assuming you are running the latest stock
firmware on the 3DS, and not anything custom?
…On Wed, Apr 4, 2018 at 1:56 AM, Mark ***@***.***> wrote:
Running ~24 hours with the firewall off, and no streetpass hits. I'm
suspecting there's an issue with StreetPass on my 3DS since the battery was
stone-dead when I got it back, but I'm trying to avoid a full system format.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJu_7aNbrIySUlB0tMwrpO0_yQH6btks5tlGB-gaJpZM4SyrXq>
.
|
I also had that issue, wouldn't receive any StreetPass visits even after clearing out my line and plaza. |
The solution I currently use, and is working (at least as of last week), is
a RPi1 B+ that uses SpillPass. I haven't touched that thing in years and it
just keeps working. But it does create an open WiFi access point, no
filtering or firewall. Not an issue for me, I live out the middle of the
country with neighbors too far away to pull down my signal. I'll triple
check my old RPi and see if it's still delivering (I have 4x 3DS's in the
house, easy to test it).
…On Wed, Apr 4, 2018 at 4:26 PM, joshbgosh10592 ***@***.***> wrote:
I also had that issue, wouldn't receive any StreetPass visits even after
clearing out my line and plaza.
I had to turn StreetPass off of everything from within mii plaza, delete
the "extra data" for plaza from 3DS settings, and open it again.
I had to wait a little for the puzzles to appear again (update, probably),
and I lost progress for everything that was additionally purchased (mii
force, wrangler, etc.) but didn't need to reset from factory.
However, I'm not getting any passes from my other solution (spoofed MAC
using DD-WRT) at the moment... Not sure if I need to reset again (stupid
bug...) or if Nintendo did something. I'm sure if they did do something, it
would be a lot louder, though.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJu2XlcU8yVzyjknh1Moh54cmG93UKks5tlSxzgaJpZM4SyrXq>
.
|
All my StreetPass games have been cleared of hits.. I keep getting the same SpotPass notification coming in though, which is a good indicator of an issue with the 3DS software. Still googling around for a non-destructive solution :( |
I'm having the same problem... I even did my semi-destructive solution that worked before, and I still haven't received a HomePass hit... I'm testing if I can actually StreetPass with another 3DS now, which I REALLY hope works, as I'm going to a convention this weekend and if I can't StreetPass, I'm going to be StreetPissed. |
I'll test with my 3DS when my power is back on at home (lost power due to
storms). When I was testing this a couple weeks ago during the start of our
conversation, I was able to get streetpasses with the last April image and
the firewall disabled. I used these commands to disable the Firewall - and
received Streetpasses in seconds.
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
I'm going to try this same approach later, and then test with the IPs
you have provided as well.
…On Thu, Apr 5, 2018 at 9:02 AM, joshbgosh10592 ***@***.***> wrote:
I'm having the same problem... I even did my semi-destructive solution
that worked before, and I still haven't received a HomePass hit... I'm
testing if I can actually StreetPass with another 3DS now, which I REALLY
hope works, as I'm going to a convention this weekend and if I can't
StreetPass, I'm going to be StreetPissed.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJuydYdyPyweOjB9W6o6PZ5dEMdt2Jks5tlhXpgaJpZM4SyrXq>
.
|
I'm glad it's working for you at least. I dumped my firewall and still received no HomePass hits, no matter which MAC I'm using for the AP. |
Looks like we might be dead in the water here. My old Spillpass that has been rock solid since HomePass got started years ago - is not giving out any streetpasses. The last Nintendo Zone is now in NYC - site was quietly updated with the following - http://en-americas-support.nintendo.com/app/answers/detail/a_id/277/~/where-are-nintendo-zones-located%3F I think Homepass may be over. My last thought is to try the MAC address for that last Nintendo Zone in NYC and see if they are still storing the Streetpass Data for that MAC. |
Darnit. Looks like Nintendo killed the Homepass relay system... Check out Homepass.info.. "As of the beginning of April 2018, Nintendo has discontinued the Streetpass Relay system - which has effectively killed HomePass in its' current state. If any further developments are made to the HomePass system (e.g. some sort of Homebrew version), then this sheet will be updated to reflect those changes. But for now it is a sad farewell to one of the best updates Nintendo released for the 3DS. It's been a fun 5 years - so long and thanks for all the passes!" |
p.s. That is my spreadsheet! I added that heading because I was being
bombarded with questions about "Why isn't my Homepass working!?" I was
basing that knowledge on what I gleaned around the web, as well as our
experiments here. Yeah :(
Trivia time - I created and ran the Homepass.INFO spreadsheet from Day 1 of Homepass's inception! I was there on the GBATemp thread trying to figure out how to make it work the first couple days. My comments still appear in the beginning of that legendary thread! Sigh. I miss Homepass.
…On Tue, May 1, 2018 at 4:16 PM, joshbgosh10592 ***@***.***> wrote:
Darnit. Looks like Nintendo killed the Homepass relay system... Check out
Homepass.info..
"As of the beginning of April 2018, Nintendo has discontinued the
Streetpass Relay system - which has effectively killed HomePass in its'
current state. If any further developments are made to the HomePass system
(e.g. some sort of Homebrew version), then this sheet will be updated to
reflect those changes. But for now it is a sad farewell to one of the best
updates Nintendo released for the 3DS. It's been a fun 5 years - so long
and thanks for all the passes!"
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJu75QcEJv7c2aegv_UaSzIYY5FVR0ks5tuMKlgaJpZM4SyrXq>
.
|
Could tools like RaspiPass and @fatmagic spreadsheet be used to create our own relays? Between me and my kids we have 5 3ds in our house. If we could share our Pi mac addresses, can they be used to share streetpasses without Nintendo's involvement? |
Hi Jessie -
I'm in the same boat! I have four 3DS's in my house (kids & mine). I really
want back HomePass (more for my kids than myself, they loved it). But
unfortunately, it would require a very heavy effort and lots of reverse
engineering. Take a look at this thread on GBATemp that "bungiefan" wrote a
few weeks ago. He nails it on the head (you'll see my response below his
post). And then he follows up with an additional post further clarifying
that it would be very hard to pull off.
https://gbatemp.net/threads/nintendo-zone-now-only-available-in-new-york-city.500138/#post-7913749
So, unfortunately, Homepass is most likely over :-(
…On Thu, May 3, 2018 at 2:47 PM, Jesse Harris ***@***.***> wrote:
Could tools like RaspiPass and @fatmagic <https://github.com/fatmagic>
spreadsheet be used to create our own relays? Between me and my kids we
have 5 3ds in our house. If we could share our Pi mac addresses, can they
be used to share streetpasses without Nintendo's involvement?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#32 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ATqJu3lnctgLhvD_fljIaeX1GdNBwdpNks5tu1CngaJpZM4SyrXq>
.
|
@fatmagic I didn't know you were that involved in that! That's pretty awesome! |
I saw someone in that thread has access to a still-active point. There's still a very slim option if we can emulate the data sent to/from the Nintendo services, but that does seem pretty slim. We'd be able to set hosts table entries to send the packets to/from a server of our designing instead of Nintendo's, but there are so many things in the way of getting that working. :( What we really need is an insider from Nintendo. |
Hi! Once I reboot the Pi, the AP isn't automatically started, which may be by design, which is fine. I click start AP under Admin tasks. Most of the time, it succeeds. If it doesn't for whatever reason, I just reboot the Pi using the admin tab, and it works. Until the first change. Then my 3DSs cannot connect for a while, and I'll keep connection testing to the attwifi network, and it'll fail (Error code 003-1099, "No AP in range") most of the time and randomly connect again.
I'm also not putting the fact that I'm in an apartment complex with a lot of wireless networks broadcasting... If that is the cause, how often does a 3DS attempt to reach out with a StreetPass relay?
I'm mostly concerned if this part is what's causing the failure:
Here's the most recent log, after I let it change MACs the first time:
The text was updated successfully, but these errors were encountered: