[NETVIRT-695] Issue in SNAT,DNAT communication - OCATA. Created: 29/May/17 Updated: 17/Jun/17 Resolved: 17/Jun/17 |
|
| Status: | Resolved |
| Project: | netvirt |
| Component/s: | General |
| Affects Version/s: | Carbon |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | YOGA LAKSHMI SWETHA PAYYAVULA | Assignee: | Karthikeyan Krishnan |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| Attachments: |
|
| External issue ID: | 8557 |
| Description |
|
Set-up used : Allinone node - Ocata devstack One ODL with carbon version distro: The below is the settings in Local.conf : SERVICE_HOST=$HOST_IP
LOGFILE=stack.sh.log enable_plugin networking-odl https://github.com/openstack/networking-odl stable/ocata ENABLE_TENANT_TUNNELS=True ODL_PORT=8080 LIBVIRT_TYPE=qemu MYSQL_PASSWORD=mysql LIBVIRT_TYPE=qemu ODL_V2DRIVER=True PUBLIC_INTERFACE=ens35 [[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]] [[post-config|/etc/neutron/dhcp_agent.ini]] disable_service q-l3 [DEFAULT] Steps to reproduce the bug : After stacking the devstack successfully, external network neutron -v net-create public --router:external --provider:network_type=flat --provider:physical_network=datacenter external network subnet: neutron -v subnet-create public 11.12.13.0/24 --name external-subnet --gateway 11.12.13.250 --allocation-pool start=11.12.13.2,end=11.12.13.249 Then create the internal network and router in GUI. Create the floating ip Now create a vm for the internal network and associate the floating ip to the vm. Then from the VM instance ping or ssh the external network instance – SNAT scenario failed Then from the external instance ping or ssh to the internal network vm – DNAT scenario failed |
| Comments |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 29/May/17 ] |
|
I also added the br-ex bridge and added a port to it, while creating the networks the patch port was created as shown below : [stack@localhost devstack]$ sudo ovs-vsctl show Bridge br-ex Port "ens35" |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
Please find the attachment for the dump flows and the odl log details |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
Attachment 8557_Bug logs.zip has been added with description: log info |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
attached the dump flows |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
Attachment dump for snat and dnat.zip has been added with description: adding the dump flows |
| Comment by Karthikeyan Krishnan [ 01/Jun/17 ] |
|
Hi Lakshmi, Request to collect below required log/dump outputs for further analyze the issue. (1) NAT TRACE Enable: (2) Please capture the following outputs before and after NAT traffic. OVS Dump flows and Groups: (3) Please collect the following REST API call output http://localhost:8181/restconf/config/odl-nat:external-networks/ Thanks & Regards, |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
attached the trace enabled logs and the dump flows |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 01/Jun/17 ] |
|
Attachment NAT_logs.zip has been added with description: adding the dump flows |
| Comment by Karthikeyan Krishnan [ 05/Jun/17 ] |
|
Working on this issue. |
| Comment by Karthikeyan Krishnan [ 06/Jun/17 ] |
|
Please refer the below code review for having fix for DNAT failure in Stable/Ocata |
| Comment by Karthikeyan Krishnan [ 07/Jun/17 ] |
|
Hi Swetha, DNAT: SNAT: Sample Output: { ] Latest ODL-Master Distribution: |
| Comment by Karthikeyan Krishnan [ 15/Jun/17 ] |
|
Hi Swetha, Still we are seeing problem with external-gateway IP (11.12.13.250) is not learnt by ARP. As a result in L3_FIB_TABLE (21) flow is missing to reach external gateway. Example flow: (100.100.100.1 IP is external gateway in our tested topology) We are not seeing any issue with SNAT flows as it was programming properly as expected (as per the shared logs) cookie=0x8000004, duration=486.053s, table=21, n_packets=7, n_bytes=518, priority=10,ip,metadata=0x30d52/0xfffffe actions=goto_table:26 To debug further, please do packet capture on interface “ens35” while performing external router-gw set (neutron router-gateway-set <ROUTER_NAME> <EXT_NET_NAME> --enable-snat) you should able to see ARP broadcast request and response from the external gateway. Please refer the below example snapshot for your reference. Example Packet-Captured (100.100.100.106 is the external fixed IP used for SNAT and 100.100.100.1 is external gateway IP for tested our topology) Also request to set the below few more modules log level as “TRACE” before doing SNAT configuration. log:set TRACE org.opendaylight.netvirt.natservice.internal Kindly share the log information as you shared earlier after re-testing SNAT. |
| Comment by Karthikeyan Krishnan [ 15/Jun/17 ] |
|
Attachment Example_ARP_Request_Response.jpg has been added with description: Example Packet-Captured for ARP Request and Response |
| Comment by Karthikeyan Krishnan [ 16/Jun/17 ] |
|
Hi Swetha, We do have CSIT job for SNAT/DNAT UC's running with openstack-Ocata in Carbon distribution.we are not seeing any issue in SNAT/DNAT traffic (TCP/UDP) is getting failed. Please refer the below link for your reference. Thanks, |
| Comment by YOGA LAKSHMI SWETHA PAYYAVULA [ 17/Jun/17 ] |
|
We tested again, SNAT and DNAT is working, due to some network issues the external flows were not learnt by ARP. |