- Learning OpenDaylight
- Reza Toghraee
- 262字
- 2021-07-09 20:08:10
Network Address Translation (NATApp)
Project type: Main
This plugin provides network address translation service to ODL. It installs flow rules in OpenFlow switches with the respective NAT rules.
NATApp consists of various types of NAT implementations, including static NAT, dynamic NAT, and Network Address Port Translation (NAPT) or PAT. The users of this plugin can select the type of NAT implementation and subsequently feed in the floating and private IP addresses.
NAT functionality is one of the basic features available in any enterprise network. Through this, local IP addresses can be translated into global IP addresses and vice versa for Internet connectivity. This is traditionally done by the perimeter router of the firewall in the enterprise network, which is connected to the service provider. In the SDN scenario, this functionality has to be hosted (in the router) as an application on the SDN controller.
NATApp in ODL supports the following NAT scenarios:
- One-to-one NAT (static NAT)
- One-to-many NAT (dynamic NAT)
- NAPT or Port Address Translation (PAT)
- Full cone NAT
- (Address)-restricted-cone NAT
- Port-restricted cone NAT
- NAT loopback (Hair pining)
- Stateful and stateless NAT64 for Address Family Translation (AFT) with IPv6 to IPv4 conversion
The following diagram illustrates how an SDN controller running a NAT application can inject NAT policies to an OpenFlow capable router. (Remember that there are OpenFlow extensions that define any alternation in a packet. NAT is one of the use cases that tells the router how to alter and modify a packet before sending it out.)

The following image illustrates how the NAT plugin communicates with applications and network elements:

- Linux運維實戰:CentOS7.6操作系統從入門到精通
- Windows Server 2012 Hyper-V:Deploying the Hyper-V Enterprise Server Virtualization Platform
- 網絡操作系統:Windows Server 2003管理與應用
- BPEL and Java Cookbook
- WordPress Mobile Web Development:Beginner's Guide
- 竹林蹊徑:深入淺出windows驅動開發
- Mastering Reactive JavaScript
- 計算機系統的自主設計
- Kali Linux高級滲透測試
- Linux系統最佳實踐工具:命令行技術
- iOS 10快速開發:18天零基礎開發一個商業應用
- Office 365 User Guide
- 15分鐘!畫出我的漫畫角色:賣萌篇
- Learning Joomla! 3 Extension Development(Third Edition)
- Drupal 7 Mobile Web Development Beginner’s Guide