Pages

Aug 11, 2013

DNS Record Types used in EPC

It's been a while, so I will better start.
Previously, I hope, I've managed to shed some light on the DNS in EPC in general, from high above, form. Today I would like to present a records that are used in the LTE EPC deployments I've been involved into.

DNS A & AAAA records

A records (or ‘Address Records’) return an IPv4 address. This is most commonly used to map hostnames to an IPv4 address. Alternatively it is also used by some applications for subnet masks.
AAAA records return an IPv6 address. This is most commonly used to map hostnames to an IPv6 address of the host.

Example of an A record:
topon.nodes.pgw.be.epc  IN   A       212.183.156.177
topon.nodes.pgw.ms.epc  IN   A       212.183.156.179
where IN = Internet, A = A-record.

Example of an AAAA record:
topon.nodes.pgw.be.epc  IN   AAAA     2600:1800:5::10
topon.nodes.pgw.ms.epc  IN   AAAA     2600:1800:5::20
where IN = Internet, AAAA = AAAA-record.

DNS SRV records

DNS Resource Records (RR) for specifying the location of services (DNS SRV). Clients can ask for a specific service/protocol for a specific domain, and get back the names of any available servers.

Example of an SRV record:
; SRV Records
; _Service._proto.Name    TTL    Class    SRV    Priority    Weight  Port    Target
; SRV records for SGW
; There are multiple A records for each site to account for future nodes as there will be two PGWs at xBE and xMS.
topon.nodes.sgw.be.epc    IN    SRV    1    100    2123  node1.sgw.be.epc.mnc01.mcc234.3gppnetwork.org.
;topon.nodes.sgw.be.epc    IN    SRV    1    100    2123  node2.sgw.be.epc.mnc01.mcc234.3gppnetwork.org.
topon.nodes.sgw.ms.epc    IN    SRV    1    100    2123  node1.sgw.ms.epc.mnc01.mcc234.3gppnetwork.org.
;topon.nodes.sgw.ms.epc    IN    SRV    1    100    2123  node2.sgw.ms.epc.mnc01.mcc234.3gppnetwork.org.

The SRV record is formed of the following fields:
Priority – (=1 in the above example) a client must attempt to contact the target host with the lowest-numbered priority it can reach. Target hosts with the same priority should be tried in an order defined by the weight field.
Weight – (=100 in the above example) specifies a relative weight for entries with the same priority. Larger weights should be given a proportionally higher probability of being selected. A target with a weight of 0 corresponds to a backup.
Port – (=2123 [GTP] in the above example) is the port number assigned to the symbolic service specified in the record.
The system should compute the sum of all weights of those RRs having the lowest, identical precedence. Then choose a random number between 0 and the sum computed.  Select the target associated to this random value.

DNS NAPTR records

Name Authority Pointer (NAPTR) resource records specify lookup services for a wide variety of resources names. When applied to an existing string, NAPTR will produce a new domain label or URI.
With EPC, we will use a variation called S-NAPTR where the regular-expression is empty. Straightforward NAPTR (S-NAPTR) is used to add particular services to a DNS entry. The result of this is that the DNS server can reply back to the query with a service-protocol specific entry. S-NAPTR records are particularly common with mail-reading applications whereby the DNS server can have separate S-NAPTR records for the POP3 and IMAP4 protocols.
When using S-NAPTR, the DNS query does not indicate the ‘service:protocol’ needed. The DNS server will provide all S-NAPTR requested and the DNS client will consider the ones matching only the desired ‘service:protocol’.

Example of a NAPTR record
wap.operator.com.apn.epc.mnc01.mcc234.3gppnetwork.org. IN NAPTR 1 5  "a"  "x-3gpp-pgw:x-gn"   "" topon.nodes.pgw.be.epc.mnc01.mcc234.3gppnetwork.org.

The NAPTR record is formed of the following fields:
Order – (=1 in above example) a client must attempt to contact the target host with the lowest-numbered order it can reach. Target hosts with the same order should be tried in an order defined by the preference field. The DNS client should not consider any NAPTR with higher value for order.
Preference – (=5 in above example) specifies how NAPTR with equal order should be processed. Low numbers are being processed before high numbers.  A client may look at record with higher preference values if it has good reasons to do so such as not understanding the preferred protocol or service.
The important difference between Order and Preference is that once a match is found, the client must not consider records with a different order but they may process records with the same Order but different Preferences.
In other words, Preference is used to give weight to rules that are considered the same from an authority standpoint but not from a simple load-balancing standpoint.
Flags – (=a in above example) controls aspects of rewriting and interpretation in the record. While other flags are allowed with NAPTR, only "S", "A" or "" are allowed with S-NAPTR.
  • The "S" Flag means that the next lookup should be for SRV records.
  • The "A" Flag means that the next lookup should be either for A, AAAA records.
  •  An empty flag " " means that more NAPTR RR lookups are to be performed.

Source:

My own experience

4 comments:

  1. Thank You. But can you please tell me if DNS client is supposed to do repetitive queries to get to A or AAAA record ?

    ReplyDelete
  2. Hello, you used to write excellent posts, but the last several posts have been kinda lackluster… I miss your super posts. Past several posts are just a little out of track! web design agency los angeles

    ReplyDelete
  3. Can I simply say what a relief to uncover somebody that in fact knows what theyre preaching about online. You certainly learn how to bring a concern to light and earn it essential. The best way to ought to check out this and understand this side on the story. I cant think youre not more well-liked simply because you undoubtedly hold the gift. design firms los angeles

    ReplyDelete
  4. Aw, this became a very nice post. In idea I have to devote writing this way moreover – spending time and actual effort to produce a really good article… but what / things I say… I procrastinate alot and also by no indicates manage to get something completed. branding company los angeles

    ReplyDelete