summaryrefslogtreecommitdiffstats
path: root/nat/nat2vpp/src/main
AgeCommit message (Collapse)AuthorFilesLines
2019-05-27HC2VPP-411: remove deprecated interface-stateMichal Cmarada8-29/+29
- new ietf-interfaces obsoletes interfaces-state container, only interfaces container should be used from now on. Change-Id: Ifb24611a3dca987bdf6b029d32e01d9b1f479fe8 Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-05-24HC2VPP-411: Bump ietf-interfaces, ietf-ip, iana-if-types modelsMichal Cmarada12-28/+28
Change-Id: Ic042d96c9671729fd4f11efcd59c618a657d5bef Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-05-17fix flags and Tag in NAT implementationMichal Cmarada2-0/+5
- tag being null causes crashes when vpp API is called - null flags causes crashes, flags should be set at least to default value (0) Change-Id: If4e116212b1a85b312837830501ec226cec37bfa Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-05-06fix Nat implementation after API changes in VPPMichal Cmarada13-61/+99
Change-Id: Ibe8ead5a19119af9eb6b673f0713890ad5e243cb Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-04-08HC2VPP-406: fix build errors after ODL bump to neonMichal Cmarada6-34/+33
This fixes build issues after ODL bump in Honeycomb (HONEYCOMB-443). Change-Id: I3bf203dd60d12057595b15ce1ad59302dc14e2a0 Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-03-04HC2VPP-404: Update package names for JVPPMichal Cmarada28-69/+63
Fix package names for JVPP so it no longer contains vpp since it has been migrated outside of VPP project. Change-Id: I1e7a3fe4713beaaf7a1a0b41e7180d03bb7b74e5 Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-01-14HC2VPP-300: Unify namespaces of V3PO modelsMichal Cmarada6-18/+18
Change-Id: Ibf74c4c1ea159bfcbe1de8bef4dac9bde3cb9ffd Signed-off-by: Tibor Král <tibor.kral@pantheon.tech> Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-01-14HC2VPP-300: Unify namespaces of VPP-Common modelsTibor Král1-1/+1
Change-Id: If39a2f4d1db07a406c4552cc967f9308a2163d61 Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
2019-01-14HC2VPP-300: Unify namespaces of NAT modelsTibor Král21-68/+63
Change-Id: If535c40220b61b7ae3c8d4616395b1bad197e266 Signed-off-by: Tibor Král <tibor.kral@pantheon.tech>
2018-09-28Fix bugs after bumping to Fluorine ODL dependencies (HONEYCOMB-433)Michal Cmarada2-4/+4
Change-Id: I99b630f97144770849679a04efccaf7fc9868cb6 Signed-off-by: Michal Cmarada <michal.cmarada@pantheon.tech>
2018-08-23HC2VPP-379: move NAT validation code out of customizersMarek Gradzki11-88/+306
Use Validator interface introduced by HONEYCOMB-431: https://gerrit.fd.io/r/#/c/14022/ Change-Id: I9e4c8d59f299ed7da4a93bbdc70c81f2bea93606 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-07-04HC2VPP-367: update ietf-nat model from 2018-02-23 to 2018-06-28Marek Gradzki14-79/+79
The 2018-06-28 revision: - removes mandatory statement for limit-per-subscriber (previously commented out due to HC2VPP-328), - removes logging-enable leaf that was not supported by hc2vpp Change-Id: I36c2b05029331db03e37c016a31b32d6abf4ac06 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-05-31HC2VPP-325: use ip-prefix instead of ip-address in ietf-nat@2018-02-23.yangMarek Gradzki3-38/+46
Only /32 prefix for IPv4 and /128 for IPv6 are supported. Change-Id: I875b1eb6c2cb43da54de0a731aeeb9757b39c39c Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-05-17HC2VPP-320: ensure at most one policy is configured per NAT instanceMarek Gradzki2-2/+76
ReflexiveListReaderCustomizer is not used due to HONEYCOMB-437 Change-Id: I62755aaedd6e179b349ec47e4a304399c4fa18cd Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-05-17HC2VPP-322: ensure at most one nat64-prefix is configured per NAT instanceMarek Gradzki2-2/+5
Change-Id: Ic52b386475836e8f1a749cccaafe3bb4e192d0b7 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-05-17HC2VPP-321: bump nat model to ietf-nat@2018-02-23.yangMarek Gradzki13-258/+279
Uses ietf-nat module as defined in https://tools.ietf.org/html/draft-ietf-opsawg-nat-yang-14 Modifications to original model: - ip-address is used instead of ip-prefix (draft is not clear, see HC2VPP-325). API changes relevant to HC/VPP: - nat-config and nat-state merged into nat container - nat-instances and nat-instace renamed to instances and instance respectively - external-ip-address-pool has new parent - policy list - port-type choice was removed, port is now defined using start-port-number and end-port-number leaves. Missing end is equivalent to single-port-number case from the older version. TODOs: - HC2VPP-322: single nat64Prefix per NAT instance - HC2VPP-323: update postman collection - HC2VPP-324: update CSIT tests. Out of the scope of NAT model update: - HC2VPP-326: support for nat-type handling (vpp-nat model might become obsolete) - HC2VPP-327: support external-realm container (requires adding augmentations that are alredy present in the interface-nat model). Change-Id: Ie229a55b0a3f6ee3f8c97f4fd13c54a797a62438 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-05-11NAT: fix port readMarek Gradzki1-4/+4
Change-Id: I2aceb52f9c3bace7107f203ed717fe7d1c649328 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-04-20Forbid delete of default NAT instanceMarek Gradzki1-0/+7
NAT instances are mapped to VPP's VRFs. Default NAT instance (id=0) is mapped to default VRF, which is allways present in VPP. This patch forbids deleteion of default instance to be consistent with VPP behaviour and NAT instance reader implementation. Change-Id: I71aa6986395e4ba67baaa75d90905b450434aca4 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-19HC2VPP-289: fix 802dot1 identifiersMarek Gradzki6-18/+18
Indentity names should not start with number, so prefix them with '_'. Change-Id: Ic941410da4c5401a646be94679c82e7c5c96e646 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-11-30Remove dead stores and unused fieldsMarek Gradzki1-2/+0
Change-Id: I3ad4e1f1aae9ed52911acbed11d931349ad94da9 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-11-20Refactor IP translators to use IetfInetUtilMarek Gradzki1-1/+1
Use efficient factory methods for ietf-inet-types DTOs where possible. Also cleans up some duplicated and unused code. Change-Id: I58f4163edba0dcd30e5e044cf701788446d86a0f Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-28DumpCacheManager: make dumpParams optionalMarek Gradzki5-15/+15
Requires https://gerrit.fd.io/r/#/c/8185/ Change-Id: Ib2d529366bd3cf6bb292014026ab8053a19c0ed7 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-28HC2VPP-105: nat64 prefix readMarek Gradzki2-0/+151
Also updates NAT postman collection with nat64 prefix configuration examples Change-Id: I61cb12a2a91be92defccf55b82dc8658d185195f Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-28HC2VPP-105: nat64 prefix configurationMarek Gradzki2-0/+113
Change-Id: I205fb426ab9c0e47ef40b81c2f6dcd397524f1eb Signed-off-by: Marek Gradzki <mgradzki@cisco.com> Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-08-24HC2VPP-222: adapt hc2vpp to snat->nat plugin rename in vppMarek Gradzki26-217/+215
Change-Id: If4c7f2f1fc52f1ee64ed95900a362063207def27 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-21HC2VPP-105: add support for nat64 configuration on interfaceMarek Gradzki11-84/+205
Change-Id: I071f8981b680845ea031a9e61dfca7e34ea539e5 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-17HC2VPP-105: add support for NAT64 BIB entries readMarek Gradzki4-48/+227
Change-Id: Ic8e61a13cba8ae8e3e69f16985918451df239430 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-16HC2VPP-105: interface-nat.yang NAT64 supportMarek Gradzki14-41/+41
Change-Id: I22b391577e11bc33dbe03f643fe6968262f0712f Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-16HC2VPP-105: add support for nat64 pool readMarek Gradzki2-40/+72
Change-Id: If458e0b812435de5ae41af1bdbf53e2ffaf94e35 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-16HC2VPP-105: add support for nat64 pool configurationMarek Gradzki2-12/+45
Change-Id: I5e57b7855e081056ad0d675084209fc9cd4add23 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-16HONEYCOMB-386 - Hc2vpp Customizers updateJan Srnicek4-33/+0
Utilizes new default update implementation Change-Id: I9bf8473336274ba5fcfc18804f7b414937b3708e Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-08-14HONEYCOMB-381 - Usage of ShutdownHandler for jvpp componentsJan Srnicek1-10/+7
and notification producer Change-Id: I70e749de5b290c84e86a28625d5ec79c98de80f2 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-08-14HC2VPP-105: add support for NAT64 BIB entries configurationMarek Gradzki1-27/+83
No read support due to issues with nat64_bib_dump Change-Id: I851c4fc5084d6e29d622df2855cf8d47ba147015 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-02HC2VPP-197: translation layert for post routing NATMarek Gradzki12-197/+218
Change-Id: Icef6682fbc7a18a1e52953270ad26f6b3b7676eb Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-08-02HC2VPP-197: update interface-nat model to support post-routing NATMarek Gradzki12-39/+39
Change-Id: I009d790e21ff5019f94145e1aa1e08f87b6729ca Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-07-25HC2VPP-180 - Doc coverage generatorJan Srnicek1-2/+2
TODO - links to specific vpp api section(now points just to section with apis) TODO - links to specific java binding code(now points to class thats doing binding) TODO - operational coverage(ASM does not support lambda processing) TODO - generate coverage adoc links Change-Id: I44c85012da3bd2e7cdd41930753e5aae6955cd7b Signed-off-by: Jan Srnicek <jsrnicek@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-07-06HONEYCOMB-360 - Use binding-init module instead of whole distro coreMarek Gradzki1-1/+1
Change-Id: I86eb100ca96169c7cf8df7ba9f2a1c7e3e75d77f Signed-off-by: Jan Srnicek <jsrnicek@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-06-29HC2VPP-152: nat for sub-interfaces translation layerMarek Gradzki12-14/+569
Change-Id: I7d3a52097975f38c1cd74426d5ec15f80274a56c Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-05-16HC2VPP-145: fix snat mapping updateMarek Gradzki1-2/+2
Change-Id: I51e8a3e6d62b9c0dacf03d2148b813309fe0dfc4 Signed-off-by: Marek Gradzki <mgradzki@cisco.com> (cherry picked from commit 923dac1cedec9ad7a215d128d54eb77fd85562ae)
2017-02-23HC2VPP-80: add support for protcol configurationMarek Gradzki1-2/+9
Change-Id: I7ad92c7ba78da3fd1b42605f4f0987df83d41d9f Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-02-07Fix snat mapping creationMarek Gradzki1-0/+1
The https://gerrit.fd.io/r/#/c/4828/2 introduces external_sw_if_index. If given, external ip address is ignored. Hc2vpp needs to set external_sw_if_index to -1. Change-Id: I9631e52aebbf7e70eb5168aa646fb44d3b82ef85 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-11-24HON-3 - Address logic refactoringJan Srnicek3-13/+12
Ipv4/6 address logic refactored to not use InetAddresses.fromLittleEndianArray to prevent unnecessary reverting of address arrays after fix introduced by VPP-132. Removed unused ***reverted variants of conversion logic. Tested with these plugins - Lisp - V3po - Nat Change-Id: I6a0728f8b3dffd04e2edd822ec61542216cca824 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2016-11-24HONEYCOMB-289 - Type-aware read customizersJan Srnicek2-2/+5
Refactoring due to https://gerrit.fd.io/r/#/c/3898/ Change-Id: I3ddcc06aca0a730db9fd727a3d2b10cd085f870e Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2016-11-19Post split cleanupMaros Marsalek19-49/+49
- change groupIds - change packages - update poms Change-Id: I343c5a292a67de1dd50687870ca4ab5b7276e93e Signed-off-by: Maros Marsalek <mmarsale@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-11-08HONEYCOMB-270 Remove read (presence) workarounds for natMaros Marsalek3-116/+14
Change-Id: Ia0986dbe173123a4dca4f7f3bf65e7ba4851b1b7 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-03HONEYCOMB-259 Fix compilation issue in natMaros Marsalek1-1/+1
Change-Id: I22cb84d19cdf456f80359ef43988b2686f981d0b Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-03HONEYCOMB-259 - CacheKeyFactoryJan Srnicek4-17/+25
Provides logic for creating scoped keys Change-Id: I126bcb9255b4f8a3f2585f50e6e718948581e7f0 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2016-11-02HONEYCOMB-248 Enable in/out NAT feature readMaros Marsalek4-28/+318
Change-Id: I6fe57b955437d0b0024323bcbac268f0ed4799f6 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-10-28Honeycomb-73 Extensible initializers for natMaros Marsalek6-82/+65
Change-Id: Ic3f28ecf2a798a9ff084abb551f90bad516d3a13 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-10-17HONEYCOMB-249 Add External IP pool managementMaros Marsalek11-14/+269
Change-Id: I3e57b09733b8c7060445ed1af7a5edb3348dd4e1 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>