Weird anycast destination issue? (US → NRT → DFW)

I was noticing that connecting to my app and Fly.io were being slower than usual and thought something might have been down with Fly’s servers. However, after some investigation, it looks like my traffic is being routed to Tokyo (NRT) before it makes it back to Dallas (DFW) where my app is hosted.

This appears to be an issue with my ISP, as changing to using a hotspot connection from my cellular provider routed me directly to DFW. I’m not sure if there is anything to do about this from Fly’s end, as it seems like my ISP just needs to get their BGP routes sorted out, but I figured I’d post to see if anyone else was having a similar issue.

Here is a cURL command I found somewhere else to show the Fly debug info:

❯ curl -s -o /dev/null -w @/tmp/curlformat -H "flyio-debug: doit" https://myapp.fly.dev # Obfuscated name
time_namelookup:  0.003840s
      time_connect:  0.131942s
   time_appconnect:  0.274572s
  time_pretransfer:  0.274671s
     time_redirect:  0.000000s
time_starttransfer:  0.599431s
----------
        time_total:  0.599741s


{"date":["Wed, 08 Jul 2026 02:23:21 GMT"],
"content-length":["72"],
"vary":["accept-encoding"],
"content-type":["text/html; charset=utf-8"],
"x-permitted-cross-domain-policies":["none"],
"x-content-type-options":["nosniff"],
"content-security-policy":["base-uri 'self'; frame-ancestors 'self';"],
"referrer-policy":["strict-origin-when-cross-origin"],
"cache-control":["max-age=0, private, must-revalidate"],
"x-request-id":["GMAvP3wq_6daN1kABFHC"],
"location":["/login"],
"server":["Fly/6db84cd2 (2026-07-07)"],
"via":["2 fly.io, 2 fly.io"],
"fly-request-id":["01KWZRJYF56FA9W79EC4XC5TH1-nrt"],
"flyio-debug":["{\"n\":\"edge-dp-nrt1-00ff\",\"nr\":\"nrt\",\"ra\":\"216.16.29.200\",\"rf\":\"Verbatim\",\"sr\":\"dfw\",\"sdc\":\"dfw1\",\"sid\":\"e820e34c72d4d8\",\"st\":0,\"nrtt\":0,\"bn\":\"worker-dp-dfw1-7dcd\",\"mhn\":\"worker-dp-dfw1-7dcd\",\"mrtt\":131}"]
}

Performing a trace route also validates that my requests are bouncing across the US and to Tokyo. This is just happening to Fly anycast IPs for me; other traffic correctly doesn’t leave the continent.

Hi… Other people have mentioned weirdness with Tokyo-related routes lately:

https://community.fly.io/t/ipv6-routes-eu-traffic-transatlantic/28204/4

https://community.fly.io/t/anycast-routing-issue-kddi-as2516-and-iij-as2497-routing-to-us-west-sjc-lax-instead-of-nrt/28125

(The forum unfortunately doesn’t have a specific tag dedicated to this topic, even though Anycast was the original raison d’être of Fly.io, :sweat_smile:.)

If you could post the mtr traces mentioned in those, that would probably help them diagnose this further…

Anycast is certainly why I love hosting on Fly.

Here is my mtr trace for my app:

❯ sudo /opt/homebrew/sbin/mtr -bzo "LSD NABVW" -rw myapp.fly.dev
Start: 2026-07-07T21:51:34-0500
HOST: brendan-m5.local                                                           Loss%   Snt Drop   Last   Avg  Best StDev  Wrst
  1. AS???         172.25.1.1                                                     0.0%    10    0    2.9   5.2   2.9   2.5  10.1
  2. AS???         100.68.32.1                                                    0.0%    10    0   12.9  20.7   4.5  34.4 117.8
  3. AS???         ???                                                           100.0    10   10    0.0   0.0   0.0   0.0   0.0
  4. AS???         10.195.12.18                                                   0.0%    10    0    3.8   5.5   3.7   1.9   9.2
  5. AS???         ???                                                           100.0    10   10    0.0   0.0   0.0   0.0   0.0
  6. AS20412       ae6-16.sdsxflh01corj02.mybluepeak.net (216.16.3.66)            0.0%    10    0    3.8   4.9   3.7   1.9   9.3
  7. AS20412       ae0-0.sdsxflh01corj01.mybluepeak.net (216.16.3.128)            0.0%    10    0    3.8   5.2   3.8   1.8   9.5
  8. AS20412       ae0-0.neomahc01eprj01.mybluepeak.net (76.73.201.153)           0.0%    10    0    9.2   9.4   8.3   1.8  14.2
  9. AS20412       ae1-0.codnvrc01eprj01.mybluepeak.net (75.76.161.160)           0.0%    10    0   19.4  19.9  19.0   1.7  24.5
 10. AS6939        hundredgige0-0-0-39.core1.den1.he.net (184.105.16.201)         0.0%    10    0   22.1  22.2  20.9   0.8  23.7
 11. AS6939        100ge0-0-0-2.core1.sea1.he.net (184.104.193.186)              20.0%    10    2  129.5 129.6 128.9   0.4 130.1
 12. AS???         ???                                                           100.0    10   10    0.0   0.0   0.0   0.0   0.0
 13. AS6939        port-channel9.core2.tyo1.he.net (184.104.199.9)               30.0%    10    3  130.9 128.1 126.9   1.3 130.9
 14. AS???         210.173.177.66                                                 0.0%    10    0  126.7 130.0 126.4   4.7 138.7
 15. AS???         vl221.tyo-eq8-dist-2.cdn77.com (79.127.194.100)               20.0%    10    2  127.4 128.3 126.3   4.1 138.4
 16. AS40509       ip-66-241-125-226.shared.customer.flyio.net (66.241.125.226)   0.0%    10    0  126.2 128.3 126.2   2.3 132.6

And here is the mtr trace for fly.io:

❯ sudo /opt/homebrew/sbin/mtr -bzo "LSD NABVW" -rw fly.io                
Start: 2026-07-07T21:52:54-0500
HOST: brendan-m5.local                                                     Loss%   Snt Drop   Last   Avg  Best StDev  Wrst
  1. AS???         172.25.1.1                                               0.0%    10    0    3.1   3.1   2.9   0.1   3.3
  2. AS???         100.68.32.1                                              0.0%    10    0    4.4  11.0   4.4   8.0  26.9
  3. AS???         ???                                                     100.0    10   10    0.0   0.0   0.0   0.0   0.0
  4. AS???         10.195.12.18                                             0.0%    10    0    9.0   8.7   3.5  12.3  43.1
  5. AS???         ???                                                     100.0    10   10    0.0   0.0   0.0   0.0   0.0
  6. AS20412       ae6-15.sdsxflh01corj01.mybluepeak.net (216.16.3.64)      0.0%    10    0    4.3   5.5   3.6   2.5   9.1
  7. AS20412       ae0-0.neomahc01eprj01.mybluepeak.net (76.73.201.153)     0.0%    10    0   14.0  11.1   8.5   2.6  15.1
  8. AS20412       ae1-0.codnvrc01eprj01.mybluepeak.net (75.76.161.160)     0.0%    10    0   19.3  42.7  19.0  45.8 129.8
  9. AS6939        hundredgige0-0-0-39.core1.den1.he.net (184.105.16.201)   0.0%    10    0   22.0  29.4  19.7  16.7  62.3
 10. AS6939        100ge0-0-0-2.core1.sea1.he.net (184.104.193.186)        20.0%    10    2  132.7 130.1 128.2   2.2 134.1
 11. AS???         ???                                                     100.0    10   10    0.0   0.0   0.0   0.0   0.0
 12. AS6939        port-channel9.core2.tyo1.he.net (184.104.199.9)         20.0%    10    2  127.1 128.7 126.9   2.2 132.2
 13. AS???         210.173.177.66                                           0.0%    10    0  127.5 127.3 126.4   1.7 131.9
 14. AS???         vl221.tyo-eq8-dist-1.cdn77.com (79.127.194.99)          30.0%    10    3  126.5 126.6 126.2   0.3 127.1
 15. AS40509       ip-37-16-18-81.customer.flyio.net (37.16.18.81)          0.0%    10    0  175.8 132.6 126.5  15.3 175.8

And finally here is my trace for google.com:

❯ sudo /opt/homebrew/sbin/mtr -bzo "LSD NABVW" -rw google.com            
Start: 2026-07-07T21:54:02-0500
HOST: brendan-m5.local                                                     Loss%   Snt Drop   Last   Avg  Best StDev  Wrst
  1. AS???         172.25.1.1                                               0.0%    10    0    3.0   3.3   3.0   0.5   4.7
  2. AS???         100.68.32.1                                              0.0%    10    0    5.5   9.1   5.4   2.9  13.2
  3. AS???         ???                                                     100.0    10   10    0.0   0.0   0.0   0.0   0.0
  4. AS???         10.195.12.18                                             0.0%    10    0    5.1   4.1   3.4   0.5   5.1
  5. AS???         ???                                                     100.0    10   10    0.0   0.0   0.0   0.0   0.0
  6. AS20412       ae6-16.sdsxflh01corj02.mybluepeak.net (216.16.3.66)      0.0%    10    0    3.8   4.7   3.7   1.4   7.2
  7. AS20412       ae0-0.sdsxflh01corj01.mybluepeak.net (216.16.3.128)      0.0%    10    0    4.6   4.3   3.8   0.3   4.7
  8. AS20412       ae0-0.neomahc01eprj01.mybluepeak.net (76.73.201.153)     0.0%    10    0    8.2   8.9   8.2   0.7  10.7
  9. AS20412       ae1-0.codnvrc01eprj01.mybluepeak.net (75.76.161.160)     0.0%    10    0   19.3  19.8  18.9   1.1  22.6
 10. AS6939        hundredgige0-0-0-39.core1.den1.he.net (184.105.16.201)   0.0%    10    0   21.5  22.1  20.8   1.2  24.3
 11. AS???         google.any2.coresite.com (206.51.46.3)                   0.0%    10    0   19.1  19.4  18.7   1.0  22.0
 12. AS15169       142.251.192.109                                          0.0%    10    0   20.7  22.6  20.2   2.5  28.5
 13. AS15169       192.178.97.20                                            0.0%    10    0   20.3  20.9  19.8   1.4  23.7
 14. AS15169       172.253.51.76                                            0.0%    10    0   20.5  20.9  20.1   0.8  23.0
 15. AS15169       142.251.228.182                                          0.0%    10    0   33.2  32.9  31.6   3.0  41.4
 16. AS15169       209.85.142.248                                           0.0%    10    0   32.3  32.7  31.9   0.7  34.5
 17. AS15169       192.178.255.7                                            0.0%    10    0   34.3  31.4  30.8   1.0  34.3
 18. AS15169       142.251.233.233                                          0.0%    10    0   30.9  32.5  30.7   3.0  38.1
 19. AS15169       142.251.194.179                                          0.0%    10    0   31.1  31.8  30.9   0.7  33.0
 20. AS15169       216.239.47.87                                            0.0%    10    0   31.4  31.6  31.1   0.4  32.5
 21. AS15169       ncorda-ar-in-f14.1e100.net (142.251.214.206)             0.0%    10    0   30.4  31.2  30.4   1.6  35.7

Hey @brendanfh, thanks for bringing this to our attention.

Yeah it does seem AS6939’s network (upstream of your ISP) is sending our traffic in an odd direction.
I’ve spoken to our networking team and we believe its an upstream misconfiguration or route leak that’s happened because of some changes in our network but not things we directly control unfortunately. We’re already in progress of getting this sorted with an upstream provider of ours, will let you know when we know more.

Cheers

this should be fixed now.

I can confirm with mtr and debug cURL that I am being routed correctly now. Thank you!