PHPackages                             frdl/oid-connect-rdap - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. frdl/oid-connect-rdap

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

frdl/oid-connect-rdap
=====================

OID-Connect RDAP Client (Whois via RDAP)

v0.0.4(1y ago)0173GPL-3.0-or-laterPHPPHP &gt;= 8.1

Since Jun 8Pushed 1y agoCompare

[ Source](https://github.com/frdl/oid-connect-rdap)[ Packagist](https://packagist.org/packages/frdl/oid-connect-rdap)[ Fund](https://www.paypal.me/pentagonal)[ GitHub Sponsors](https://github.com/arrayiterator)[ RSS](/packages/frdl-oid-connect-rdap/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (4)Versions (5)Used By (3)

OID-Connect RDAP
================

[](#oid-connect-rdap)

RDAP look ups extended by [OID-Connect](https://registry.frdl.de/?goto=oid%3A1.3.6.1.4.1.37553.8.1.8.1.33061) protocols.

OID-Connect RDAP Client (Whois via RDAP)

**Forked from [ArrayAccess/RDAPClient](https://github.com/ArrayAccess/RDAP-Client)**

RDAP CLIENT
===========

[](#rdap-client)

RDAP Client For PHP (Formerly Whois via http protocol)

Requirements
------------

[](#requirements)

- php `8.1` or later
- `ext-json`
- `ext-intl`

### IETF RDAP Reference

[](#ietf-rdap-reference)

- Registration Data Access Protocol (RDAP) Object Tagging **[\#RFC8521](https://datatracker.ietf.org/doc/html/rfc8521)**
- Security Services for the Registration Data Access Protocol (RDAP) **[\#RFC7481](https://datatracker.ietf.org/doc/html/rfc7481)**
- Registration Data Access Protocol (RDAP) Query Format **[\#RFC9082](https://datatracker.ietf.org/doc/html/rfc9082)**
- JSON Responses for the Registration Data Access Protocol (RDAP) **[\#RFC9083](https://datatracker.ietf.org/doc/html/rfc9083)**
- Finding the Authoritative Registration Data (RDAP) Service **[\#RFC9224](https://datatracker.ietf.org/doc/html/rfc9224)**

Schema Inventory &amp; Analysis of WHOIS object

- Inventory and Analysis of WHOIS Registration Objects **[\#RFC7485](https://datatracker.ietf.org/doc/html/rfc7485)**

### IANA RDAP Data

[](#iana-rdap-data)

Iana provide data about rdap

- HTTP :
- Bootstrap Service Registry for AS Number Space **[\#RFC9224](https://datatracker.ietf.org/doc/html/rfc9224)**
- Bootstrap Service Registry for Domain Name Space **[\#RFC9224](https://datatracker.ietf.org/doc/html/rfc9224)**
- Bootstrap Service Registry for IPv4 Address Space **[\#RFC9224](https://datatracker.ietf.org/doc/html/rfc9224)**
- Bootstrap Service Registry for IPv6 Address Space **[\#RFC9224](https://datatracker.ietf.org/doc/html/rfc9224)**
- Bootstrap Service Registry for Provider Object Tags **[\#RFC8521](https://datatracker.ietf.org/doc/html/rfc8521)**
- Recovered IPv4 Pool **[\#RFC8521](https://datatracker.ietf.org/doc/html/rfc8521)**

For list of predefined recovered IPv4 addresses: **[RecoveredIPv4.php](src/Services/RecoveredIPv4.php)**

### Example Usage

[](#example-usage)

See [Client.php](src/Client.php) for more methods

```
use ArrayAccess\RdapClient\Client;
use ArrayAccess\RdapClient\Interfaces\RdapRequestInterface;
use ArrayAccess\RdapClient\Protocols\AsnProtocol;
use ArrayAccess\RdapClient\Protocols\DomainProtocol;
use ArrayAccess\RdapClient\Protocols\IPv4Protocol;
use ArrayAccess\RdapClient\Protocols\IPv6Protocol;
use ArrayAccess\RdapClient\Protocols\NsProtocol;

$client = new Client();
/**
 * @var RdapRequestInterface $request
 */
$domainName = 'example.com';
$request = $client->request($domainName);

/**
 * @var RdapRequestInterface $request
 */
$ipv4 = '192.0.47.59'; // iana.org ipv4
$request = $client->request($ipv4);

/**
 * @var RdapRequestInterface $request
 */
$ipv6 = '2404:6800:4003:c01::66'; // google.com
$request = $client->request($ipv6);

/**
 * @var RdapRequestInterface $request
 * Name server guessing by prefix (ns[0-9]*).domain-name.ext or [^\.]+.(ns[0-9]*.[^\.]+\.)(?:.+).domain-name.ext
 */
$nameserver = 'ns1.google.com'; // google name server
$request = $client->request($nameserver);

/**
 * @var RdapRequestInterface $request
 * Autonomous System Number parsed by "^(?ASN?)?(?[0-9]+)$"
 */
$asNumber = 'AS15169'; // Google LLC ASN
// or just put the numeric string / integer
$request = $client->request($asNumber);
```

```
// getting object response
$response = $request->getResponse();
// getting json data
$jsonResponse = $response->getResponseJson();
// getting definition object
$definition = $response->getDefinition();
// if domain > getting related / another whois server request if possible
$alternateRequest = $definition->getRelatedRequest();
// json serialize
$fallbackToJson = json_encode($definition, JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
```

```
// direct call with custom request target
// makes sure the type of RDAP uri target is equal '/domain/GOOGLE.com' as domain-protocol
$newRequest = $request->withRdapSearchURL('https://rdap.markmonitor.com/rdap/domain/GOOGLE.COM');
$response = $newRequest->getResponse();
```

See [Response/Definitions](src/Response/Definitions) for more details about code

Note
----

[](#note)

The code of data definition contains strict types. Some of the invalid data will throw an error.

WHOIS Data Collection
---------------------

[](#whois-data-collection)

Refer to: *(gist)* [WHOIS List](https://gist.github.com/ArrayIterator/1a8df2b5c59f50990661f11c050c7c2a) to get the list of whois servers / ip range / sTLD etc.

**Caution!** the gist contains huge data.

LICENSE
-------

[](#license)

[GPL-3.0-or-later](LICENSE)

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 83.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~52 days

Total

4

Last Release

545d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/831c50002c08bb751b698844c98cd6b36897678268b47f1f872a30f4e192ac22?d=identicon)[webfan](/maintainers/webfan)

---

Top Contributors

[![wehowski](https://avatars.githubusercontent.com/u/2658030?v=4)](https://github.com/wehowski "wehowski (67 commits)")[![ArrayIterator](https://avatars.githubusercontent.com/u/37867551?v=4)](https://github.com/ArrayIterator "ArrayIterator (13 commits)")

---

Tags

IPwhoisasnrdaprdap-clientrdap-phpnameserveroidweidoid-connect

###  Code Quality

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/frdl-oid-connect-rdap/health.svg)

```
[![Health](https://phpackages.com/badges/frdl-oid-connect-rdap/health.svg)](https://phpackages.com/packages/frdl-oid-connect-rdap)
```

###  Alternatives

[stevebauman/location

Retrieve a user's location by their IP Address

1.3k7.6M65](/packages/stevebauman-location)[s1lentium/iptools

PHP Library for manipulating network addresses (IPv4 and IPv6)

2446.2M24](/packages/s1lentium-iptools)[markrogoyski/ipv4-subnet-calculator

Network calculator for subnet mask and other classless (CIDR) network information.

177813.7k6](/packages/markrogoyski-ipv4-subnet-calculator)[rlanvin/php-ip

IPv4/IPv6 manipulation library for PHP

180738.8k11](/packages/rlanvin-php-ip)[longman/ip-tools

PHP IP Tools for manipulation with IPv4 and IPv6

147245.6k6](/packages/longman-ip-tools)[novutec/whoisparser

Lookup domain names, IP addresses and AS numbers by WHOIS.

392.0M1](/packages/novutec-whoisparser)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
