Ecdysis: Open-Source DNS64 and NAT64
|
|
|
- Shonda Bennett
- 10 years ago
- Views:
Transcription
1 Ecdysis: Open-Source DNS64 and NAT64 Simon Perreault, Jean-Philippe Dionne, and Marc Blanchet Viagénie, Québec City, Canada Technical Paper Abstract Ecdysis is an open-source project that is developing open-source DNS64 and NAT64 implementations. These two protocols are used jointly for translation from IPv6 clients to IPv4 servers. The implementations are based on the Bind and Unbound DNS servers for DNS64, and on Linux's Netfilter and OpenBSD's pf for NAT64. Keywords IPv6, NAT, DNS 1. Introduction IPv4 and IPv6 networks are incompatible. The IETF recommendation has usually been to rely on dual-stack deployment: have both networks coexist until IPv6 takes over IPv4. However, IPv6 growth has been much slower than anticipated. Therefore, new IPv6-only deployments face an interesting challenge, that of communicating with the predominantly IPv4-only rest of the world. A similar problem is encountered when legacy IPv4-only devices need to reach the IPv6 Internet. Translation between IPv4 and IPv6 is one framework engineered within the IETF as a solution to the problem of IPv6 transition. The general framework for IPv4/IPv6 translation is described in [4]. It also explains the background of the problem, and some expected uses. Another document describes the translation algorithm [6]. This stateless algorithm (one-to-one mapping between IPv4 and IPv6 addresses) has been deployed by CERNET and their experience is described in [9]. Given the increasing shortage of public IPv4 addresses, we will need to overload IPv4 addresses and share them among multiple IPv6 hosts. This is akin to the network address translation (NAT) function that is common in today's IPv4-only networks. NAT64 is the equivalent protocol for translating between IPv4 and IPv6 networks and is being developed by the IETF [7]. It makes use of a DNS application-layer gateway (ALG) protocol, DNS64 [8], that intercepts DNS AAAA queries sent by IPv6 hosts, performs an A queries on the IPv4 side, and synthesizes AAAA answers directing IPv6 hosts toward the NAT64. The DNS64 and NAT64 functions are completely separate, which is the key to understanding the superiority of NAT64/DNS64 over NAT-PT [2, 3]. The Ecdysis project's goal is to develop open-source implementations of an IPv4/IPv6 gateway that run on opensource operating systems such as the various BSD flavours and Linux. The gateway is comprised of two distinct modules: the DNS64 and the NAT64. The DNS64 module was developed by modifying two open-source DNS servers: Bind and Unbound. The NAT64 module was developed by modifying pf (the firewall and NAT code in the OpenBSD kernel, which is used also in other BSD variants) and Netfilter (the firewall and NAT code in the Linux kernel). As part of the development process, stand-alone implementations of DNS64 and NAT64 were developed for experimentation purposes. The deployment operation of an IPv4/IPv6 gateway need to be carefully planned and understood. Issues such as scalability, stability, and network management are exacerbated by the stateful nature of the protocols involved. Some of these issues are similar to those encountered when deploying IPv4 NAT devices, and are addressed in the same fashion, but other are different. In particular, the logical separation of the DNS64 and NAT64 functions will allow us to scale more efficiently. Also, NAT64 builds on a better understanding of NAT provided by years of experience. For example, it possesses characteristics allowing peer-to-peer communication in restricted but important cases. For example, it is expected that peer-to-peer SIP & RTP across the IPv4/IPv6 boundary will be attainable.
2 Figure 1: Expected use case. The default NAT64 prefix, 64:ff9b::/96, is routed to the NAT64 device. All other IPv6 traffic is routed to the default IPv6 gateway. The DNS64, which is provisioned to the clients as their default DNS resolver, has both IPv6 and IPv4 connectivity, which it uses for reaching authoritative DNS servers. Note that IPv6 router, DNS64, and NAT64 are logical functions and could conceivably be co-located on the same physical machine. 2. The Prococols Here we give a brief overview of the DNS64 and NAT64 protocols. Please refer to figure 1 which illustrates an expected use case. 2.1 DNS64 In most cases, client-server connection establishment starts with a DNS query. This is the basic assumption upon which the IPv6 translation framework is built: the IPv6-only client will ask its DNS resolver for the AAAA record associated with the server's name. This DNS resolver is augmented with DNS64 functionality. It first tries to resolve the AAAA query as usual. If the result of this is not an error but the answer section is empty, the resolver will initiate a new A query for the same host name. If this query succeeds and its answer section is not empty, then the A records are converted to AAAA records by prepending them with the NAT64 prefix. This new response is then sent to the client. Refer to figure 2 for an example. It is important to note that DNS64 is partially incompatible with DNSSEC. If the client performs its own DNSSEC validation, and has no knowledge of the DNS64 function being performed by the server, then the validation will fail. However, if the client is somehow aware of the DNS64 function and knows how to convert synthetic AAAA records back to A records, then it may correctly validate them. Finally, the client may instead trust the server to perform DNSSEC validation in its stead. Since the server can do so before synthesizing AAAA records, this is compatible with DNSSEC. 2.2 NAT64 The specification of NAT64 is covered by two documents. The first part, stateless translation between IPv6 and IPv4 (in both directions), is described in [5]. It is an update to the Stateless IP/ICMP Translation Algorithm (SIIT) [1] which was also the basis of NAT-PT. It describes how to map IPv6 header fields to and from IPv4, as well as mapping ICMPv6 to and from ICMPv4. Stateless translation can be used as-is when you can allocate one IPv4 address per host. For an example, see [9]. Stateless translation is more robust than stateful translation because there is no state in the network. If a network element fails, it is easy to fail over to another without needing state synchronization. Furthermore, the absence of state makes it is easy to load-balance on multiple translators, employ asymmetric routing, etc. However, in many cases it is impossible to allocate one IPv4 address per host. In these cases stateful translation [7] is needed to overload IPv4 addresses and have multiple IPv6-only hosts share them. The specification is limited to three transport protocols: UDP, TCP, and ICMP. Support for other protocols will be in separate documents. Other supporting functionality, such as an FTP ALG [10], is also in separate documents.
3 It is very important to note that connection initiation is only possible from the IPv6 side to the IPv4 side (except when statically configured otherwise). This simplifying assumption is the main difference with NAT-PT, where connection initiation was supported in both directions. Limiting the direction from the IPv6 side to IPv4 allows the complete separation between NAT64 and DNS64. Indeed, NAT64 could be used without DNS64 if the IPv6- only client is using another method to obtain IPv6 addresses of IPv4 servers (e.g. static configuration). IPv6- only DNS64 NAT6 IPv4 Internet IPv6 AAAA recursive resolving Empty answer A recursive resolving AAAA AAAA answer 64:ff9b::a.b.c.d TCP SYN Source: [2001:db8::100]:x Destination: [64:ff9b::a.b.c.d]:80 Create session TCP SYN Source: :y Destination: a.b.c.d:80 TCP SYN/ACK Source: [64:ff9b::a.b.c.d]:80 Destination: [2001:db8::100]:x TCP SYN/ACK Source: a.b.c.d:80 Destination: :y Figure 2: Example connection establishment flow. In this case, the IPv6-only client is attempting a TCP connection to example.com on port 80. There is no AAAA record associated with example.com, and so the DNS64 synthesizes one from the A record, which points to the IPv4 address a.b.c.d, by prefixing it with the NAT64 prefix, which in this case is the default 64:ff9b::/96. The client then sends a TCP SYN to 64:ff9b::a.b.c.d, port 80. The packet gets routed to the NAT64 device which creates a new session and allocates a binding. It changes the source address that of the binding created, and converts the IPv6 destination address to IPv4 by removing the prefix. When the SYN/ACK reply is received, the NAT64 does the reverse operation and forwards the IPv6 packet to the client. The rest of the connection operates in the same fashion. When an IPv6-only client initiates a connection, it sends a first packet (e.g. a TCP SYN) to an IPv6 address contained in a prefix routed to the NAT64 device. The default prefix is 64:ff9b::/96 (see [9]). The NAT64 device creates a new entry in its session table and allocates a binding, which indicates the source IPv4 address and port to use for the IPv4 side of the connection. The IPv4 destination address is extracted from the IPv6 destination address. Once the IPv4 source and destination addresses are known, the packet is translated following the stateless translation rules. It is then routed and forwarded on IPv4. When packets belonging to the same connection arrive from the IPv4 or IPv6 side, the corresponding session entry is looked up in the session table. Its expiration is refreshed and its state is updated if necessary. The packet is then translated using the source and destination addresses and ports stored as part of the session entry. See figure 2 for an example.
4 3. DNS64 Implementations We implemented DNS64 functionality in the Bind and Unbound DNS servers. 3.1 Bind The implementation in Bind modifies the core resolving state machine, namely the query_find() function. It also introduces a new configuration variable named dns64-prefix, which takes as argument the IPv6 prefix that will be prepended to IPv4 addresses contained in A records in order to synthesize AAAA records. This variable can be used either in the global options context or in a view context. When it is not present, the DNS64 functionality is disabled. 3.2 Unbound Unbound's modular architecture let us implement DNS64 as a completely separate and self-contained dynamically loadable module. In Unbound, modules are arranged in a chain and requests traverse them as their resolving progresses. The usual modules are iterator.so, where the core DNS iterating algorithm takes place, and validator.so, which performs DNSSEC processing. Our module, dns64.so, is placed in front of these two. An incoming request is immediately passed to the next module in the chain. When it comes back, its status is checked. If DNS64 processing needs to take place, a new A request is generated and sent to the next module in the chain. When this request comes back, AAAA records are synthesized and the new response is returned to the previous module in the chain. Since we are usually the first module in the chain, this causes Unbound's core to send the response to the client. Usage of the DNS64 functionality in Unbound depends on whether dns64.so is used or not. This is configured in unbound.conf. We also created a new configuration variable named dns64-prefix, which specifies the DNS64 prefix to be used. 4. NAT64 Implementations We implemented NAT64 functionality as a stand-alone user-space program, as a Linux module, and as part of OpenBSD's pf. 4.1 User-Space Our user-space implementation, nat64d, uses a tun(4) device to receive and send packets. This interface was chosen because it is fairly portable and is easy to use. When the program starts it creates the interface. The user then needs to manually configure IPv4 and IPv6 routing so that this interface receives packets intended to the NAT64 translator. This is usually done with ifconfig(8) and the exact syntax varies from one OS to another. Our user-space implementation assumes it has complete ownership of the IPv4 address it is configured to use (address pools are for future development). It cannot share an IPv4 address assigned to another interface. Therefore, for most usage two IPv4 addresses will be needed: one for the physical interface and used to access the box, and another used by nat64d. This design choice was made for implementation simplicity. The session table is implemented using red-black trees from sys/tree.h. Acceleration using a hash table is for future development. When nat64d receives the SIGUSR1 signal, it prints its session table to stdout. The SIGHUP signal causes it to flush its session table.
5 Ipv4 Ipv4 Routing Ipv4 Netfilter hook (NF_LOCAL_IN) ip_local_out() xlate v4 -> v6 xlate v6 -> v4 nat64 netif_rx() nat64 ndo_start_xmit() IPv6 IPv6 Routing IPv6 Figure 3: Linux implementation. 4.2 Linux Our Linux implementation takes the code from the user-space implementation and puts it in kernel-space, in a module called nf_nat64.ko. Packet input using tun(4) is replaced by a Netfilter hook and a dummy nat64 network interface (see figure 3). The session table is the same as in the user's space implementation. Future development will integrate with Netfilter's conntrack facilities. Local process Wire Input Routing Output Wire Change destination (e.g. rdr rule) Straight key look-up and creation Change source (e.g. nat rule) Reversed key look-up and creation
6 Figure 4: Pf Processing. 4.3 OpenBSD's pf Adding NAT64 functionality to pf meant fighting pre-existing assumptions in pf's code. Pf processes forwarded packets in two steps: in the input direction and in the output direction (see figure 4). The existing code assumes that the packet's address family doesn't change as it traverses pf. For example, ip6_input() calls pf_test6() with the dir parameter set to PF_IN to perform input processing, then it passes the packet to ip6_forward(). There is no way for pf_test6() to signal to the calling function that the IPv6 packet has now become an IPv4 packet and that it should call ip_forward() instead. Furthermore, note that the destination address always needs to be changed before routing happens. If we try to change the source address in the input direction (instead of the output direction as usual), then returning packets in the same flow will match against the state key only in the output direction, which is too late to change the destination address. The design that was adopted circumvents these issues by two means: We completely translate packets in the input direction, feed the translated packet back to the main input function (either ipv4_input() or ip6_input()), and stop processing of the original packet by replacing it by a null pointer. The necessary functionality to accomplish this was already present and this is rather clean. The state key that is created has a straight wire key but a reversed stack key. This makes the stack key match the wire key of returning packets so that we can do the reverse processing in the input direction (before routing) also. These special half-reversed state keys are recognized when the address family of the wire key doesn't equal that of the stack key. It was necessary to add such checks in various locations in pf's code. The syntax of NAT64 rules in pf.conf is identical to that of regular NAT rule, except that the nat64 action is used instead. For example: nat64 from any to 64:ff9b::/96 -> (em0) It is planned to also create an rdr64 action for statically mapping IPv4 address-port combinations to IPv Comparison The user-space implementation tries to be as close to the IETF specification as possible. Since the Linux implementation reuses this code, it has the same behaviour. In contrast, the pf implementation is built on top of pf's already existing NAT code, which behaves differently. This has both advantages and disadvantages. For example, the IETF specification mandates endpoint-independent mapping behaviour, which facilitates NAT traversal. On the other hand, it greatly reduces scalability. Since pf uses port- and address-dependent mapping, it can make more efficient use of IPv4 addresses at the cost of making NAT traversal harder. Another difference is the level of integration. The Linux implementation is mostly separate from the existing Netfilter connection tracking code. The pf implementation is very tightly integrated, which makes it benefit automatically from compatibility with other parts of the system such as user-space tools (e.g. pfctl(8), systat(1)) and state synchronization using pfsync. 5. Operational Issues When deploying NAT in medium to large networks, there are usually two concerns that need to be addressed: fail-over and load balancing. These also apply to NAT Fail Over The strategy is exactly the same as for usual NAT: replicate the state on a warm backup and automatically direct traffic to it when the main box fails. This is accomplished on OpenBSD using pfsync and CARP. These methods are also applicable with our NAT64 implementation. 5.2 Load Balancing The separation of DNS64 and NAT64 functions enables a very powerful form of load-balancing. Each NAT64 device, or pair of devices in a fail-over configuration, is assigned a different NAT64 prefix and
7 pool of IPv4 addresses. The multiple prefixes are configured in the DNS64 which picks one of them when synthesizing AAAA records. Many strategies for choosing a prefix can be envisaged: round-robin, random, based on the source address of the client, using feedback from polling the load on the NAT64 devices, etc. Our DNS64 patches currently do not support this feature. It is planned for future work. 5.3 Lessons Learned While running NAT64 we have encountered surprising issues. For example, things that work behind an IPv4 NAT do not necessarily also work from behind a NAT64. This happens when a connection attempt is made directly to an IPv4 address, without using the DNS. For example, some web pages use IPv4 address literals in hyperlinks. To make these links work, one solution is to use an IPv6-enabled HTTP proxy. An clever hack using regular expressions is described in [11]. Another problem encountered was with authoritative DNS servers replying with an error to AAAA queries but normally to A queries. Originally, the DNS64 protocol did not attempt to synthesize records when any error was encountered. Since we reported this problem to the protocol authors, synthesis is attempted for all DNS errors except NXDOMAIN. Finally, all protocols that transport IPv4 addresses in their payload cannot be assumed to work with NAT64. Besides the usual suspects (FTP, SIP, etc.), we encountered a few unexpected ones. For example, a very popular instant-chat protocol redirects the client to a server identified by an IPv4 address as soon as the client tries to register. This makes the program idle in the Connecting... phase. There are a few minor issues with client operating systems when they are configured in IPv6-only mode. For example, we have seen Firefox think it is not connected and enter the Offline mode automatically. These are minor issues in that the functionality is still present but users may stumble on rough corners Overall, NAT64 is very usable for the common web and style. Some remaining issues, such as the instant-chat program example discussed above, can be mitigated fairly easily by developing a simple ALG until the application developers fix their bug. Others, such as SIP usage, require much more ingenuity. 6. Conclusion The Ecdysis project has developed multiple open-source DNS64 and NAT64 implementations. They are available at Our ultimate goal is for the patches to evolve and eventually be accepted for inclusion by the Bind, Unbound, Linux, and OpenBSD projects. With this code, you can now remove IPv4 from your network, go IPv6-only, and still be able to talk to the rest of the world. That's one less barrier in the way of IPv6 adoption. Acknowledgment This work was funded by the NLnet Foundation and Viagénie. References [1] D.B. Johnson, C. Perkins, J. Arkko: Mobility Support in IPv6, IETF Internet Draft, Rel. 24, 26 Jul. 2003, work in progress. [2] Nordmark, E., RFC2765: Stateless IP/ICMP Translation Algorithm (SIIT), February [3] Tsirtsis, G. and P. Srisuresh, RFC2766: Network Address Translation - Protocol Translation (NAT-PT), February [4] Aoun, C. and E. Davies, RFC4966: Reasons to Move the Network Address Translator Protocol Translator (NAT-PT) to Historic Status, July [5] Baker, F., X. Li, C. Bao, and K. Yin, draft-ietf-behave-v4v6-framework-05: Framework for IPv4/IPv6 Translation, January [6] Huitema, C., C. Bao, M. Bagnulo, M. Boucadair, X. Li, draft-ietf-behave-address-format-04: IPv6 Addressing of IPv4/IPv6 Translators, January [7] Li, X., C. Bao, and F. Baker, draft-ietf-behave-v6v4-xlate-06: IP/ICMP Translation Algorithm, January [8] Bagnulo, M., P. Matthews, and I. van Beijnum, draft-ietf-behave-v6v4-xlate-stateful-08: NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers, January [9] Bagnulo, M., A. Sullivan, P. Matthews, and I. van Beijnum, draft-ietf-behave-dns64-05: DNS64: DNS extensions for Network Address Translation from IPv6 Clients to IPv4 Servers, December 2009.
8 [10] Li, X., C. Bao, and F. Baker, draft-xli-behave-ivi-07: IP/ICMP Translation Algorithm, January [11] van Beijnum, I., draft-ietf-behave-ftp64-00: IPv6-to-IPv4 translation FTP considerations, December [12] Wing, D., draft-wing-behave-http-ip-address-literals-01: Coping with IP Address Literals in HTTP URIs with IPv6/IPv4 Translators, October Biographies Simon Perreault is the main author of Ecdysis. Since he joined Viagénie in 2007, he has been the maintainer of the IPv6 port of Asterisk and the author of the IPv6 port of FreeSWITCH. (Asterisk and FreeSWITCH are two open-source IP PBXes.) He is the author of Numb, an IPv6-enabled TURN server, which is an important piece of the transition of VoIP to IPv6. He is currently authoring several IETF protocols: TURN IPv6, TURN TCP, ICE TCP, vcard 4.0, and vcard XML. He holds an M.Sc. in electrical engineering from Laval University. Jean-Philippe Dionne is the main author of the NAT64 implementation in the Linux kernel. Prior to joining Viagénie, he was programming bioinformatics software. He also worked for Hexago as an IPv6 network programmer. He has volunteered various assignments in Africa to help the deployment of Internet and various IT infrastructures, such as developing an application on smartphones for health-care in Africa. Marc Blanchet has 20+ years of experience in IP networks and Unix systems. In 1996, he founded Viagénie, a consulting and R&D firm based in Québec city, Canada, specialized in advanced computer networking technologies such as IP networks and protocols, especially IPv6. From 2002 to 2005, a spin-off company, Hexago, was created to further develop an IPv6 tunnel broker. Marc Blanchet wrote the book Migrating to IPv6 and is the author of several IETF RFCs. He co-founded the IPv6 Forum and is a member of the board and technical directorate. He is also a member of the steering committee of the North American IPv6 Task Force.
Ecdysis: Open-Source DNS64 and NAT64
Ecdysis: Open-Source DNS64 and NAT64 Simon Perreault, Jean-Philippe Dionne, and Marc Blanchet Viagénie, Québec City, Canada {simon.perreault, jean-philippe.dionne, marc.blanchet}@viagenie.ca February 8,
IPv4/IPv6 Transition Using DNS64/NAT64: Deployment Issues
IPv4/IPv6 Transition Using DNS64/NAT64: Deployment Issues Enis Hodzic BH Telecom.d.o.o Sarajevo, Bosnia & Herzegovina [email protected] Sasa Mrdovic Faculty of Electrical Engineering University
IPv6-only hosts in a dual stack environnment
IPv6-only hosts in a dual stack environnment using Free Software Frédéric Gargula, Grégoire Huet Background on IPv4 and IPv6 usage IPv4 addresses depletion doesn't need to be reminded No straight way exists
NAT and Firewall Traversal with STUN / TURN / ICE
NAT and Firewall Traversal with STUN / TURN / ICE Simon Perreault Viagénie {mailto sip}:[email protected] http://www.viagenie.ca Credentials Consultant in IP networking and VoIP at Viagénie.
IPv4 and IPv6 Integration. Formation IPv6 Workshop Location, Date
IPv4 and IPv6 Integration Formation IPv6 Workshop Location, Date Agenda Introduction Approaches to deploying IPv6 Standalone (IPv6-only) or alongside IPv4 Phased deployment plans Considerations for IPv4
IPv4 and IPv6: Connecting NAT-PT to Network Address Pool
Available online www.jocpr.com Journal of Chemical and Pharmaceutical Research, 2014, 6(5):547-553 Research Article ISSN : 0975-7384 CODEN(USA) : JCPRC5 Intercommunication Strategy about IPv4/IPv6 coexistence
NAT Tutorial. Dan Wing, [email protected]. IETF78, Maastricht July 25, 2010
NAT Tutorial Dan Wing, [email protected] IETF78, Maastricht July 25, 2010 v3 1 2 Agenda NAT and NAPT Types of NATs Application Impact Application Layer Gateway (ALG) STUN, ICE, TURN Large-Scale NATs (LSN,
SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres. Tore Anderson Redpill Linpro AS RIPE69, London, November 2014
SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres Tore Anderson Redpill Linpro AS RIPE69, London, November 2014 Stop Thinking IPv4; IPv6 is Here IPv4 is a dying and cramped protocol IPv6 is the exact
SIIT-DC: Stateless IP/ICMP Translation for IPv6 Data Centre Environments & SIIT-DC: Dual Translation Mode
SIIT-DC: Stateless IP/ICMP Translation for IPv6 Data Centre Environments & SIIT-DC: Dual Translation Mode Tore Anderson Redpill Linpro AS RIPE 91, Honolulu, November 2014 An IPv6 data centre The IPv6 Internet
NAT and Firewall Traversal with STUN / TURN / ICE
NAT and Firewall Traversal with STUN / TURN / ICE Simon Perreault Viagénie {mailto sip}:[email protected] http://www.viagenie.ca Credentials Consultant in IP networking and VoIP at Viagénie.
Network Address Translation (NAT)
Network Address Translation (NAT) Relates to Lab 7. Module about private networks and NAT. Taken from http://www.cs.virginia.edu/~itlab/ book/slides/module17-nat.ppt 1 Private Network Private IP network
How To Connect Ipv4 To Ipv6 On A Ipv2 (Ipv4) On A Network With A Pnet 2.5 (Ipvin4) Or Ipv3 (Ip V6) On An Ipv5
The case for IPv6-only data centres...and how to pull it off in today's IPv4-dominated world Tore Anderson Redpill Linpro AS RIPE64, Ljubljana, April 2012 IPv6 deployment approaches 0) Traditional IPv4-only
IPv4/IPv6 Translation: Framework. Li, Bao, and Baker
IPv4/IPv6 Translation: Framework Li, Bao, and Baker Outcome from the Montreal Interim Basically, merging NAT64 and IVI to produce a common translation technology Not to exclude other documents, but these
Deploying IPv6 Service Across Local IPv4 Access Networks
Deploying IPv6 Service Across Local IPv4 Access Networks ALA HAMARSHEH 1, MARNIX GOOSSENS 1, RAFE ALASEM 2 1 Vrije Universiteit Brussel Department of Electronics and Informatics ETRO Building K, Office
Availability Digest. www.availabilitydigest.com. Redundant Load Balancing for High Availability July 2013
the Availability Digest Redundant Load Balancing for High Availability July 2013 A large data center can comprise hundreds or thousands of servers. These servers must not only be interconnected, but they
Improving DNS performance using Stateless TCP in FreeBSD 9
Improving DNS performance using Stateless TCP in FreeBSD 9 David Hayes, Mattia Rossi, Grenville Armitage Centre for Advanced Internet Architectures, Technical Report 101022A Swinburne University of Technology
Use Domain Name System and IP Version 6
Use Domain Name System and IP Version 6 What You Will Learn The introduction of IP Version 6 (IPv6) into an enterprise environment requires some changes both in the provisioned Domain Name System (DNS)
Speeding up IPv6 Transition: Discovering NAT64 and Learning Prefix for IPv6 Address Synthesis
Speeding up IPv6 Transition: Discovering NAT64 and Learning Prefix for IPv6 Address Synthesis Yi Ding University of Helsinki [email protected] Teemu Savolainen Nokia Research Center [email protected]
Implementation and Evaluation of Protocols Translating Methods for IPv4 to IPv6 Transition
Implementation and Evaluation of Protocols Translating Methods for IPv4 to IPv6 Transition Cristian Pérez Monte, María Inés Robles, Gustavo Mercado, Carlos Taffernaberry, Marcela Orbiscay, Sebastián Tobar,
SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres. Tore Anderson Redpill Linpro AS 8th Belgian IPv6 Council, Bruxelles, November 2015
SIIT-DC: IPv4 Service Continuity for IPv6 Data Centres Tore Anderson Redpill Linpro AS 8th Belgian IPv6 Council, Bruxelles, November 2015 Why build IPv6-only data centres? IPv4 scarcity - we can no longer
464XLAT in mobile networks
STRATEGIC WHITE PAPER IPv6 migration strategies for mobile networks To cope with the increasing demand for IP addresses, most mobile network operators (MNOs) have deployed Carrier Grade Network Address
Virtual private network. Network security protocols VPN VPN. Instead of a dedicated data link Packets securely sent over a shared network Internet VPN
Virtual private network Network security protocols COMP347 2006 Len Hamey Instead of a dedicated data link Packets securely sent over a shared network Internet VPN Public internet Security protocol encrypts
Network Address Translation (NAT) Adapted from Tannenbaum s Computer Network Ch.5.6; computer.howstuffworks.com/nat1.htm; Comer s TCP/IP vol.1 Ch.
Network Address Translation (NAT) Adapted from Tannenbaum s Computer Network Ch.5.6; computer.howstuffworks.com/nat1.htm; Comer s TCP/IP vol.1 Ch.20 Long term and short term solutions to Internet scalability
VDE Tagung Mobilkommunikation 2014, Osnabruck 22.05.2014
Gabriel Bertram, Detecon International GmbH, Cologne Andreas Grebe, Cologne University of Applied Sciences, Computer Networks Research Group Holger Metschulat, Deutsche Telekom Technik GmbH, Darmstadt
Performance Analysis and Comparison of Different DNS64 Implementations for Linux, OpenBSD and FreeBSD
Performance Analysis and Comparison of Different DNS64 Implementations for Linux, OpenBSD and FreeBSD Gábor Lencse Department of Telecommunications Széchenyi István University Győr, Hungary [email protected]
Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015
CS168 Computer Networks Jannotti Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015 Contents 1 Introduction 1 2 Components 1 2.1 Creating the tunnel..................................... 2 2.2 Using the
DEPLOYMENT GUIDE Version 1.4. Configuring IP Address Sharing in a Large Scale Network: DNS64/NAT64
DEPLOYMENT GUIDE Version 1.4 Configuring IP Address Sharing in a Large Scale Network: DNS64/NAT64 Table of Contents Table of Contents Configuring IP address sharing in a large scale network... 1 Product
NAT TCP SIP ALG Support
The feature allows embedded messages of the Session Initiation Protocol (SIP) passing through a device that is configured with Network Address Translation (NAT) to be translated and encoded back to the
IPv6 and DNS. Secure64
IPv6 and DNS Secure64 About me Stephan Lagerholm Director and Founder of TXv6TF. Secure64 Software Corp. Sponsor of the event. Agenda: DNS and IPv6 basics DNS64 (RFC 6147) 464XLAT (RFC 6877) Heuristic
Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application. Author: Fung, King Pong
Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application Author: Fung, King Pong MSc in Information Technology The Hong Kong Polytechnic University June 1999 i Abstract Abstract of dissertation
IPv6 Fundamentals: A Straightforward Approach
IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6 Rick Graziani Cisco Press 800 East 96th Street Indianapolis, IN 46240 IPv6 Fundamentals Contents Introduction xvi Part I: Background
Load Balancing. Final Network Exam LSNAT. Sommaire. How works a "traditional" NAT? Un article de Le wiki des TPs RSM.
Load Balancing Un article de Le wiki des TPs RSM. PC Final Network Exam Sommaire 1 LSNAT 1.1 Deployement of LSNAT in a globally unique address space (LS-NAT) 1.2 Operation of LSNAT in conjunction with
IPv6 Transition Work in the IETF
IPv6 Transition Work in the IETF Ralph Droms, Internet Area Director Thanks to Jari Arkko, Fred Baker and many others for contributions to these slides 1 IPv6 Transition Work in the IETF Outline of Presentation
FreeBSD Firewalls SS- E 2014. Kevin Chege ISOC
FreeBSD Firewalls SS- E 2014 Kevin Chege ISOC What s a Firewall? Computer network security device to protect devices, or restrict access to or from a network Analyzes traffic coming in or going out (or
Deployment Guide A10 Networks/Infoblox Joint DNS64 and NAT64 Solution
Deployment Guide A10 Networks/Infoblox Joint DNS64 and NAT64 Solution DG_ACC_062011.1 TABLE OF CONTENTS 1 Introduction... 3 2 Deployment Guide Overview... 3 3 Lab Setup Requirements... 3 4 Architecture
464XLAT: Breaking Free of IPv4. Cameron.Byrne @ T-Mobile.com NANOG 61 June 2014
464XLAT: Breaking Free of IPv4 Cameron.Byrne @ T-Mobile.com NANOG 61 June 2014 1 Goals of Talk 1. Declare victory for IPv6 2. Explain IPv6-only approach at T-Mobile US 3. Discuss risks related to IPv4-only
Secure64. Use cases for DNS64/NAT64
Secure64 Use cases for DNS64/NAT64 Agenda / About Me VP of Sales and Customer Solutions at Secure64 Software Corp. Director and founder of the TXv6TF Personal blog at IPv4depletion.com 1 IPv4 Depletion
464XLAT: Breaking Free of IPv4. [email protected] APRICOT 2014
464XLAT: Breaking Free of IPv4 [email protected] APRICOT 2014 1 Background T-Mobile US is a GSM / UMTS / LTE provider in the USA with 45+ Million subscribers In 2008, T-Mobile launched the first
Proxy Server, Network Address Translator, Firewall. Proxy Server
Proxy Server, Network Address Translator, Firewall 1 Proxy Server 2 1 Introduction What is a proxy server? Acts on behalf of other clients, and presents requests from other clients to a server. Acts as
Understanding Slow Start
Chapter 1 Load Balancing 57 Understanding Slow Start When you configure a NetScaler to use a metric-based LB method such as Least Connections, Least Response Time, Least Bandwidth, Least Packets, or Custom
Firewalls P+S Linux Router & Firewall 2013
Firewalls P+S Linux Router & Firewall 2013 Firewall Techniques What is a firewall? A firewall is a hardware or software device which is configured to permit, deny, or proxy data through a computer network
Scalable Linux Clusters with LVS
Scalable Linux Clusters with LVS Considerations and Implementation, Part I Eric Searcy Tag1 Consulting, Inc. [email protected] April 2008 Abstract Whether you are perusing mailing lists or reading
CheckPoint Software Technologies LTD. How to Configure Firewall-1 With Connect Control
CheckPoint Software Technologies LTD. How to Configure Firewall-1 With Connect Control (Load-Balance across multiple servers) Event: Partner Exchange Conference Date: October 10, 1999 Revision 1.0 Author:
Configuring Network Address Translation
CHAPTER5 Configuring Network Address Translation The information in this chapter applies to both the ACE module and the ACE appliance unless otherwise noted. This chapter contains the following major sections
Netfilter s connection tracking system
PABLO NEIRA AYUSO Netfilter s connection tracking system Pablo Neira Ayuso has an M.S. in computer science and has worked for several companies in the IT security industry, with a focus on open source
Tunnel Client FAQ. Table of Contents. Version 0v5, November 2014 Revised: Kate Lance Author: Karl Auer
Tunnel Client FAQ Version 0v5, November 2014 Revised: Kate Lance Author: Karl Auer Table of Contents A. Tunnelling 1 How does tunnelling work? 2 What operating systems are supported? 3 Where can I get
EXPEDITING ACCESS TO V6 SERVICES: GETTING WEB CONTENT AVAILABLE OVER IPV6 QUICKLY AND AT LOW COST
EXPEDITING ACCESS TO V6 SERVICES: GETTING WEB CONTENT AVAILABLE OVER IPV6 QUICKLY AND AT LOW COST Tim LeMaster [email protected] IPV6 REALITY CHECK: THE IPV4 LONG TAIL Post IPv4 allocation completion:
Firewalls. Chien-Chung Shen [email protected]
Firewalls Chien-Chung Shen [email protected] The Need for Firewalls Internet connectivity is essential however it creates a threat vs. host-based security services (e.g., intrusion detection), not cost-effective
How To Understand The Purpose Of A Sip Aware Firewall/Alg (Sip) With An Alg (Sip) And An Algen (S Ip) (Alg) (Siph) (Network) (Ip) (Lib
NetVanta Unified Communications Technical Note The Purpose of a SIP-Aware Firewall/ALG Introduction This technical note will explore the purpose of a Session Initiation Protocol (SIP)-aware firewall/application
Компјутерски Мрежи NAT & ICMP
Компјутерски Мрежи NAT & ICMP Riste Stojanov, M.Sc., Aleksandra Bogojeska, M.Sc., Vladimir Zdraveski, B.Sc Internet AS Hierarchy Inter-AS border (exterior gateway) routers Intra-AS interior (gateway) routers
IPv6 SECURITY. May 2011. The Government of the Hong Kong Special Administrative Region
IPv6 SECURITY May 2011 The Government of the Hong Kong Special Administrative Region The contents of this document remain the property of, and may not be reproduced in whole or in part without the express
NAT Traversal for VoIP. Ai-Chun Pang Graduate Institute of Networking and Multimedia Dept. of Comp. Sci. and Info. Engr. National Taiwan University
NAT Traversal for VoIP Ai-Chun Pang Graduate Institute of Networking and Multimedia Dept. of Comp. Sci. and Info. Engr. National Taiwan University 1 What is NAT NAT - Network Address Translation RFC 3022
Whitepaper IPv6. OpenScape UC Suite IPv6 Transition Strategy
Whitepaper IPv6 OpenScape UC Suite IPv6 Transition Strategy Table of Contents 1. Executive Summary 3 2. Introduction 4 3. Technical Basics 5 3.1. IPv4 IPv6 Translation 6 3.2. IP-in-IP Tunneling 7 4. Selecting
Chapter 7. Address Translation
Chapter 7. Address Translation This chapter describes NetDefendOS address translation capabilities. Dynamic Network Address Translation, page 204 NAT Pools, page 207 Static Address Translation, page 210
A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems
A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems L. D Acunto, J.A. Pouwelse, and H.J. Sips Department of Computer Science Delft University of Technology, The Netherlands [email protected]
Security of IPv6 and DNSSEC for penetration testers
Security of IPv6 and DNSSEC for penetration testers Vesselin Hadjitodorov Master education System and Network Engineering June 30, 2011 Agenda Introduction DNSSEC security IPv6 security Conclusion Questions
Firewalls and VPNs. Principles of Information Security, 5th Edition 1
Firewalls and VPNs Principles of Information Security, 5th Edition 1 Learning Objectives Upon completion of this material, you should be able to: Understand firewall technology and the various approaches
Dante a BSD licensed SOCKS implementation. Inferno Nettverk A/S. Bergen Linux User Group 2005-11-24
Dante a BSD licensed SOCKS implementation Inferno Nettverk A/S Bergen Linux User Group 2005-11-24 1 / 21 Background (1) Inferno Nettverk A/S started as security consulting company goal: sell OpenBSD based
Universal Plug and Play and Port Control Protocol: The Advance Features of Dual Stack IPv4 and IPv6 Customer Premises Equipment
Universal Plug and Play and Port Control Protocol: The Advance Features of Dual Stack IPv4 and IPv6 Customer Premises Equipment Ihsan Lumasa Rimra1*, Wiwik Wiharti2, Surfa Yondri3 1 Department of Telecommunication
21.4 Network Address Translation (NAT) 21.4.1 NAT concept
21.4 Network Address Translation (NAT) This section explains Network Address Translation (NAT). NAT is also known as IP masquerading. It provides a mapping between internal IP addresses and officially
This presentation discusses the new support for the session initiation protocol in WebSphere Application Server V6.1.
This presentation discusses the new support for the session initiation protocol in WebSphere Application Server V6.1. WASv61_SIP_overview.ppt Page 1 of 27 This presentation will provide an overview of
INTRODUCTION TO FIREWALL SECURITY
INTRODUCTION TO FIREWALL SECURITY SESSION 1 Agenda Introduction to Firewalls Types of Firewalls Modes and Deployments Key Features in a Firewall Emerging Trends 2 Printed in USA. What Is a Firewall DMZ
Firewall Builder Architecture Overview
Firewall Builder Architecture Overview Vadim Zaliva Vadim Kurland Abstract This document gives brief, high level overview of existing Firewall Builder architecture.
Considerations on NAT64 Load- Balancing
Considerations on NAT64 Load- Balancing draft-zhang-behave-nat64-load-balancing Dacheng Zhang Xiaohu Xu Mohamed Boucadair Xuewei Wang Yan Wang Cameron Byrne Dong Zhang Change Log This I-D is a merge of
An API for dynamic firewall control and its implementation for Linux Netfilter
An API for dynamic firewall control and its implementation for Linux Netfilter 3. Essener Workshop "Neue Herausforderungen in der Netzsicherheit" Jochen Kögel, Sebastian Kiesel, Sebastian Meier [email protected]
IPv6/IPv4 Translation for SIP Applications- Socket-Layer Translator and SIPv6 Translator
IPv6/IPv4 Translation for SIP Applications- Socket-Layer Translator and SIPv6 Translator Whai-En Chen Research Assistant Professor Department of Computer Science and Information Engineering National Chiao
642 523 Securing Networks with PIX and ASA
642 523 Securing Networks with PIX and ASA Course Number: 642 523 Length: 1 Day(s) Course Overview This course is part of the training for the Cisco Certified Security Professional and the Cisco Firewall
How To Balance A Load Balancer On A Server On A Linux (Or Ipa) (Or Ahem) (For Ahem/Netnet) (On A Linux) (Permanent) (Netnet/Netlan) (Un
Super/Ultra-Basic Load-Balancing Introduction For AFNOG 2012 Joel Jaeggli 1 What is Load-balancing The act of dividing a workload between N > 1 devices capable for performing a task. Multiple contexts
High Performance Cluster Support for NLB on Window
High Performance Cluster Support for NLB on Window [1]Arvind Rathi, [2] Kirti, [3] Neelam [1]M.Tech Student, Department of CSE, GITM, Gurgaon Haryana (India) [email protected] [2]Asst. Professor,
Network Convergence and the NAT/Firewall Problems
Network Convergence and the NAT/Firewall Problems Victor Paulsamy Zapex Technologies, Inc. Mountain View, CA 94043 Samir Chatterjee School of Information Science Claremont Graduate University Claremont,
Asterisk with IPv6: Seamless and Ubiquitous VoIP
Asterisk with IPv6: Seamless and Ubiquitous VoIP Marc Blanchet Viagénie [email protected] http://www.viagenie.ca Presented at Voice Peering Forum, Miami, March 2007 Credentials 20+ years in IP
Dynamic Host Configuration Protocol (DHCP) 02 NAT and DHCP Tópicos Avançados de Redes
Dynamic Host Configuration Protocol (DHCP) 1 1 Dynamic Assignment of IP addresses Dynamic assignment of IP addresses is desirable for several reasons: IP addresses are assigned on-demand Avoid manual IP
Stateful Network Address Translators (NAT) Xiaohu Xu ([email protected]) Dean Cheng ([email protected]) IETF75, Stockholm
Redundancy and Load-Balancing Mechanisms for Stateful Network Address Translators (NAT) draft-xu-behave-stateful-nat-standby-00 Xiaohu Xu ([email protected]) Dean Cheng ([email protected]) www.huawei.com
CIT 480: Securing Computer Systems. Firewalls
CIT 480: Securing Computer Systems Firewalls Topics 1. What is a firewall? 2. Types of Firewalls 1. Packet filters (stateless) 2. Stateful firewalls 3. Proxy servers 4. Application layer firewalls 3. Configuring
IPv6 Security from point of view firewalls
IPv6 Security from point of view firewalls János Mohácsi 09/June/2004 János Mohácsi, Research Associate, Network Engineer NIIF/HUNGARNET Contents Requirements IPv6 firewall architectures Firewalls and
Firewalls und IPv6 worauf Sie achten müssen!
Firewalls und IPv6 worauf Sie achten müssen! Pascal Raemy CTO Asecus AG [email protected] Asecus AG Asecus AG Security (Firewall, Web-Gateway, Mail-Gateway) Application Delivery (F5 Neworks with BIGIP)
THE ADOPTION OF IPv6 *
THE ADOPTION OF IPv6 * STUDENT PAPER Brian Childress Southwest Texas State University [email protected] Bryan Cathey Southwest Texas State University [email protected] Sara Dixon Southwest Texas State University
Smart Tips. Enabling WAN Load Balancing. Key Features. Network Diagram. Overview. Featured Products. WAN Failover. Enabling WAN Load Balancing Page 1
Smart Tips Enabling WAN Load Balancing Overview Many small businesses today use broadband links such as DSL or Cable, favoring them over the traditional link such as T1/E1 or leased lines because of the
ICS 351: Today's plan. IP addresses Network Address Translation Dynamic Host Configuration Protocol Small Office / Home Office configuration
ICS 351: Today's plan IP addresses Network Address Translation Dynamic Host Configuration Protocol Small Office / Home Office configuration IP address exhaustion IPv4 addresses are 32 bits long so there
7. Firewall - Concept
7. - Concept ค อ อ ปกรณ Hardware หร อ Software ซ งถ กต ดต ง เพ อ อน ญาต (permit), ปฏ เสธ(deny) หร อ เป นต วแทน(proxy data) ให ผ านไปย งเคร อข ายท ม ระด บความเช อถ อต างก น 7. - Concept components Network
Review: Lecture 1 - Internet History
Review: Lecture 1 - Internet History late 60's ARPANET, NCP 1977 first internet 1980's The Internet collection of networks communicating using the TCP/IP protocols 1 Review: Lecture 1 - Administration
Open Source in Network Administration: the ntop Project
Open Source in Network Administration: the ntop Project Luca Deri 1 Project History Started in 1997 as monitoring application for the Univ. of Pisa 1998: First public release v 0.4 (GPL2) 1999-2002:
Protecting and controlling Virtual LANs by Linux router-firewall
Protecting and controlling Virtual LANs by Linux router-firewall Tihomir Katić Mile Šikić Krešimir Šikić Faculty of Electrical Engineering and Computing University of Zagreb Unska 3, HR 10000 Zagreb, Croatia
Global Mobile IPv6 Addressing using Transition Mechanisms
Edgard Jamhour, Simone Storoz Graduate Program in Applied Computer Science, Pontifical Catholic University of Paraná, Brazil. [email protected] [email protected] [email protected] Abstract
DEPLOYMENT GUIDE Version 1.1. DNS Traffic Management using the BIG-IP Local Traffic Manager
DEPLOYMENT GUIDE Version 1.1 DNS Traffic Management using the BIG-IP Local Traffic Manager Table of Contents Table of Contents Introducing DNS server traffic management with the BIG-IP LTM Prerequisites
DNS at NLnet Labs. Matthijs Mekking
DNS at NLnet Labs Matthijs Mekking Topics NLnet Labs DNS DNSSEC Recent events NLnet Internet Provider until 1997 The first internet backbone in Holland Funding research and software projects that aid the
IPv4/IPv6 Translation Technology
/ Translation Technology V Masaki Nakajima V Nobumasu Kobayashi (Manuscript received December 24, 2003) The ubiquitous network society in which anyone can connect to the Internet and enjoy services anytime,
Configuring DNS. Finding Feature Information
The Domain Name System (DNS) is a distributed database in which you can map hostnames to IP addresses through the DNS protocol from a DNS server. Each unique IP address can have an associated hostname.
