# US 9,882,868 B1 · Domain name system network traffic management

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,882,868 B1
- Document ID: US9882868B1
- Status: Granted
- Kind: B1
- Application number: 15/416,806
- Filed: 2017-01-26
- Granted: 2018-01-30
- Earliest claimed: 2017-01-26
- Assignees: Red Hat, Inc.
- Applicants: Red Hat, Inc.
- Inventors: Daniel Williams
- Web page: https://patentgrep.com/patent/US9882868B1

## CPC

- H04L 61/4511: using domain name system [DNS]
- H04L 61/5007: Internet protocol [IP] addresses
- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A mechanism for replacing a first internet protocol (IP) address with a second IP address in a response to a request to a server from an application is disclosed. A processing device may receive a request from an application and forward the request to a server. The processing device may receive a response from the server, where the response includes a first IP address. The processing device may generate a second IP address and replace the first IP address in the response with the second IP address. The processing device may send the response to the application.

## Claims

### Claim 1

A method comprising:
receiving, by a processing device, a first request from an application, wherein the first request includes a first hostname assigned to a first server;
forwarding, by the processing device, the first request to a second server;
receiving a first response from the second server, wherein the first response includes a first internet protocol (IP) address;
generating, by the processing device, a second IP address that is unique to the first hostname;
replacing the first IP address in the first response with the second IP address;
sending the first response with the second IP address to the application; and
assigning a first management policy to the second IP address, wherein the first management policy is different than other management policies assigned to other IP addresses associated with other hostnames that resolve to the first server.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving a second-request from the application that is directed to the second IP address; and
applying the first management policy to the second request.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
in response to the first management policy indicating that the second-request is authorized to be sent to the first server, redirecting the second-request to the first IP address;
receiving a second-response from the first server, wherein the second-response includes the first IP address;
replacing the first IP address in the second-response with the second IP address; and
sending the second-response to the application.

### Claim 4 (depends on 2)

The method of claim 2, further comprising querying a database to identify an entry that includes the second IP address and the first management policy, wherein the first management policy is a security policy indicating whether the second request is allowed to be sent to the first server.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first hostname is used to identify a location of the first server in a network.

### Claim 6 (depends on 1)

The method of claim 1, wherein the application is a containerized application executing in an isolated system.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
receiving, by the processing device, a second request from the application, wherein the second request includes a second hostname assigned to the first server that is also assigned the first hostname;
forwarding, by the processing device, the second request to the second server;
receiving a second response from the second server, wherein the second response includes a third IP address;
generating, by the processing device, a fourth IP address that is unique to the second hostname;
replacing the third IP address with the fourth IP address; and
sending the second response with the fourth IP address to the application.

### Claim 8 (depends on 7)

The method of claim 7, wherein the first hostname and the second hostname resolve to the first server and the first management policy is assigned to the second IP address and a second management policy is assigned to the fourth IP address, wherein the first management policy and the second management policy are different.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first request is a domain name service (DNS) request.

### Claim 10

An apparatus comprising:
a memory; and
a processing device, operatively coupled with the memory, to:
receive a first domain name service (DNS) request from a client device, wherein the first DNS request includes a first hostname assigned to a first server;
forward the first DNS request to a second server;
receive a first response from the second server, wherein the first response includes a first public internet protocol (IP) address;
generate a first private IP address;
replace the first public IP address with the first private IP address;
send the first response with the first private IP address to the client device; and
associate a first management policy with the first private IP address, wherein the first management policy is different than other management policies assigned to other private IP addresses associated with other hostnames that resolve to the first server.

### Claim 11 (depends on 10)

The apparatus of claim 10, wherein the processing device is further to:
receive a second DNS request from the client device, wherein the second DNS request includes a second hostname assigned to the first server that is also assigned the first hostname;
forward the second DNS request to the second server;
receive a second response from the second server, wherein the second response includes a second public IP address;
generate a second private IP address;
replace the second public IP address with the second private IP address; and
send the second response with the second private IP address to the client device.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the first DNS request is associated with a first website and the second DNS request is associated with a second website, and wherein the first website and the second website are run on the same first server.

### Claim 13 (depends on 11)

The apparatus of claim 11, wherein the processing device is further to
assign a second management policy to the second private IP address.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the processing device is further to:
receive a first hypertext transfer protocol (HTTP) request from the client device that is directed to the first private IP address;
applying the first management policy to the first HTTP request;
receive a second HTTP request from the client device that is directed to the second private IP address; and
applying the second management policy to the second HTTP request.

### Claim 15 (depends on 14)

The apparatus of claim 14, wherein the first management policy indicates that the first HTTP request is restricted from being sent to the first server and the second management policy indicates that the second HTTP request is allowed to be sent to the first server.

### Claim 16 (depends on 10)

The apparatus of claim 10, wherein the processing device is further to allow requests from the client device directed to private unique IP addresses to be sent to the first server.

### Claim 17

A non-transitory computer-readable storage medium, having instructions stored therein, which when executed, cause a processing device to:
receive a request from an application, wherein the request includes a first hostname assigned to a server;
forward the request to the server;
receive a response from the server, wherein the response includes a first internet protocol (IP) address;
generate a second IP address;
replace the first IP address in the response with the second IP address;
send the response to the application; and
assign a management policy to the second IP address, wherein the management policy is different than other management policies assigned to other IP addresses associated with other hostnames that resolve to the server.

### Claim 18 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the second IP address is uniquely associated to the request.

### Claim 19 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the processing device is further to:
receive a second request from the application that is directed to the second IP address;
apply the management policy to the second request, wherein the management policy is a firewall policy, a quality of service (QoS) policy, or a port policy; and
redirect the second request to the first IP address in view of the management policy.

### Claim 20 (depends on 17)

The non-transitory computer-readable storage medium of claim 17, wherein the server is a DNS server or a name-based virtual hypertext transfer protocol (HTTP) server.
