# IPv4 anycast from India (RailTel AS24186 → Airtel AS9498) lands on AMS edge instead of SIN; IPv6 correctly lands on SIN

**URL:** <https://community.fly.io/t/ipv4-anycast-from-india-railtel-as24186-airtel-as9498-lands-on-ams-edge-instead-of-sin-ipv6-correctly-lands-on-sin/28915>\
**Category:** General\
**Created:** [October 25, 2026, 8:29am UTC](https://community.fly.io/t/ipv4-anycast-from-india-railtel-as24186-airtel-as9498-lands-on-ams-edge-instead-of-sin-ipv6-correctly-lands-on-sin/28915 "2026-10-25T08:29:19Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![rohanrd](https://avatars.discourse-cdn.com/v4/letter/r/a587f6/32.png) [@rohanrd](https://community.fly.io/u/rohanrd)\
**Post date:** [October 25, 2026, 8:29am UTC](https://community.fly.io/t/ipv4-anycast-from-india-railtel-as24186-airtel-as9498-lands-on-ams-edge-instead-of-sin-ipv6-correctly-lands-on-sin/28915/1 "2026-10-25T08:29:19Z")

</div>

Hi all,

My app runs in `sin`, but from India my **IPv4** traffic to Fly’s anycast is routed to the **Amsterdam** edge and then backhauled to Singapore. Over **IPv6** from the same machine and connection, traffic reaches the **Singapore** edge directly. That makes IPv4 roughly 3× slower and adds ~300 ms per request round trip.

### Setup

- **Location:** India
- **ISP:** RailTel (AS24186). Its IPv4 upstream is Bharti Airtel (AS9498), and its IPv6 upstream is Reliance Jio (AS55836).
- **App region:** `sin`
- **Fly IPv4 (shared):** `66.241.125.98`
- **Fly IPv6:** `2a09:8280:1::b7:fdd6:0`
- **Tested:** 2026-10-25, ~08:20–08:40 UTC

### IPv4 → AMS edge

```auto
$ mtr -n -r -c 10 -w 66.241.125.98
HOST: fedora Loss% Snt Last Avg Best Wrst StDev
  1.|-- 192.168.1.1 0.0% 10 1.4 1.5 1.4 1.7 0.1
  2.|-- ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
  ...
  6.|-- 122.185.147.169 90.0% 10 10.1 10.1 10.1 10.1 0.0 # Airtel AS9498
  7.|-- 116.119.33.228 0.0% 10 108.0 107.9 107.0 111.1 1.2 # Airtel AS9498
  8.|-- 185.1.226.199 0.0% 10 137.5 137.6 137.2 138.2 0.3 # as57463.226.199.netix.net
  9.|-- 185.1.222.47 0.0% 10 144.7 144.7 144.2 145.3 0.4 # speed-ix.cdn77.com (NL)
 10.|-- 169.150.194.34 0.0% 10 145.0 144.9 144.5 145.3 0.2 # vl232.ams-eq6-core-2.cdn77.com
 11.|-- 79.127.194.83 0.0% 10 137.9 137.7 137.0 138.7 0.5 # vl221.ams-eq6-dist-1.cdn77.com
 12.|-- 66.241.125.98 0.0% 10 142.1 142.2 141.6 142.9 0.5

```

The response headers confirm the AMS edge:

```auto
$ curl -sI http://66.241.125.98/
via: 2 fly.io, 2 fly.io
fly-request-id: 01M5S2D0XKTAV10ASTPCZJRPCS-ams

```

More IPv4 request IDs, all `-ams`:

- `01M5S31V4A4EPWTTFK77R5RCXX-ams`
- `01M5S31VYNVQB4SZV3WBBB9MJ0-ams`
- `01M5S31WQD1WQJWBSBWN32C7EC-ams`

TCP connect time over IPv4 is about **156 ms**.

### IPv6 → SIN edge (expected)

```auto
$ mtr -6 -n -r -c 10 -w 2a09:8280:1::b7:fdd6:0
  1.|-- <home router> 0.0% 10 1.5 1.5 1.4 1.6 0.1
  2.|-- 2401:b200:2060:8::1 0.0% 10 3.9 4.0 3.3 5.3 0.5 # RailTel AS24186
  ...
  7.|-- 2405:203:881::3a9 0.0% 10 10.0 10.4 9.4 13.4 1.1 # Jio AS55836
 10.|-- 2001:de8:4::6:68:1 0.0% 10 58.5 59.2 58.5 61.2 0.8 # 60068.sgw.equinix.com
 12.|-- 2a02:6ea0:1:5::33 30.0% 10 59.4 86.3 59.4 127.4 24.8
 13.|-- 2a09:8280:1::b7:fdd6:0 0.0% 10 60.8 59.6 59.0 60.8 0.5

```

```auto
fly-request-id: 01M5S32FVRKN3TA0C64SG52QT2-sin

```

TCP connect time over IPv6 is about **61 ms**.

### It’s not just my IP

Other Fly IPv4 anycast addresses also go to AMS from this network. `debug.fly.dev` behaves the same way:

| Address | Edge | TCP connect |
| --- | --- | --- |
| `77.83.140.164` (v4) | ams | 146 ms |
| `37.16.16.7` (v4) | ams | 148 ms |
| `37.16.21.10` (v4) | ams | 148 ms |
| `2a09:8280:1::1:2` (v6) | sin | 61 ms |

All IPv4 paths exit Airtel and enter CDN77/Datacamp (AS60068) in Amsterdam, through NetIX and Speed-IX. The IPv6 path enters the same AS60068 at Equinix Singapore. So it looks like Airtel AS9498 prefers a European path to Fly’s IPv4 prefixes, possibly because of how they’re announced or prepended toward Airtel in Asia.

### Impact

For each uncached request, the round trip is India → AMS → SIN → AMS → India, about 300+ ms, compared with about 60 ms when routed correctly. I run a DNS-over-TLS resolver on Fly, so every uncached lookup takes about 320 ms over IPv4.

Could someone on the networking side look at how Fly’s IPv4 anycast prefixes are announced to or received by Airtel (AS9498) in Asia? I’m happy to run more tests (mtr, traceroutes to specific prefixes, etc.) if that helps.

Thanks!
