stop processing v6 when matching for nat64 session
This commit is contained in:
parent
677e50d81b
commit
7be9c01b48
2 changed files with 23 additions and 6 deletions
13
doc/plan.org
13
doc/plan.org
|
@ -1873,6 +1873,19 @@ libnanomsg-dev libjudy-dev
|
||||||
***** DONE Create ipv6 session in the controller
|
***** DONE Create ipv6 session in the controller
|
||||||
***** Create ipv4 session in the controller
|
***** Create ipv4 session in the controller
|
||||||
***** TODO Ensure translation code works
|
***** TODO Ensure translation code works
|
||||||
|
>>> ipaddress.IPv6Network("2001:db8:100::/96")[int(ipaddress.IPv4Address("10.0.0.1"))]
|
||||||
|
IPv6Address('2001:db8:100::a00:1')
|
||||||
|
|
||||||
|
****** DONE Status: syn sent, neighbor solicitation working, nothing received on other side
|
||||||
|
|
||||||
|
INFO:main:unhandled reassambled=<Ether dst=33:33:ff:00:00:42 src=00:00:0a:00:00:01 type=0x86dd |<IPv6 version=6 tc=0 fl=0 plen=32 nh=ICMPv6 hlim=255 src=2001:db8::1 dst=ff02::1:ff00:42 |<ICMPv6ND_NS type=Neighbor Solicitation code=0 cksum=0x13a7 res=0 tgt=2001:db8::42 |<ICMPv6NDOptSrcLLAddr type=1 len=1 lladdr=00:00:0a:00:00:01 |>>>> from table TABLE_NAT64_SESSION
|
||||||
|
INFO:main:unhandled reassambled=<Ether dst=00:00:0a:00:00:42 src=00:00:0a:00:00:01 type=0x86dd |<IPv6 version=6 tc=0 fl=667225 plen=40 nh=TCP hlim=64 src=2001:db8::1 dst=2001:db8:100::a00:1 |<TCP sport=36458 dport=2342 seq=1287954527 ack=0 dataofs=10 reserved=0 flags=S window=28320 chksum=0xdfd6 urgptr=0 options=[('MSS', 9440), ('SAckOK', ''), ('Timestamp', (795131854, 0)), ('NOP', None), ('WScale', 9)] |>>> from table TABLE_V6_NETWORKS
|
||||||
|
INFO:main:unhandled reassambled=<Ether dst=00:00:0a:00:00:42 src=00:00:0a:00:00:01 type=0x86dd |<IPv6 version=6 tc=0 fl=667225 plen=40 nh=TCP hlim=64 src=2001:db8::1 dst=2001:db8:100::a00:1 |<TCP sport=36458 dport=2342 seq=1287954527 ack=0 dataofs=10 reserved=0 flags=S window=28320 chksum=0xdedc urgptr=0 options=[('MSS', 9440), ('SAckOK', ''), ('Timestamp', (795132104, 0)), ('NOP', None), ('WScale', 9)] |>>> from table TABLE_V6_NETWORKS
|
||||||
|
INFO:main:unhandled reassambled=<Ether dst=00:00:0a:00:00:42 src=00:00:0a:00:00:01 type=0x86dd |<IPv6 version=6 tc=0 fl=765494 plen=40 nh=TCP hlim=64 src=2001:db8::1 dst=2001:db8:100::a00:1 |<TCP sport=36458 dport=2342 seq=1287954527 ack=0 dataofs=10 reserved=0 flags=S window=28320 chksum=0xdce7 urgptr=0 options=[('MSS', 9440), ('SAckOK', ''), ('Timestamp', (795132605, 0)), ('NOP', None), ('WScale', 9)] |>>> from table TABLE_V6_NETWORKS
|
||||||
|
|
||||||
|
****** DONE action nat64_tcp_session_create is called
|
||||||
|
|
||||||
|
|
||||||
**** TODO tcp session
|
**** TODO tcp session
|
||||||
**** TODO udp session
|
**** TODO udp session
|
||||||
**** TODO tcp session
|
**** TODO tcp session
|
||||||
|
|
|
@ -499,6 +499,7 @@ Echo or Echo Reply Message
|
||||||
NoAction;
|
NoAction;
|
||||||
}
|
}
|
||||||
size = ROUTING_TABLE_SIZE;
|
size = ROUTING_TABLE_SIZE;
|
||||||
|
|
||||||
default_action = controller_debug_table_id(TABLE_V6_NETWORKS);
|
default_action = controller_debug_table_id(TABLE_V6_NETWORKS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -522,6 +523,11 @@ Echo or Echo Reply Message
|
||||||
if(hdr.ipv6.isValid()) {
|
if(hdr.ipv6.isValid()) {
|
||||||
/* We hit an entry in the dynamic IPv6 range */
|
/* We hit an entry in the dynamic IPv6 range */
|
||||||
if(nat64_session.apply().hit) {
|
if(nat64_session.apply().hit) {
|
||||||
|
if(hdr.tcp.isValid()) {
|
||||||
|
if(nat64_tcp_session.apply().hit) {
|
||||||
|
meta.chk_tcp_v4 = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
// if(hdr.icmp6.isValid()) {
|
// if(hdr.icmp6.isValid()) {
|
||||||
// /* If this is not a hit => will escalate to controller
|
// /* If this is not a hit => will escalate to controller
|
||||||
// * If this is a hit, it has a mapping */
|
// * If this is a hit, it has a mapping */
|
||||||
|
@ -531,11 +537,9 @@ Echo or Echo Reply Message
|
||||||
// nat64_udp_session.apply();
|
// nat64_udp_session.apply();
|
||||||
// meta.chk_udp_v4 = 1;
|
// meta.chk_udp_v4 = 1;
|
||||||
// }
|
// }
|
||||||
if(hdr.tcp.isValid()) {
|
|
||||||
if(nat64_tcp_session.apply().hit) {
|
|
||||||
meta.chk_tcp_v4 = 1;
|
exit; /* no further v6 processing */
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(nat64.apply().hit) { /* generic / static nat64 done */
|
if(nat64.apply().hit) { /* generic / static nat64 done */
|
||||||
|
|
Loading…
Reference in a new issue