NIC.br RDAP extension --------------------- The domain object class can contain the following updated members: o nameservers -- an array of nameserver objects, where a nameserver object has the following new members: * nicbr_status -- a string that stores the last DNS resolution status of the NS record. The possible status values are: + aa -- All DNS checks were OK + timeout -- Network timeout while trying to reach the nameserver + no-aa -- Nameserver does not have authority for this domain + udn -- Domain does not exists for this nameserver + uh -- Could not resolve nameserver + fail -- Nameserver configuration problem + query-refused -- DNS request rejected + error -- Generic error found in the nameserver + connection-refused -- Connection refused by firewall or nameserver + cname -- Domain name has a link in the zone APEX + soa-version -- Zone files are not synchronized * nicbr_lastCheck -- a string containing the time and date from the last verification of the server. * nicbr_lastOK -- a string containing the time and date from the last verification of the server that returned a valid response. o secureDNS -- an object with the following new members: * nicbr_status -- a string that stores the last DNS resolution status of the DS record. The possible status values are: + none -- No DNS resolution was performed yet + ok -- All DNSSEC checks were OK + nosig -- No signature was found for the related key + expired -- The signature of the related key is expired + key-not-found -- No related key found in the keyset + nosep -- Related key is not a secure entry point + invalid-signature -- The signature of the related key is invalid + dnssec-timeout -- Timeout while trying to perform the DNS resolution * nicbr_lastCheck -- a string containing the time and date from the last DNSSEC verification of the server. * nicbr_lastOK -- a string containing the time and date from the last DNSSEC verification of the server that returned a valid response. o nicbr_arbitration -- boolean true if the domain agree with the NIC.br arbitration policy, false otherwise. The following is an example of a JSON domain object that might be served by NIC.br. { "objectClassName": "domain", "ldhName": "exemplo.com.br", "unicodeName": "exemplo.com.br", "nameservers": [ { "ldhName": "a.sec.dns.br", "nicbr_status": "timeout", "nicbr_lastCheck": "2015-06-23T18:30:13Z", "nicbr_lastOK": "2015-05-02T03:19:47Z", "objectClassName": "nameserver", "unicodeName": "a.sec.dns.br" }, { "ldhName": "b.sec.dns.br", "nicbr_status": "aa", "nicbr_lastCheck": "2015-06-23T18:30:13Z", "nicbr_lastOK": "2015-06-23T18:30:13Z", "objectClassName": "nameserver", "unicodeName": "b.sec.dns.br" } ], "secureDNS": { "delegationSigned": true, "dsData": [ { "algorithm": 5, "digest": "A790A11EA430A85DA77245F091891F73AA740483", "digestType": 1, "events": [ { "eventAction": "registration", "eventDate": "2010-12-16T18:05:29Z" } ], "keyTag": 26938, "nicbr_status": "ok", "nicbr_lastCheck": "2015-06-23T18:30:13Z", "nicbr_lastOK": "2015-06-23T18:30:13Z" } ], "zoneSigned": true }, "nicbr_arbitration": true, "events": [ { "eventAction": "registration", "eventDate": "2009-04-28T05:09:47Z" }, { "eventAction": "last changed", "eventDate": "2014-04-01T08:22:01Z" }, { "eventAction": "expiration", "eventDate": "2016-04-28T05:09:47Z" } ], "links": [ { "href": "http://example.net/rdap/domain/exemplo.com.br", "rel": "self", "type": "application/rdap+json", "value": "http://example.net/rdap/domain/exemplo.com.br" } ] } The entity object class can contain the following new members: o nicbr_responsible -- a string that represents the name of the person responsible for this entity. o nicbr_customerSupportService -- an object containing the following members: * nicbr_email -- an email address for communication with the entity customer service. * nicbr_website -- a string containing a uniform resource locator for the entity customer service website. * nicbr_phone -- a string representing the telephone number for telephony communication with the customer service. o nicbr_domainCount -- a number representing the total number of domains that are managed by this entity. o nicbr_inetCount -- a number representing the total number of IP networks that are managed by this entity. o nicbr_autnumCount -- a number representing the total number of autonomous systems that are managed by this entity. The following is an example of a JSON entity object that might be served by NIC.br. { "objectClassName": "entity", "handle": "h_XXXXXXXXXXX-NICBR", "nicbr_responsible": "Joe User", "nicbr_customerSupportService": { "nicbr_email": "joe.user@example.com", "nicbr_website": "http://example.org", "nicbr_phone": "+1-555-555-1234" }, "nicbr_domainCount": 1, "nicbr_inetCount": 0, "nicbr_autnumCount": 0, "vcardArray": [ "vcard", [ ["version", {}, "text", "4.0"], ["kind", {}, "text", "organization"], ["fn", {}, "text", "Joe Company"] ] ], "publicIds": [ { "identifier": "XXX.XXX.XXX-XX", "type": "cpf" } ], "links": [ { "href": "http://example.net/rdap/entity/h_XXXXXXXXXXX-NICBR", "rel": "self", "type": "application/rdap+json", "value": "http://example.net/rdap/entity/h_XXXXXXXXXXX-NICBR" }, { "href": "http://example.net/rdap/domain/exemplo.com.br", "rel": "related", "type": "application/rdap+json", "value": "http://example.net/rdap/entity/h_XXXXXXXXXXX-NICBR" } ], "events": [ { "eventAction": "registration", "eventDate": "2007-05-18T14:14:27Z" }, { "eventAction": "last changed", "eventDate": "2010-12-28T13:36:09Z" } ] } The IP network object class can contain the following new members: o nicbr_autnum -- a number representing the number of the Autonomous System that is responsable for this IP network object. The following is an example of a JSON IP network object representing that might be served by NIC.br. { "objectClassName" : "ip network", "handle" : "XXXX-RIR", "startAddress" : "2001:db8::", "endAddress" : "2001:db8:0:ffff:ffff:ffff:ffff:ffff", "ipVersion" : "v6", "name": "NET-RTR-1", "type" : "DIRECT ALLOCATION", "country" : "AU", "parentHandle" : "YYYY-RIR", "status" : [ "active" ], "nicbr_autnum": 10, "remarks" : [ { "description" : [ "She sells sea shells down by the sea shore.", "Originally written by Terry Sullivan." ] } ], "links" : [ { "value" : "http://example.net/ip/2001:db8::/48", "rel" : "self", "href" : "http://example.net/ip/2001:db8::/48", "type" : "application/rdap+json" }, { "value" : "http://example.net/ip/2001:db8::/48", "rel" : "up", "href" : "http://example.net/ip/2001:C00::/23", "type" : "application/rdap+json" } ], "events" : [ { "eventAction" : "registration", "eventDate" : "1990-12-31T23:59:59Z" }, { "eventAction" : "last changed", "eventDate" : "1991-12-31T23:59:59Z" } ], "entities" : [ { "objectClassName" : "entity", "handle" : "XXXX", "vcardArray":[ "vcard", [ ["version", {}, "text", "4.0"], ["fn", {}, "text", "Joe User"], ["kind", {}, "text", "individual"], ["lang", { "pref":"1" }, "language-tag", "fr"], ["lang", { "pref":"2" }, "language-tag", "en"], ["org", { "type":"work" }, "text", "Example"], ["title", {}, "text", "Research Scientist"], ["role", {}, "text", "Project Lead"], ["adr", { "type":"work" }, "text", [ "", "Suite 1234", "4321 Rue Somewhere", "Quebec", "QC", "G1V 2M2", "Canada" ] ], ["tel", { "type":["work", "voice"], "pref":"1" }, "uri", "tel:+1-555-555-1234;ext=102" ], ["email", { "type":"work" }, "text", "joe.user@example.com" ] ] ], "roles" : [ "registrant" ], "remarks" : [ { "description" : [ "She sells sea shells down by the sea shore.", "Originally written by Terry Sullivan." ] } ], "links" : [ { "value" : "http://example.net/entity/xxxx", "rel" : "self", "href" : "http://example.net/entity/xxxx", "type" : "application/rdap+json" } ], "events" : [ { "eventAction" : "registration", "eventDate" : "1990-12-31T23:59:59Z" }, { "eventAction" : "last changed", "eventDate" : "1991-12-31T23:59:59Z" } ] } ] } The Autonomous System number object class can contain the following new members: o nicbr_routingPolicy -- an array of objects, each with the following members: + nicbr_autnum -- a number representing a autnum of this policy. Must be between the startAutnum and the endAutnum of the Autonomous System number object class. + nicbr_traffic -- a number representing an autnum of the network that is exchanging traffic. + nicbr_cost -- a number represening a relative cost which is used for backup and back door routes. The absolute value is of no significance. The relation between different values within the same AS object is. + nicbr_policy -- a string representing the routes that will be announce for output, or the routes that are accepted from the neighbor AS for input. The following is an example of a JSON object representing an autnum that might be served by NIC.br. { "objectClassName" : "autnum", "handle" : "XXXX-RIR", "startAutnum" : 10, "endAutnum" : 15, "name": "AS-RTR-1", "type" : "DIRECT ALLOCATION", "status" : [ "active" ], "country": "AU", "remarks" : [ { "description" : [ "She sells sea shells down by the sea shore.", "Originally written by Terry Sullivan." ] } ], "links" : [ { "value" : "http://example.net/autnum/xxxx", "rel" : "self", "href" : "http://example.net/autnum/xxxx", "type" : "application/rdap+json" } ], "events" : [ { "eventAction" : "registration", "eventDate" : "1990-12-31T23:59:59Z" }, { "eventAction" : "last changed", "eventDate" : "1991-12-31T23:59:59Z" } ], "entities" : [ { "objectClassName" : "entity", "handle" : "XXXX", "vcardArray":[ "vcard", [ ["version", {}, "text", "4.0"], ["fn", {}, "text", "Joe User"], ["kind", {}, "text", "individual"], ["lang", { "pref":"1" }, "language-tag", "fr"], ["lang", { "pref":"2" }, "language-tag", "en"], ["org", { "type":"work" }, "text", "Example"], ["title", {}, "text", "Research Scientist"], ["role", {}, "text", "Project Lead"], ["adr", { "type":"work" }, "text", [ "", "Suite 1234", "4321 Rue Somewhere", "Quebec", "QC", "G1V 2M2", "Canada" ] ], ["tel", { "type":["work", "voice"], "pref":"1" }, "uri", "tel:+1-555-555-1234;ext=102" ], ["email", { "type":"work" }, "text", "joe.user@example.com" ] ] ], "roles" : [ "registrant" ], "remarks" : [ { "description" : [ "She sells sea shells down by the sea shore.", "Originally written by Terry Sullivan." ] } ], "links" : [ { "value" : "http://example.net/entity/XXXX", "rel" : "self", "href" : "http://example.net/entity/XXXX", "type" : "application/rdap+json" } ], "events" : [ { "eventAction" : "registration", "eventDate" : "1990-12-31T23:59:59Z" }, { "eventAction" : "last changed", "eventDate" : "1991-12-31T23:59:59Z" } ] } ], "nicbr_routingPolicy" : [ { "nicbr_autnum": 10, "nicbr_traffic": 12, "nicbr_cost": 100, "nicbr_policy": "ANY" }, { "nicbr_autnum": 10, "nicbr_traffic": 12, "nicbr_cost": -1, "nicbr_policy": "AS10" } ] }