diff --git a/src/plugins/nat/lib/ipfix_logging.c b/src/plugins/nat/lib/ipfix_logging.c
index f569ccd19..8dc9eb789 100644
--- a/src/plugins/nat/lib/ipfix_logging.c
+++ b/src/plugins/nat/lib/ipfix_logging.c
@@ -26,7 +26,7 @@
 vlib_node_registration_t nat_ipfix_flush_node;
 nat_ipfix_logging_main_t nat_ipfix_logging_main;
 
-#define NAT44_SESSION_CREATE_LEN 26
+#define NAT44_SESSION_CREATE_LEN 38
 #define NAT_ADDRESSES_EXHAUTED_LEN 13
 #define MAX_ENTRIES_PER_USER_LEN 21
 #define MAX_SESSIONS_LEN 17
@@ -36,7 +36,7 @@ nat_ipfix_logging_main_t nat_ipfix_logging_main;
 #define NAT64_BIB_LEN 38
 #define NAT64_SES_LEN 62
 
-#define NAT44_SESSION_CREATE_FIELD_COUNT 8
+#define NAT44_SESSION_CREATE_FIELD_COUNT 12
 #define NAT_ADDRESSES_EXHAUTED_FIELD_COUNT 3
 #define MAX_ENTRIES_PER_USER_FIELD_COUNT 5
 #define MAX_SESSIONS_FIELD_COUNT 4
@@ -54,6 +54,10 @@ typedef struct
   u16 src_port;
   u16 nat_src_port;
   u32 vrf_id;
+  u32 dst_ip;
+  u32 nat_dst_ip;
+  u16 dst_port;
+  u16 nat_dst_port;
 } nat_ipfix_logging_nat44_ses_args_t;
 
 typedef struct
@@ -274,6 +278,14 @@ nat_template_rewrite (ipfix_exporter_t *exp, flow_report_t *fr,
       f++;
       f->e_id_length = ipfix_e_id_length (0, ingressVRFID, 4);
       f++;
+      f->e_id_length = ipfix_e_id_length (0, destinationIPv4Address, 4);
+      f++;
+      f->e_id_length = ipfix_e_id_length (0, postNATDestinationIPv4Address, 4);
+      f++;
+      f->e_id_length = ipfix_e_id_length (0, destinationTransportPort, 2);
+      f++;
+      f->e_id_length = ipfix_e_id_length (0, postNAPTDestinationTransportPort, 2);
+      f++;
     }
   else if (event == NAT64_BIB_CREATE)
     {
@@ -551,7 +563,9 @@ nat_ipfix_send (flow_report_main_t *frm, vlib_frame_t *f, vlib_buffer_t *b0,
 static void
 nat_ipfix_logging_nat44_ses (u32 thread_index, u8 nat_event, u32 src_ip,
 			     u32 nat_src_ip, ip_protocol_t proto, u16 src_port,
-			     u16 nat_src_port, u32 fib_index, int do_flush)
+			     u16 nat_src_port, u32 fib_index, u32 dst_ip,
+			     u32 nat_dst_ip, u16 dst_port, u16 nat_dst_port,
+			     int do_flush)
 {
   nat_ipfix_logging_main_t *silm = &nat_ipfix_logging_main;
   nat_ipfix_per_thread_data_t *sitd = &silm->per_thread_data[thread_index];
@@ -634,6 +648,28 @@ nat_ipfix_logging_nat44_ses (u32 thread_index, u8 nat_event, u32 src_ip,
       clib_memcpy_fast (b0->data + offset, &vrf_id, sizeof (vrf_id));
       offset += sizeof (vrf_id);
 
+      clib_memcpy_fast (b0->data + offset, &dst_ip, sizeof (dst_ip));
+      offset += sizeof (dst_ip);
+
+      if (nat_dst_ip) {
+	      clib_memcpy_fast (b0->data + offset, &nat_dst_ip, sizeof (nat_dst_ip));
+	      offset += sizeof (nat_dst_ip);
+      } else {
+	      clib_memcpy_fast (b0->data + offset, &dst_ip, sizeof (dst_ip));
+	      offset += sizeof (dst_ip);
+      }
+
+      clib_memcpy_fast (b0->data + offset, &dst_port, sizeof (dst_port));
+      offset += sizeof (dst_port);
+
+      if (nat_dst_port) {
+	      clib_memcpy_fast (b0->data + offset, &nat_dst_port, sizeof (nat_dst_port));
+	      offset += sizeof (nat_dst_port);
+      } else {
+	      clib_memcpy_fast (b0->data + offset, &dst_port, sizeof (dst_port));
+	      offset += sizeof (dst_port);
+      }
+
       b0->current_length += NAT44_SESSION_CREATE_LEN;
     }
 
@@ -1226,7 +1262,7 @@ nat_ipfix_flush (u32 thread_index)
   int do_flush = 1;
 
   nat_ipfix_logging_nat44_ses (thread_index,
-                                0, 0, 0, 0, 0, 0, 0, do_flush);
+                                0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, do_flush);
   nat_ipfix_logging_addr_exhausted (thread_index, 0, do_flush);
   nat_ipfix_logging_max_entries_per_usr (thread_index, 0, 0, do_flush);
   nat_ipfix_logging_max_ses (thread_index, 0, do_flush);
@@ -1284,13 +1320,15 @@ void
 nat_ipfix_logging_nat44_ses_create (u32 thread_index, u32 src_ip,
 				    u32 nat_src_ip, ip_protocol_t proto,
 				    u16 src_port, u16 nat_src_port,
-				    u32 fib_index)
+				    u32 fib_index, u32 dst_ip, u32 nat_dst_ip,
+				    u16 dst_port, u16 nat_dst_port)
 {
   skip_if_disabled ();
 
   nat_ipfix_logging_nat44_ses (thread_index, NAT44_SESSION_CREATE, src_ip,
 			       nat_src_ip, proto, src_port, nat_src_port,
-			       fib_index, 0);
+			       fib_index, dst_ip, nat_dst_ip, dst_port, nat_dst_port,
+			       0);
 }
 
 /**
@@ -1300,13 +1338,15 @@ void
 nat_ipfix_logging_nat44_ses_delete (u32 thread_index, u32 src_ip,
 				    u32 nat_src_ip, ip_protocol_t proto,
 				    u16 src_port, u16 nat_src_port,
-				    u32 fib_index)
+				    u32 fib_index, u32 dst_ip, u32 nat_dst_ip,
+				    u16 dst_port, u16 nat_dst_port)
 {
   skip_if_disabled ();
 
   nat_ipfix_logging_nat44_ses (thread_index, NAT44_SESSION_DELETE, src_ip,
 			       nat_src_ip, proto, src_port, nat_src_port,
-			       fib_index, 0);
+			       fib_index, dst_ip, nat_dst_ip, dst_port, nat_dst_port,
+			       0);
 }
 
 /**
diff --git a/src/plugins/nat/lib/ipfix_logging.h b/src/plugins/nat/lib/ipfix_logging.h
index dc7927a16..0bb73e48c 100644
--- a/src/plugins/nat/lib/ipfix_logging.h
+++ b/src/plugins/nat/lib/ipfix_logging.h
@@ -123,11 +123,13 @@ int nat_ipfix_logging_enable_disable (int enable, u32 domain_id, u16 src_port);
 void nat_ipfix_logging_nat44_ses_create (u32 thread_index, u32 src_ip,
 					 u32 nat_src_ip, ip_protocol_t proto,
 					 u16 src_port, u16 nat_src_port,
-					 u32 fib_index);
+					 u32 fib_index, u32 dst_ip, u32 nat_dst_ip,
+					 u16 dst_port, u16 nat_dst_port);
 void nat_ipfix_logging_nat44_ses_delete (u32 thread_index, u32 src_ip,
 					 u32 nat_src_ip, ip_protocol_t proto,
 					 u16 src_port, u16 nat_src_port,
-					 u32 fib_index);
+					 u32 fib_index, u32 dst_ip, u32 nat_dst_ip,
+					 u16 dst_port, u16 nat_dst_port);
 void nat_ipfix_logging_addresses_exhausted(u32 thread_index, u32 pool_id);
 void nat_ipfix_logging_max_entries_per_user(u32 thread_index,
                                              u32 limit, u32 src_ip);
diff --git a/src/plugins/nat/nat44-ed/nat44_ed.c b/src/plugins/nat/nat44-ed/nat44_ed.c
index 08e577747..a0a6695e4 100644
--- a/src/plugins/nat/nat44-ed/nat44_ed.c
+++ b/src/plugins/nat/nat44-ed/nat44_ed.c
@@ -236,7 +236,9 @@ nat44_ed_free_session_data (snat_main_t *sm, snat_session_t *s,
       /* log NAT event */
       nat_ipfix_logging_nat44_ses_delete (
 	thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32, s->proto,
-	s->in2out.port, s->out2in.port, s->in2out.fib_index);
+	s->in2out.port, s->out2in.port, s->in2out.fib_index,
+       	s->ext_host_addr.as_u32, s->ext_host_nat_addr.as_u32, s->ext_host_port,
+       	s->ext_host_nat_port);
     }
 }
 
diff --git a/src/plugins/nat/nat44-ed/nat44_ed_in2out.c b/src/plugins/nat/nat44-ed/nat44_ed_in2out.c
index 9b4dac3b3..4bcd8989d 100644
--- a/src/plugins/nat/nat44-ed/nat44_ed_in2out.c
+++ b/src/plugins/nat/nat44-ed/nat44_ed_in2out.c
@@ -606,7 +606,9 @@ slow_path_ed (vlib_main_t *vm, snat_main_t *sm, vlib_buffer_t *b,
   /* log NAT event */
   nat_ipfix_logging_nat44_ses_create (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32, s->proto,
-    s->in2out.port, s->out2in.port, s->in2out.fib_index);
+    s->in2out.port, s->out2in.port, s->in2out.fib_index,
+    s->ext_host_addr.as_u32, s->ext_host_nat_addr.as_u32, s->ext_host_port,
+    s->ext_host_nat_port);
 
   nat_syslog_nat44_sadd (0, s->in2out.fib_index, &s->in2out.addr,
 			 s->in2out.port, &s->ext_host_nat_addr,
diff --git a/src/plugins/nat/nat44-ed/nat44_ed_inlines.h b/src/plugins/nat/nat44-ed/nat44_ed_inlines.h
index 8cd93f263..f9db68ac9 100644
--- a/src/plugins/nat/nat44-ed/nat44_ed_inlines.h
+++ b/src/plugins/nat/nat44-ed/nat44_ed_inlines.h
@@ -711,10 +711,12 @@ nat44_ed_session_reopen (u32 thread_index, snat_session_t *s)
 
   nat_ipfix_logging_nat44_ses_delete (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32, s->proto,
-    s->in2out.port, s->out2in.port, s->in2out.fib_index);
+    s->in2out.port, s->out2in.port, s->in2out.fib_index, s->ext_host_addr.as_u32,
+    s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
   nat_ipfix_logging_nat44_ses_create (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32, s->proto,
-    s->in2out.port, s->out2in.port, s->in2out.fib_index);
+    s->in2out.port, s->out2in.port, s->in2out.fib_index, s->ext_host_addr.as_u32,
+    s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
   nat_syslog_nat44_sadd (0, s->in2out.fib_index, &s->in2out.addr,
 			 s->in2out.port, &s->ext_host_nat_addr,
diff --git a/src/plugins/nat/nat44-ed/nat44_ed_out2in.c b/src/plugins/nat/nat44-ed/nat44_ed_out2in.c
index fe4a41c5e..90f8987ab 100644
--- a/src/plugins/nat/nat44-ed/nat44_ed_out2in.c
+++ b/src/plugins/nat/nat44-ed/nat44_ed_out2in.c
@@ -543,7 +543,9 @@ create_session_for_static_mapping_ed (
     }
   nat_ipfix_logging_nat44_ses_create (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32, s->proto,
-    s->in2out.port, s->out2in.port, s->in2out.fib_index);
+    s->in2out.port, s->out2in.port, s->in2out.fib_index,
+    s->ext_host_addr.as_u32, s->ext_host_nat_addr.as_u32, s->ext_host_port,
+    s->ext_host_nat_port);
 
   nat_syslog_nat44_sadd (0, s->in2out.fib_index, &s->in2out.addr,
 			 s->in2out.port, &s->ext_host_nat_addr,
diff --git a/src/plugins/nat/nat44-ei/nat44_ei.c b/src/plugins/nat/nat44-ei/nat44_ei.c
index d1959f72a..07de34b13 100644
--- a/src/plugins/nat/nat44-ei/nat44_ei.c
+++ b/src/plugins/nat/nat44-ei/nat44_ei.c
@@ -1412,7 +1412,8 @@ nat44_ei_free_session_data_v2 (nat44_ei_main_t *nm, nat44_ei_session_t *s,
       nat_ipfix_logging_nat44_ses_delete (
 	thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
 	nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-	s->in2out.fib_index);
+	s->in2out.fib_index, s->ext_host_addr.as_u32,
+       	s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
       nat_ha_sdel (&s->out2in.addr, s->out2in.port, &s->ext_host_addr,
 		   s->ext_host_port, s->nat_proto, s->out2in.fib_index,
@@ -1581,7 +1582,8 @@ nat44_ei_free_session_data (nat44_ei_main_t *nm, nat44_ei_session_t *s,
       nat_ipfix_logging_nat44_ses_delete (
 	thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
 	nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-	s->in2out.fib_index);
+	s->in2out.fib_index, s->ext_host_addr.as_u32,
+       	s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
       nat_ha_sdel (&s->out2in.addr, s->out2in.port, &s->ext_host_addr,
 		   s->ext_host_port, s->nat_proto, s->out2in.fib_index,
diff --git a/src/plugins/nat/nat44-ei/nat44_ei_in2out.c b/src/plugins/nat/nat44-ei/nat44_ei_in2out.c
index 2fbf2832d..747a18cb6 100644
--- a/src/plugins/nat/nat44-ei/nat44_ei_in2out.c
+++ b/src/plugins/nat/nat44-ei/nat44_ei_in2out.c
@@ -341,7 +341,8 @@ nat44_i2o_is_idle_session_cb (clib_bihash_kv_8_8_t * kv, void *arg)
       nat_ipfix_logging_nat44_ses_delete (
 	ctx->thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
 	nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-	s->in2out.fib_index);
+	s->in2out.fib_index, s->ext_host_addr.as_u32,
+       	s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
       nat_syslog_nat44_apmdel (s->user_index, s->in2out.fib_index,
 			       &s->in2out.addr, s->in2out.port,
@@ -496,7 +497,8 @@ slow_path (nat44_ei_main_t *nm, vlib_buffer_t *b0, ip4_header_t *ip0,
   nat_ipfix_logging_nat44_ses_create (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
     nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-    s->in2out.fib_index);
+    s->in2out.fib_index, s->ext_host_addr.as_u32,
+    s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
   nat_syslog_nat44_apmadd (s->user_index, s->in2out.fib_index, &s->in2out.addr,
 			   s->in2out.port, &s->out2in.addr, s->out2in.port,
diff --git a/src/plugins/nat/nat44-ei/nat44_ei_out2in.c b/src/plugins/nat/nat44-ei/nat44_ei_out2in.c
index 805a69628..4c2407fc5 100644
--- a/src/plugins/nat/nat44-ei/nat44_ei_out2in.c
+++ b/src/plugins/nat/nat44-ei/nat44_ei_out2in.c
@@ -116,7 +116,8 @@ nat44_o2i_is_idle_session_cb (clib_bihash_kv_8_8_t * kv, void *arg)
       nat_ipfix_logging_nat44_ses_delete (
 	ctx->thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
 	nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-	s->in2out.fib_index);
+	s->in2out.fib_index, s->ext_host_addr.as_u32,
+       	s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
       nat_syslog_nat44_apmdel (s->user_index, s->in2out.fib_index,
 			       &s->in2out.addr, s->in2out.port,
@@ -222,7 +223,8 @@ create_session_for_static_mapping (
   nat_ipfix_logging_nat44_ses_create (
     thread_index, s->in2out.addr.as_u32, s->out2in.addr.as_u32,
     nat_proto_to_ip_proto (s->nat_proto), s->in2out.port, s->out2in.port,
-    s->in2out.fib_index);
+    s->in2out.fib_index, s->ext_host_addr.as_u32,
+    s->ext_host_nat_addr.as_u32, s->ext_host_port, s->ext_host_nat_port);
 
   nat_syslog_nat44_apmadd (s->user_index, s->in2out.fib_index,
 			   &s->in2out.addr, s->in2out.port, &s->out2in.addr,
