Network · AS16970

AS16970 MIDnet

AS16970 (MIDnet) looks like an internet service provider, so its addresses are mostly real home, business or mobile connections.

Network check ASN

AS16970

  • OwnerMIDnet
  • KindInternet service provider
  • Servers, not peopleno
  • IPv4 addresses4,096
  • IPv4 ranges5
  • IPv6 ranges1
Risk score0

Nothing suspicious found.

Largest IPv4 ranges

  • 23.169.248.0/21
  • 23.169.240.0/22
  • 23.169.244.0/23
  • 72.20.158.0/24
  • 64.40.23.0/24

Ranges and owner from DB-IP (CC BY 4.0), updated 2026-10-21.

Check an IP address →

Detect it in code

Spot AS16970 traffic at signup.

Send the visitor's IP. The response includes the ASN, the owner and flags.hosting.

curl https://veqen-app.com/v1/ip/check \
  -H "Authorization: Bearer $VEQEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ip": "203.0.113.7"}'
import os, requests

r = requests.post(
    "https://veqen-app.com/v1/ip/check",
    headers={"Authorization": f"Bearer {os.environ['VEQEN_API_KEY']}"},
    json={"ip": "203.0.113.7"},
    timeout=10,
)
result = r.json()
print(result["risk"]["verdict"], result["risk"]["reasons"])
const res = await fetch("https://veqen-app.com/v1/ip/check", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.VEQEN_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"ip": "203.0.113.7"}),
});
const result = await res.json();
console.log(result.risk.verdict, result.risk.reasons);
Questions

About AS16970

Is AS16970 a datacenter or VPN network?

AS16970 (MIDnet) looks like an internet service provider, so its addresses are mostly real home, business or mobile connections.

Who owns AS16970?

AS16970 is registered to MIDnet. It announces about 4,096 IPv4 addresses.

How do I detect traffic from AS16970?

Call the Veqen IP check with the visitor's address. The response includes the ASN, the owner and whether the network is a datacenter, VPN network, relay or ISP.