IP Library › Granted Patent US 12,531,829
Granted Patent B2
US 12,531,829 · App. 17/619,850 · Granted Jan 20, 2026

Method and device for obtaining an IP address

Inventors: Mohamed Boucadair (Chatillon, FR); Christian Jacquenet (Chatillon, FR)
Assignee: Orange
H04L61/251H04L61/4511H04L2101/659H04L2101/686
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,531,829
App. No.
17/619,850
Granted
Jan 20, 2026
Kind
B2
Abstract

A method for a client device to obtain an IP address in order to access a network resource via at least one IP network. The method includes: inserting, in a request for obtaining an IPv6 address in order to access the network resource intended for a DNS server, a piece of information representing an IP address type expected by the client device of the DNS server in response to the obtaining request if the network resource has an IPv4 connectivity; and sending the obtaining request to the DNS server.

Claims (55)

1 . A method comprising:

implementing by a client device to obtain an Internet Protocol (IP) address in order to access a first network resource associated to a domain name and having IPv4 connectivity via at least one network providing an IP connectivity service to said client device, said client device having only IPV6 connectivity:

determining whether said network implements a function for converting IPv4 packets into IPv6 packets;

inserting, into a first request, requesting for the first network resource a record of AAAA type, to obtain an IPV6 address in order to access said first network resource, intended for a domain name server (DNS server), the domain name associated with the first network resource and an additional piece of information specifying a type of IP address of the first network resource expected by said client device from said DNS server in response to said first request, said expected type of IP address being able to be an IPV4 address of the first network resource or a fake IPV6 address of the first network resource; and

sending said first request to said DNS server, wherein:

the DNS server is a server distinct from a “nominal” DNS server with which the client device has been configured by an operator of the network;

the determining comprises sending, to the nominal DNS server, a second request to obtain an IPV6 address in order to access a given second network resource known to have only IPv4 connectivity; and

if a positive response is received from the nominal DNS server comprising an IPV6 address for said given second network resource, the client device determines that the network implements the function for converting IPv4 packets into IPv6 packets.

2 . The method as claimed in claim 1 , wherein said piece of information inserted into the first request comprises at least one IPv6 prefix or at least one IPv6 address comprising at least one IPV6 prefix, if said expected IP address type is an IPV6 address formed by the DNS server from said at least one IPV6 prefix and an IPV4 address of said first network resource.

3 . The method as claimed in claim 2 , wherein said at least one IPV6 prefix is at least one IPV6 prefix used by a function for converting IPv4 packets into IPV6 packets implemented by said network.

4 . The method as claimed in claim 2 , wherein the first request further comprises:

an instruction to form said IPV6 address only if the first network resource has only IPv4 connectivity; or

an instruction to form said IPV6 address if the first network resource has IPv4 connectivity even if it also has IPv6 connectivity.

5 . The method as claimed in claim 1 , wherein said expected IP address type is an IPV4 address of said first network resource and said piece of information inserted into the first request is a predefined value, known to the DNS server.

6 . The method as claimed in claim 1 , wherein the first request further comprises:

an instruction to execute a determined algorithm to form an IPV6 address from an IPv4 address of the first network resource; and/or

an instruction to use a WKP (Well-Known Prefix) prefix to form an IPV6 address from an IPV4 address of the first network resource; and/or

an instruction to use a suffix which guarantees neutrality of a mechanism for checking integrity of a pseudo-header of a transport layer; and/or

an instruction to insert an IPV4 address into an additional section of a response to the first request.

7 . The method as claimed in claim 1 , further comprising, if said network implements a function for converting IPv4 packets into IPv6 packets, obtaining at least one IPv6 prefix used by said packet conversion function.

8 . The method as claimed in claim 1 , comprising obtaining an IPV6 prefix used by said function for converting IPV4 packets into IPv6 packets from the IPV6 address contained in the positive response received from the nominal DNS server.

9 . A processing method, implemented by a domain name server (DNS server) associated with a network supplying an Internet protocol (IP) connectivity service to at least one client device, said method comprising:

receiving, from said client device, a first request requesting for a first network resource a record of AAAA type to obtain an IPV6 address in order to access the network resource, the first network resource being associated to a domain name and having IPv4 connectivity, and in which there is inserted the domain name associated with the first network resource and an additional piece of information specifying a type of IP address of the first network resource expected by said client device from said DNS server in response to said first request if said first network resource has IPv4 connectivity, said expected type of IP address being able to be an IPv4 address of the first network resource or a fake IPV6 address of the first network resource, and wherein the client device has only IPv6 connectivity;

obtaining an IPV4 address of said first network resource; and

sending a response to said first request containing at least one IP address determined by the DNS server from said IPv4 address obtained and corresponding to the type of IP address expected by the client device,

wherein the DNS server is a server distinct from a “nominal” DNS server with which the client device has been configured by an operator of the network, and

wherein said piece of information inserted into the first request has a predefined value known to the DNS server, and said at least one IP address determined by the DNS server is the IPV4 address of the first network resource obtained.

10 . The processing method as claimed in claim 9 , wherein said IPv4 address is sent by the DNS server to the client device in a body of the response, coded according to the IPV6 format by using the prefix “::ffff:0:0/96”.

11 . The processing method as claimed in claim 9 , wherein the sending and the obtaining are implemented by the DNS server only if the first network resource has only IPv4 connectivity.

12 . A client device connected to at least one network supplying an IP connectivity service to the client device, said client device comprising:

a processor; and

a non-transitory computer readable medium storing computer-executable instructions which when executed by the processor configure the client device to:

determining whether said network implements a function for converting IPv4 packets into IPv6 packets;

insert, into a first request requesting for a first network resource a record of AAAA type to obtain an IPV6 address in order to access the first network resource, the first network resource being associated to a domain name and having IPv4 connectivity via said network, intended for a domain name server (DNS server), the domain name associated with the first network resource and an additional a piece of information specifying a type of Internet Protocol (IP) address of the first network resource expected by said client device from said DNS server in response to said first request, said expected type of IP address being able to be an IPV4 address of the first network resource or a fake IPV6 address of the first network resource, and wherein said client device has only IPV6 connectivity; and

send said first request to the DNS server,

wherein:

the DNS server is a server distinct from a “nominal” DNS server with which the client device has been configured by an operator of the network;

the determining comprises sending, to the nominal DNS server, a second request to obtain an IPV6 address in order to access a given second network resource known to have only IPv4 connectivity; and

if a positive response is received from the nominal DNS server comprising an IPV6 address for said given second network resource, the client device determines that the network implements the function for converting IPv4 packets into IPv6 packets.

13 . The client device as claimed in claim 12 , wherein the instructions further configure the client device to translate IPv4 addresses into IPV6 addresses activated on reception of a response from the DNS server to said first request comprising an IPV4 address of said first network resource, said translating being configured to translate said IPv4 address into an IPV6 address by using said IPv4 address and an IPV6 prefix used by a function for converting IPv4 packets into IPV6 packets implemented by the network.

14 . A domain name server (DNS server) comprising:

a processor; and

a non-transitory computer readable medium storing computer-executable instructions which when executed by the processor configure the DNS server to:

receive, from a client device connected to a network supplying an Internet Protocol (IP) connectivity service to said client device, a first request requesting for a first network resource a record of AAAA type to obtain an IPV6 address in order to access via said network the first network resource, the first network resource being associated to a domain name, and said client device having only IPV6 connectivity;

detect, in said first request, the domain name associated with the first network resource and an additional a piece of information specifying a type of IP address of the first network resource expected by said client device from said DNS server in response to said obtaining request if said first network resource has IPv4 connectivity, said expected type of IP address being able to be an IPV4 address of the first network resource or a fake IPV6 address of the first network resource;

if said first network resource has IPv6 connectivity, send, to the client device, in response to said first request, an IPV6 address of said first network resource; and

if said first network resource has IPv4 connectivity:

obtain an IPv4 address of the first network resource; and

send a response to said first request containing at least one IP address in order to access said first network resource determined by the DNS server from said IPv4 address obtained and corresponding to the type of IP address expected by the client device indicated by said piece of information inserted into said first request,

wherein the DNS server is a server distinct from a “nominal” DNS server with which the client device has been configured by an operator of the network, and

wherein said piece of information inserted into the first request has a predefined value known to the DNS server, and said at least one IP address determined by the DNS server is the IPV4 address of the first network resource obtained.

15 . The domain name server as claimed in claim 14 , wherein said DNS server is a public DNS server distinct from a so-called nominal DNS server with which the client device has been configured by an operator of said network.

16 . The method as claimed in claim 1 , wherein the method further comprises:

the client device choosing the type of IP address the client expects from the DNS server by performing the inserting of the piece of information into the first request and the sending of the first request to the DNS server.

17 . The method as claimed in claim 1 , wherein the piece of information that the client device inserts into the first request specifying the type of IP address is able to specify any one of an IPV4 address and a fake IPv6 address.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2022
From: BOUCADAIR, MOHAMED; JACQUENET, CHRISTIAN
To: ORANGE
Reel/Frame 060515/0779 →
Priority Claims (1)
FR 1906673 · Jun 20, 2019 · national
Continuity (2)
Related Publication 20220311734A1 · Sep 29, 2022
Related Publication 20240430226A2 · Dec 26, 2024
References Cited (44)
US 7764686B1 · Toebes · 2010 [cited by examiner]
US 7917616B2 · Trace · 2011 [cited by examiner]
US 8762554B2 · Trace · 2014 [cited by examiner]
US 9686240B1 · Ray · 2017 [cited by examiner]
US 11153330B1 · Antoniewicz · 2021 [cited by examiner]
US 11457079B1 · Mehta · 2022 [cited by examiner]
US 20060236325A1 · Rao · 2006 [cited by examiner]
US 20100034381A1 · Trace · 2010 [cited by examiner]
US 20100036959A1 · Trace · 2010 [cited by examiner]
US 20130007870A1 · Devarajan · 2013 [cited by examiner]
US 20130080649A1 · Trace · 2013 [cited by examiner]
US 20130212240A1 · Thornewell · 2013 [cited by examiner]
US 20140173134A1 · Choquette · 2014 [cited by examiner]
US 20140258491A1 · Forristal · 2014 [cited by examiner]
US 20150215267A1 · Kagan · 2015 [cited by examiner]
US 20160036943A1 · Kish · 2016 [cited by examiner]
US 20160308818A1 · Torres · 2016 [cited by examiner]
US 20160344688A1 · Lakhera · 2016 [cited by examiner]
US 20170034125A1 · Wang · 2017 [cited by examiner]
US 20180048564A1 · Bianco · 2018 [cited by examiner]
US 20200196135A1 · Mudric · 2020 [cited by examiner]
US 20200358878A1 · Bansal · 2020 [cited by examiner]
US 20210067482A1 · Jiménez · 2021 [cited by examiner]
US 20220140996A1 · Cebere · 2022 [cited by examiner]
US 20220208319A1 · Ansari · 2022 [cited by examiner]
AU 2004241546A1 · 2004 [cited by examiner]
CA 2507529C · 2011 [cited by examiner]
CN 102739809A · 2012 [cited by applicant]
FR 3023098A1 · 2016 [cited by applicant]
J.P. Martinez, The IPV6 Company, “Additional Deployment Guidelines for NAT64/464XLAT in Operator and Enterprise Networks; draft-ietf-v6ops-nat64-deployment-06.txt”, May 4, 2019, p. 1-43; Retrieved from the Internet: URL… [cited by examiner]
International Search Report dated Oct. 15, 2020 for corresponding International Application No. PCT/FR2020/051057, Jun. 20, 2020. [cited by applicant]
Written Opinion of the International Searching Authority dated Oct. 26, 2020 for corresponding International Application No. PCT/FR2020/051057, filed Jun. 20, 2020. [cited by applicant]
M. Bagnulo et al., “Stateful NAT64: Network Address and Protocol Translation from IPV6 Clients to IPv4 Servers”, RFC 6146, Apr. 2011. [cited by applicant]
C. Bao et al., “IPv6 Addressing of IPv4/IPv6 Translators”, RFC 6052, Oct. 2010. [cited by applicant]
S. Thomson et al., “DNS Extensions to Support IP Version 6”, IETF RFC3596, Oct. 2003. [cited by applicant]
M. Boucadair, “Discovering NAT64 IPv6 Prefixes Using the Port Control Protocol (PCP)”, RFC 7225, May 2014. [cited by applicant]
T. Narten et al., “Neighbor Discovery for IP version 6 (IPv6)”, RFC 4861, Sep. 2007. [cited by applicant]
P. Mockapetris, “Domain names—concept and facilities”, IETF RFC 1034, Nov. 1987. [cited by applicant]
Marcelo Bagnulo et al., “The NAT64/DNS64 tool suite for IPv6 transition”, IEEE Communications Magazine, IEEE Service Center, Piscataway, US, vol. 50, No. 7, Jul. 1, 2012 (Jul. 1, 2012), p. 177-183, XP011449622. [cited by applicant]
P. Mockapetris, “Domain names—implementation and specification”, IETF RFC 1035, Nov. 1987. [cited by applicant]
Korhonen J et al, “Analysis of solution proposals for hosts to learn NAT64 prefix; draft-korhonen-behave-nat64-earn-analysis-00.txt”, Analysis of Solution Proposals for Hosts to Learn NAT64 Prefix; draft- korhonen-behav… [cited by applicant]
Mawatari Japan Internet Exchange Co M et al, “464xlat: Combination of Stateful and Stateless Translation; draft-ietf-v6ops-464xlat-06.txt”, 464xlat: Combination of Stateful and Stateless Translation; Draft-ietf-v6ops-46… [cited by applicant]
Boucadair France Telecom M, “Leam NAT64 PREFIX64s using PCP; draft-ietf-pcp-nat64-prefix64-00.txt”, Learn NAT64 PREFIX64S Using PCP; draft-ietf-pcp-nat64-prefix64-00.txt, Internet Engineering Task Force, IETF; Standardw… [cited by applicant]
Palet Martinez the IPV6 Company J, “Additional NAT64/464XLAT Deployment Guidelines in Operator and Enterprise Networks; draft-ietf-v6ops-nat64-deployment-06.txt”, No. 6, Jul. 11, 2019, p. 1-43, Additional NAT64/464XLAT … [cited by applicant]