Skip to content

IPv4 address

217.16.30.63

Last fetched

217.16.30.63 is announced in 217.16.16.0/20 by VK-AS - LLC VK and geolocates to RU. 217.16.30.63 is listed by 1 threat feed; reconciled level LOW.

Threat posture

0.5threat score (procedure-native scale)

LOW

Listed by 1 threat feed.

Threat feeds listing this
1
Verdict coverage
malicious-evidenced
First seen on a feed
Wed, 26 Aug 2026 08:33:22 GMT
Last seen on a feed
Mon, 28 Sep 2026 19:31:28 GMT

Nutrition Label

WHISPER CANON · 217.16.30.63Routing diversity10.0/10Peering density4.2/10MOAS conflict✓ noneThreat-feed listings8.0/10WHOIS transparency—Resolver footprint—canon.whisper.security/ip/217.16.30.63

Attribution

Announced prefix
217.16.16.0/20
Announcing network
VK-AS - LLC VK
RIR-registered prefix
217.16.16.0/20
RPKI
not-found

Anycast detection

This does not appear to be an anycast address on the three signals Canon evaluates: reverse DNS, announced-prefix width and the announcing network's peer count.

Reverse DNS

Geographic detail

City
Moscow, RU
Country
RU
Dominant city of the prefix
Moscow, RU

Threat-feed listings

Threat-feed evidence

History

Related pages

Pivot from 217.16.30.63 into the prefix, network and country that carry it.

Queries

This address's full card — routing attribution, reverse DNS and listed feeds.


MATCH (ip:IPV4 {name: $ip})
OPTIONAL MATCH (ip)-[:BELONGS_TO]->(rp:REGISTERED_PREFIX)
OPTIONAL MATCH (ip)-[:ANNOUNCED_BY]->(ap:ANNOUNCED_PREFIX)
OPTIONAL MATCH (a:ASN)-[:ROUTES]->(ap)
OPTIONAL MATCH (a)-[:HAS_NAME]->(an:ASN_NAME)
OPTIONAL MATCH (ip)-[:LOCATED_IN]->(city:CITY)
OPTIONAL MATCH (ip)-[:HAS_COUNTRY]->(ipc:COUNTRY)
WITH ip, rp, ap, a, an, city, ipc
LIMIT 10
WITH ip,
     collect(rp.name) AS registeredPrefixes,
     collect({prefix: ap.name, asn: a.name, network: an.name, isMoas: ap.isMoas, rpkiStatus: ap.rpkiStatus, isAnycast: ap.isAnycast, dominantCity: ap.dominantCity}) AS announcements,
     collect(city.name) AS cities,
     collect(ipc.name) AS countries,
     collect(a.name) AS announcerNames,
     head(collect(a)) AS primaryAsn,
     head(collect(ap)) AS primaryPrefix
OPTIONAL MATCH (primaryPrefix)-[:CONFLICTS_WITH]->(conflict:ASN)
WITH ip, registeredPrefixes, announcements, cities, countries, announcerNames, primaryAsn,
     collect(conflict.name) AS conflictAsns
CALL { WITH primaryAsn MATCH (primaryAsn)-[:ROUTES]->(p:ANNOUNCED_PREFIX) RETURN count(p) AS asnPrefixCount }
CALL { WITH primaryAsn MATCH (primaryAsn)-[:BGP_NEIGHBOR]-(peer:ASN) RETURN count(peer) AS asnPeerCount }
RETURN ip.name AS name,
       ip.verdictLevel AS verdictLevel,
       ip.verdictScore AS verdictScore,
       ip.verdictBlocking AS verdictBlocking,
       ip.verdictCoverage AS verdictCoverage,
       ip.verdictAdvisory AS verdictAdvisory,
       ip.threatSources AS threatSources,
       ip.threatFirstSeen AS threatFirstSeen,
       ip.threatLastSeen AS threatLastSeen,
       ip.isTor AS isTor,
       ip.isVpn AS isVpn,
       ip.isProxy AS isProxy,
       ip.isC2 AS isC2,
       ip.isPhishing AS isPhishing,
       registeredPrefixes, announcements, cities, countries, announcerNames, conflictAsns,
       asnPrefixCount, asnPeerCount
Run yourself →

Or query Whisper from your own LLM workflow via the Whisper MCP server.