go.ligato.io/vpp-agent/v3@v3.5.0/proto/ligato/vpp/nat/nat.pb.go (about) 1 // Code generated by protoc-gen-go. DO NOT EDIT. 2 // versions: 3 // protoc-gen-go v1.27.1 4 // protoc v3.17.3 5 // source: ligato/vpp/nat/nat.proto 6 7 package vpp_nat 8 9 import ( 10 _ "go.ligato.io/vpp-agent/v3/proto/ligato" 11 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 12 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 13 reflect "reflect" 14 sync "sync" 15 ) 16 17 const ( 18 // Verify that this generated code is sufficiently up-to-date. 19 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 20 // Verify that runtime/protoimpl is sufficiently up-to-date. 21 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 22 ) 23 24 // Available protocols. 25 type DNat44_Protocol int32 26 27 const ( 28 DNat44_TCP DNat44_Protocol = 0 29 DNat44_UDP DNat44_Protocol = 1 30 // ICMP is not permitted for load balanced entries. 31 DNat44_ICMP DNat44_Protocol = 2 32 ) 33 34 // Enum value maps for DNat44_Protocol. 35 var ( 36 DNat44_Protocol_name = map[int32]string{ 37 0: "TCP", 38 1: "UDP", 39 2: "ICMP", 40 } 41 DNat44_Protocol_value = map[string]int32{ 42 "TCP": 0, 43 "UDP": 1, 44 "ICMP": 2, 45 } 46 ) 47 48 func (x DNat44_Protocol) Enum() *DNat44_Protocol { 49 p := new(DNat44_Protocol) 50 *p = x 51 return p 52 } 53 54 func (x DNat44_Protocol) String() string { 55 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 56 } 57 58 func (DNat44_Protocol) Descriptor() protoreflect.EnumDescriptor { 59 return file_ligato_vpp_nat_nat_proto_enumTypes[0].Descriptor() 60 } 61 62 func (DNat44_Protocol) Type() protoreflect.EnumType { 63 return &file_ligato_vpp_nat_nat_proto_enumTypes[0] 64 } 65 66 func (x DNat44_Protocol) Number() protoreflect.EnumNumber { 67 return protoreflect.EnumNumber(x) 68 } 69 70 // Deprecated: Use DNat44_Protocol.Descriptor instead. 71 func (DNat44_Protocol) EnumDescriptor() ([]byte, []int) { 72 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1, 0} 73 } 74 75 // Available twice-NAT modes. 76 type DNat44_StaticMapping_TwiceNatMode int32 77 78 const ( 79 DNat44_StaticMapping_DISABLED DNat44_StaticMapping_TwiceNatMode = 0 80 DNat44_StaticMapping_ENABLED DNat44_StaticMapping_TwiceNatMode = 1 81 DNat44_StaticMapping_SELF DNat44_StaticMapping_TwiceNatMode = 2 82 ) 83 84 // Enum value maps for DNat44_StaticMapping_TwiceNatMode. 85 var ( 86 DNat44_StaticMapping_TwiceNatMode_name = map[int32]string{ 87 0: "DISABLED", 88 1: "ENABLED", 89 2: "SELF", 90 } 91 DNat44_StaticMapping_TwiceNatMode_value = map[string]int32{ 92 "DISABLED": 0, 93 "ENABLED": 1, 94 "SELF": 2, 95 } 96 ) 97 98 func (x DNat44_StaticMapping_TwiceNatMode) Enum() *DNat44_StaticMapping_TwiceNatMode { 99 p := new(DNat44_StaticMapping_TwiceNatMode) 100 *p = x 101 return p 102 } 103 104 func (x DNat44_StaticMapping_TwiceNatMode) String() string { 105 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 106 } 107 108 func (DNat44_StaticMapping_TwiceNatMode) Descriptor() protoreflect.EnumDescriptor { 109 return file_ligato_vpp_nat_nat_proto_enumTypes[1].Descriptor() 110 } 111 112 func (DNat44_StaticMapping_TwiceNatMode) Type() protoreflect.EnumType { 113 return &file_ligato_vpp_nat_nat_proto_enumTypes[1] 114 } 115 116 func (x DNat44_StaticMapping_TwiceNatMode) Number() protoreflect.EnumNumber { 117 return protoreflect.EnumNumber(x) 118 } 119 120 // Deprecated: Use DNat44_StaticMapping_TwiceNatMode.Descriptor instead. 121 func (DNat44_StaticMapping_TwiceNatMode) EnumDescriptor() ([]byte, []int) { 122 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1, 0, 0} 123 } 124 125 // Nat44Global defines global NAT44 configuration. 126 // In VPP version 21.01 and newer the NAT44 plugin has to be explicitly enabled (by default it is 127 // disabled so that it doesn't consume any computational resources). With ligato control-plane 128 // the NAT44 plugin is enabled by submitting the NAT44Global configuration (even default values 129 // will make the plugin enabled). Without Nat44Global, all other NAT44 configuration items 130 // (DNat44, Nat44Interface and Nat44AddressPool) will be in the PENDING state. 131 type Nat44Global struct { 132 state protoimpl.MessageState 133 sizeCache protoimpl.SizeCache 134 unknownFields protoimpl.UnknownFields 135 136 // Enable/disable forwarding. By default it is disabled. 137 Forwarding bool `protobuf:"varint,1,opt,name=forwarding,proto3" json:"forwarding,omitempty"` 138 // Enable/disable endpoint-independent mode. 139 // In endpoint-independent (also known as "simple") mode the VPP NAT plugin holds 140 // less information for each session, but only works with outbound NAT and static mappings. 141 // In endpoint-dependent mode, which ligato selects as the default, the VPP NAT plugin uses 142 // more information to track each session, which in turn enables additional features 143 // such as out-to-in-only and twice-nat. 144 // In older versions of VPP (<= 20.09) this field is ignored because mode at which the NAT44 plugin 145 // operates is given by the VPP startup configuration file (i.e. config created before VPP even starts, 146 // therefore not managed by ligato). The endpoint-independent mode is the default and the dependent mode 147 // is turned on with this config stanza (included in vpp.conf used by ligato for older VPPs): 148 // nat { 149 // endpoint-dependent 150 // } 151 EndpointIndependent bool `protobuf:"varint,5,opt,name=endpoint_independent,json=endpointIndependent,proto3" json:"endpoint_independent,omitempty"` 152 // List of NAT-enabled interfaces. Deprecated - use separate Nat44Interface entries instead. 153 // 154 // Deprecated: Do not use. 155 NatInterfaces []*Nat44Global_Interface `protobuf:"bytes,2,rep,name=nat_interfaces,json=natInterfaces,proto3" json:"nat_interfaces,omitempty"` 156 // Address pool used for source IP NAT. Deprecated - use separate Nat44AddressPool entries instead. 157 // 158 // Deprecated: Do not use. 159 AddressPool []*Nat44Global_Address `protobuf:"bytes,3,rep,name=address_pool,json=addressPool,proto3" json:"address_pool,omitempty"` 160 // Virtual reassembly for IPv4. 161 VirtualReassembly *VirtualReassembly `protobuf:"bytes,4,opt,name=virtual_reassembly,json=virtualReassembly,proto3" json:"virtual_reassembly,omitempty"` 162 } 163 164 func (x *Nat44Global) Reset() { 165 *x = Nat44Global{} 166 if protoimpl.UnsafeEnabled { 167 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[0] 168 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 169 ms.StoreMessageInfo(mi) 170 } 171 } 172 173 func (x *Nat44Global) String() string { 174 return protoimpl.X.MessageStringOf(x) 175 } 176 177 func (*Nat44Global) ProtoMessage() {} 178 179 func (x *Nat44Global) ProtoReflect() protoreflect.Message { 180 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[0] 181 if protoimpl.UnsafeEnabled && x != nil { 182 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 183 if ms.LoadMessageInfo() == nil { 184 ms.StoreMessageInfo(mi) 185 } 186 return ms 187 } 188 return mi.MessageOf(x) 189 } 190 191 // Deprecated: Use Nat44Global.ProtoReflect.Descriptor instead. 192 func (*Nat44Global) Descriptor() ([]byte, []int) { 193 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{0} 194 } 195 196 func (x *Nat44Global) GetForwarding() bool { 197 if x != nil { 198 return x.Forwarding 199 } 200 return false 201 } 202 203 func (x *Nat44Global) GetEndpointIndependent() bool { 204 if x != nil { 205 return x.EndpointIndependent 206 } 207 return false 208 } 209 210 // Deprecated: Do not use. 211 func (x *Nat44Global) GetNatInterfaces() []*Nat44Global_Interface { 212 if x != nil { 213 return x.NatInterfaces 214 } 215 return nil 216 } 217 218 // Deprecated: Do not use. 219 func (x *Nat44Global) GetAddressPool() []*Nat44Global_Address { 220 if x != nil { 221 return x.AddressPool 222 } 223 return nil 224 } 225 226 func (x *Nat44Global) GetVirtualReassembly() *VirtualReassembly { 227 if x != nil { 228 return x.VirtualReassembly 229 } 230 return nil 231 } 232 233 // DNat44 defines destination NAT44 configuration. 234 type DNat44 struct { 235 state protoimpl.MessageState 236 sizeCache protoimpl.SizeCache 237 unknownFields protoimpl.UnknownFields 238 239 // Unique identifier for the DNAT configuration. 240 Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"` 241 // A list of static mappings in DNAT. 242 StMappings []*DNat44_StaticMapping `protobuf:"bytes,2,rep,name=st_mappings,json=stMappings,proto3" json:"st_mappings,omitempty"` 243 // A list of identity mappings in DNAT. 244 IdMappings []*DNat44_IdentityMapping `protobuf:"bytes,3,rep,name=id_mappings,json=idMappings,proto3" json:"id_mappings,omitempty"` 245 } 246 247 func (x *DNat44) Reset() { 248 *x = DNat44{} 249 if protoimpl.UnsafeEnabled { 250 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[1] 251 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 252 ms.StoreMessageInfo(mi) 253 } 254 } 255 256 func (x *DNat44) String() string { 257 return protoimpl.X.MessageStringOf(x) 258 } 259 260 func (*DNat44) ProtoMessage() {} 261 262 func (x *DNat44) ProtoReflect() protoreflect.Message { 263 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[1] 264 if protoimpl.UnsafeEnabled && x != nil { 265 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 266 if ms.LoadMessageInfo() == nil { 267 ms.StoreMessageInfo(mi) 268 } 269 return ms 270 } 271 return mi.MessageOf(x) 272 } 273 274 // Deprecated: Use DNat44.ProtoReflect.Descriptor instead. 275 func (*DNat44) Descriptor() ([]byte, []int) { 276 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1} 277 } 278 279 func (x *DNat44) GetLabel() string { 280 if x != nil { 281 return x.Label 282 } 283 return "" 284 } 285 286 func (x *DNat44) GetStMappings() []*DNat44_StaticMapping { 287 if x != nil { 288 return x.StMappings 289 } 290 return nil 291 } 292 293 func (x *DNat44) GetIdMappings() []*DNat44_IdentityMapping { 294 if x != nil { 295 return x.IdMappings 296 } 297 return nil 298 } 299 300 // Nat44Interface defines a local network interfaces enabled for NAT44. 301 type Nat44Interface struct { 302 state protoimpl.MessageState 303 sizeCache protoimpl.SizeCache 304 unknownFields protoimpl.UnknownFields 305 306 // Interface name (logical). 307 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 308 // Enable/disable NAT on inside. 309 NatInside bool `protobuf:"varint,2,opt,name=nat_inside,json=natInside,proto3" json:"nat_inside,omitempty"` 310 // Enable/disable NAT on outside. 311 NatOutside bool `protobuf:"varint,3,opt,name=nat_outside,json=natOutside,proto3" json:"nat_outside,omitempty"` 312 // Enable/disable output feature. 313 OutputFeature bool `protobuf:"varint,4,opt,name=output_feature,json=outputFeature,proto3" json:"output_feature,omitempty"` 314 } 315 316 func (x *Nat44Interface) Reset() { 317 *x = Nat44Interface{} 318 if protoimpl.UnsafeEnabled { 319 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[2] 320 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 321 ms.StoreMessageInfo(mi) 322 } 323 } 324 325 func (x *Nat44Interface) String() string { 326 return protoimpl.X.MessageStringOf(x) 327 } 328 329 func (*Nat44Interface) ProtoMessage() {} 330 331 func (x *Nat44Interface) ProtoReflect() protoreflect.Message { 332 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[2] 333 if protoimpl.UnsafeEnabled && x != nil { 334 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 335 if ms.LoadMessageInfo() == nil { 336 ms.StoreMessageInfo(mi) 337 } 338 return ms 339 } 340 return mi.MessageOf(x) 341 } 342 343 // Deprecated: Use Nat44Interface.ProtoReflect.Descriptor instead. 344 func (*Nat44Interface) Descriptor() ([]byte, []int) { 345 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{2} 346 } 347 348 func (x *Nat44Interface) GetName() string { 349 if x != nil { 350 return x.Name 351 } 352 return "" 353 } 354 355 func (x *Nat44Interface) GetNatInside() bool { 356 if x != nil { 357 return x.NatInside 358 } 359 return false 360 } 361 362 func (x *Nat44Interface) GetNatOutside() bool { 363 if x != nil { 364 return x.NatOutside 365 } 366 return false 367 } 368 369 func (x *Nat44Interface) GetOutputFeature() bool { 370 if x != nil { 371 return x.OutputFeature 372 } 373 return false 374 } 375 376 // Nat44AddressPool defines an address pool used for NAT44. 377 type Nat44AddressPool struct { 378 state protoimpl.MessageState 379 sizeCache protoimpl.SizeCache 380 unknownFields protoimpl.UnknownFields 381 382 // Unique name for address pool 383 Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` 384 // VRF id of tenant, 0xFFFFFFFF means independent of VRF. 385 // Non-zero (and not all-ones) VRF has to be explicitly created (see api/models/vpp/l3/vrf.proto). 386 VrfId uint32 `protobuf:"varint,1,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 387 // First IP address of the pool. 388 FirstIp string `protobuf:"bytes,2,opt,name=first_ip,json=firstIp,proto3" json:"first_ip,omitempty"` 389 // Last IP address of the pool. Should be higher than first_ip or empty. 390 LastIp string `protobuf:"bytes,3,opt,name=last_ip,json=lastIp,proto3" json:"last_ip,omitempty"` 391 // Enable/disable twice NAT. 392 TwiceNat bool `protobuf:"varint,4,opt,name=twice_nat,json=twiceNat,proto3" json:"twice_nat,omitempty"` 393 } 394 395 func (x *Nat44AddressPool) Reset() { 396 *x = Nat44AddressPool{} 397 if protoimpl.UnsafeEnabled { 398 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[3] 399 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 400 ms.StoreMessageInfo(mi) 401 } 402 } 403 404 func (x *Nat44AddressPool) String() string { 405 return protoimpl.X.MessageStringOf(x) 406 } 407 408 func (*Nat44AddressPool) ProtoMessage() {} 409 410 func (x *Nat44AddressPool) ProtoReflect() protoreflect.Message { 411 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[3] 412 if protoimpl.UnsafeEnabled && x != nil { 413 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 414 if ms.LoadMessageInfo() == nil { 415 ms.StoreMessageInfo(mi) 416 } 417 return ms 418 } 419 return mi.MessageOf(x) 420 } 421 422 // Deprecated: Use Nat44AddressPool.ProtoReflect.Descriptor instead. 423 func (*Nat44AddressPool) Descriptor() ([]byte, []int) { 424 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{3} 425 } 426 427 func (x *Nat44AddressPool) GetName() string { 428 if x != nil { 429 return x.Name 430 } 431 return "" 432 } 433 434 func (x *Nat44AddressPool) GetVrfId() uint32 { 435 if x != nil { 436 return x.VrfId 437 } 438 return 0 439 } 440 441 func (x *Nat44AddressPool) GetFirstIp() string { 442 if x != nil { 443 return x.FirstIp 444 } 445 return "" 446 } 447 448 func (x *Nat44AddressPool) GetLastIp() string { 449 if x != nil { 450 return x.LastIp 451 } 452 return "" 453 } 454 455 func (x *Nat44AddressPool) GetTwiceNat() bool { 456 if x != nil { 457 return x.TwiceNat 458 } 459 return false 460 } 461 462 // VirtualReassembly defines NAT virtual reassembly settings. 463 type VirtualReassembly struct { 464 state protoimpl.MessageState 465 sizeCache protoimpl.SizeCache 466 unknownFields protoimpl.UnknownFields 467 468 // Reassembly timeout. 469 Timeout uint32 `protobuf:"varint,1,opt,name=timeout,proto3" json:"timeout,omitempty"` 470 // Maximum number of concurrent reassemblies. 471 MaxReassemblies uint32 `protobuf:"varint,2,opt,name=max_reassemblies,json=maxReassemblies,proto3" json:"max_reassemblies,omitempty"` 472 // Maximum number of fragments per reassembly. 473 MaxFragments uint32 `protobuf:"varint,3,opt,name=max_fragments,json=maxFragments,proto3" json:"max_fragments,omitempty"` 474 // If set to true fragments are dropped, translated otherwise. 475 DropFragments bool `protobuf:"varint,4,opt,name=drop_fragments,json=dropFragments,proto3" json:"drop_fragments,omitempty"` 476 } 477 478 func (x *VirtualReassembly) Reset() { 479 *x = VirtualReassembly{} 480 if protoimpl.UnsafeEnabled { 481 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[4] 482 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 483 ms.StoreMessageInfo(mi) 484 } 485 } 486 487 func (x *VirtualReassembly) String() string { 488 return protoimpl.X.MessageStringOf(x) 489 } 490 491 func (*VirtualReassembly) ProtoMessage() {} 492 493 func (x *VirtualReassembly) ProtoReflect() protoreflect.Message { 494 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[4] 495 if protoimpl.UnsafeEnabled && x != nil { 496 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 497 if ms.LoadMessageInfo() == nil { 498 ms.StoreMessageInfo(mi) 499 } 500 return ms 501 } 502 return mi.MessageOf(x) 503 } 504 505 // Deprecated: Use VirtualReassembly.ProtoReflect.Descriptor instead. 506 func (*VirtualReassembly) Descriptor() ([]byte, []int) { 507 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{4} 508 } 509 510 func (x *VirtualReassembly) GetTimeout() uint32 { 511 if x != nil { 512 return x.Timeout 513 } 514 return 0 515 } 516 517 func (x *VirtualReassembly) GetMaxReassemblies() uint32 { 518 if x != nil { 519 return x.MaxReassemblies 520 } 521 return 0 522 } 523 524 func (x *VirtualReassembly) GetMaxFragments() uint32 { 525 if x != nil { 526 return x.MaxFragments 527 } 528 return 0 529 } 530 531 func (x *VirtualReassembly) GetDropFragments() bool { 532 if x != nil { 533 return x.DropFragments 534 } 535 return false 536 } 537 538 // Interface defines a network interface enabled for NAT. 539 type Nat44Global_Interface struct { 540 state protoimpl.MessageState 541 sizeCache protoimpl.SizeCache 542 unknownFields protoimpl.UnknownFields 543 544 // Interface name (logical). 545 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 546 // Distinguish between inside/outside interface. 547 IsInside bool `protobuf:"varint,2,opt,name=is_inside,json=isInside,proto3" json:"is_inside,omitempty"` 548 // Enable/disable output feature. 549 OutputFeature bool `protobuf:"varint,3,opt,name=output_feature,json=outputFeature,proto3" json:"output_feature,omitempty"` 550 } 551 552 func (x *Nat44Global_Interface) Reset() { 553 *x = Nat44Global_Interface{} 554 if protoimpl.UnsafeEnabled { 555 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[5] 556 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 557 ms.StoreMessageInfo(mi) 558 } 559 } 560 561 func (x *Nat44Global_Interface) String() string { 562 return protoimpl.X.MessageStringOf(x) 563 } 564 565 func (*Nat44Global_Interface) ProtoMessage() {} 566 567 func (x *Nat44Global_Interface) ProtoReflect() protoreflect.Message { 568 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[5] 569 if protoimpl.UnsafeEnabled && x != nil { 570 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 571 if ms.LoadMessageInfo() == nil { 572 ms.StoreMessageInfo(mi) 573 } 574 return ms 575 } 576 return mi.MessageOf(x) 577 } 578 579 // Deprecated: Use Nat44Global_Interface.ProtoReflect.Descriptor instead. 580 func (*Nat44Global_Interface) Descriptor() ([]byte, []int) { 581 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{0, 0} 582 } 583 584 func (x *Nat44Global_Interface) GetName() string { 585 if x != nil { 586 return x.Name 587 } 588 return "" 589 } 590 591 func (x *Nat44Global_Interface) GetIsInside() bool { 592 if x != nil { 593 return x.IsInside 594 } 595 return false 596 } 597 598 func (x *Nat44Global_Interface) GetOutputFeature() bool { 599 if x != nil { 600 return x.OutputFeature 601 } 602 return false 603 } 604 605 // Address defines an address to be used for source IP NAT. 606 type Nat44Global_Address struct { 607 state protoimpl.MessageState 608 sizeCache protoimpl.SizeCache 609 unknownFields protoimpl.UnknownFields 610 611 // IPv4 address. 612 Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` 613 // VRF id of tenant, 0xFFFFFFFF means independent of VRF. 614 // Non-zero (and not all-ones) VRF has to be explicitly created (see api/models/vpp/l3/vrf.proto). 615 VrfId uint32 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 616 // Enable/disable twice NAT. 617 TwiceNat bool `protobuf:"varint,3,opt,name=twice_nat,json=twiceNat,proto3" json:"twice_nat,omitempty"` 618 } 619 620 func (x *Nat44Global_Address) Reset() { 621 *x = Nat44Global_Address{} 622 if protoimpl.UnsafeEnabled { 623 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[6] 624 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 625 ms.StoreMessageInfo(mi) 626 } 627 } 628 629 func (x *Nat44Global_Address) String() string { 630 return protoimpl.X.MessageStringOf(x) 631 } 632 633 func (*Nat44Global_Address) ProtoMessage() {} 634 635 func (x *Nat44Global_Address) ProtoReflect() protoreflect.Message { 636 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[6] 637 if protoimpl.UnsafeEnabled && x != nil { 638 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 639 if ms.LoadMessageInfo() == nil { 640 ms.StoreMessageInfo(mi) 641 } 642 return ms 643 } 644 return mi.MessageOf(x) 645 } 646 647 // Deprecated: Use Nat44Global_Address.ProtoReflect.Descriptor instead. 648 func (*Nat44Global_Address) Descriptor() ([]byte, []int) { 649 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{0, 1} 650 } 651 652 func (x *Nat44Global_Address) GetAddress() string { 653 if x != nil { 654 return x.Address 655 } 656 return "" 657 } 658 659 func (x *Nat44Global_Address) GetVrfId() uint32 { 660 if x != nil { 661 return x.VrfId 662 } 663 return 0 664 } 665 666 func (x *Nat44Global_Address) GetTwiceNat() bool { 667 if x != nil { 668 return x.TwiceNat 669 } 670 return false 671 } 672 673 // StaticMapping defines a list of static mappings in DNAT. 674 type DNat44_StaticMapping struct { 675 state protoimpl.MessageState 676 sizeCache protoimpl.SizeCache 677 unknownFields protoimpl.UnknownFields 678 679 // Interface to use external IP from; preferred over external_ip. 680 ExternalInterface string `protobuf:"bytes,1,opt,name=external_interface,json=externalInterface,proto3" json:"external_interface,omitempty"` 681 // External address. 682 ExternalIp string `protobuf:"bytes,2,opt,name=external_ip,json=externalIp,proto3" json:"external_ip,omitempty"` 683 // Port (do not set for address mapping). 684 ExternalPort uint32 `protobuf:"varint,3,opt,name=external_port,json=externalPort,proto3" json:"external_port,omitempty"` 685 // List of local IP addresses. If there is more than one entry, load-balancing is enabled. 686 LocalIps []*DNat44_StaticMapping_LocalIP `protobuf:"bytes,4,rep,name=local_ips,json=localIps,proto3" json:"local_ips,omitempty"` 687 // Protocol used for static mapping. 688 Protocol DNat44_Protocol `protobuf:"varint,5,opt,name=protocol,proto3,enum=ligato.vpp.nat.DNat44_Protocol" json:"protocol,omitempty"` 689 // Enable/disable (self-)twice NAT. 690 TwiceNat DNat44_StaticMapping_TwiceNatMode `protobuf:"varint,6,opt,name=twice_nat,json=twiceNat,proto3,enum=ligato.vpp.nat.DNat44_StaticMapping_TwiceNatMode" json:"twice_nat,omitempty"` 691 // IP address from Twice-NAT address pool that should be used as source IP in twice-NAT processing. 692 // This is override for default behaviour of choosing the first IP address from twice-NAT pool that 693 // has available at least one free port (NAT is tracking translation sessions and exhausts free ports 694 // for given IP address). This is needed for example in use cases when multiple twice-NAT 695 // translations need to use different IP Addresses as source IP addresses. 696 // This functionality works with VPP 20.09 and newer. It also needs to have twice_nat set to ENABLED. 697 // It doesn't work for load-balanced static mappings (=local_ips has multiple values). 698 TwiceNatPoolIp string `protobuf:"bytes,8,opt,name=twice_nat_pool_ip,json=twiceNatPoolIp,proto3" json:"twice_nat_pool_ip,omitempty"` 699 // Session affinity. 0 means disabled, otherwise client IP affinity sticky time in seconds. 700 SessionAffinity uint32 `protobuf:"varint,7,opt,name=session_affinity,json=sessionAffinity,proto3" json:"session_affinity,omitempty"` 701 } 702 703 func (x *DNat44_StaticMapping) Reset() { 704 *x = DNat44_StaticMapping{} 705 if protoimpl.UnsafeEnabled { 706 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[7] 707 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 708 ms.StoreMessageInfo(mi) 709 } 710 } 711 712 func (x *DNat44_StaticMapping) String() string { 713 return protoimpl.X.MessageStringOf(x) 714 } 715 716 func (*DNat44_StaticMapping) ProtoMessage() {} 717 718 func (x *DNat44_StaticMapping) ProtoReflect() protoreflect.Message { 719 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[7] 720 if protoimpl.UnsafeEnabled && x != nil { 721 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 722 if ms.LoadMessageInfo() == nil { 723 ms.StoreMessageInfo(mi) 724 } 725 return ms 726 } 727 return mi.MessageOf(x) 728 } 729 730 // Deprecated: Use DNat44_StaticMapping.ProtoReflect.Descriptor instead. 731 func (*DNat44_StaticMapping) Descriptor() ([]byte, []int) { 732 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1, 0} 733 } 734 735 func (x *DNat44_StaticMapping) GetExternalInterface() string { 736 if x != nil { 737 return x.ExternalInterface 738 } 739 return "" 740 } 741 742 func (x *DNat44_StaticMapping) GetExternalIp() string { 743 if x != nil { 744 return x.ExternalIp 745 } 746 return "" 747 } 748 749 func (x *DNat44_StaticMapping) GetExternalPort() uint32 { 750 if x != nil { 751 return x.ExternalPort 752 } 753 return 0 754 } 755 756 func (x *DNat44_StaticMapping) GetLocalIps() []*DNat44_StaticMapping_LocalIP { 757 if x != nil { 758 return x.LocalIps 759 } 760 return nil 761 } 762 763 func (x *DNat44_StaticMapping) GetProtocol() DNat44_Protocol { 764 if x != nil { 765 return x.Protocol 766 } 767 return DNat44_TCP 768 } 769 770 func (x *DNat44_StaticMapping) GetTwiceNat() DNat44_StaticMapping_TwiceNatMode { 771 if x != nil { 772 return x.TwiceNat 773 } 774 return DNat44_StaticMapping_DISABLED 775 } 776 777 func (x *DNat44_StaticMapping) GetTwiceNatPoolIp() string { 778 if x != nil { 779 return x.TwiceNatPoolIp 780 } 781 return "" 782 } 783 784 func (x *DNat44_StaticMapping) GetSessionAffinity() uint32 { 785 if x != nil { 786 return x.SessionAffinity 787 } 788 return 0 789 } 790 791 // IdentityMapping defines an identity mapping in DNAT. 792 type DNat44_IdentityMapping struct { 793 state protoimpl.MessageState 794 sizeCache protoimpl.SizeCache 795 unknownFields protoimpl.UnknownFields 796 797 // VRF (table) ID. Non-zero VRF has to be explicitly created (see api/models/vpp/l3/vrf.proto). 798 VrfId uint32 `protobuf:"varint,1,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 799 // Name of the interface to use address from; preferred over ip_address. 800 Interface string `protobuf:"bytes,2,opt,name=interface,proto3" json:"interface,omitempty"` 801 // IP address. 802 IpAddress string `protobuf:"bytes,3,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` 803 // Port (do not set for address mapping). 804 Port uint32 `protobuf:"varint,4,opt,name=port,proto3" json:"port,omitempty"` 805 // Protocol used for identity mapping. 806 Protocol DNat44_Protocol `protobuf:"varint,5,opt,name=protocol,proto3,enum=ligato.vpp.nat.DNat44_Protocol" json:"protocol,omitempty"` 807 } 808 809 func (x *DNat44_IdentityMapping) Reset() { 810 *x = DNat44_IdentityMapping{} 811 if protoimpl.UnsafeEnabled { 812 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[8] 813 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 814 ms.StoreMessageInfo(mi) 815 } 816 } 817 818 func (x *DNat44_IdentityMapping) String() string { 819 return protoimpl.X.MessageStringOf(x) 820 } 821 822 func (*DNat44_IdentityMapping) ProtoMessage() {} 823 824 func (x *DNat44_IdentityMapping) ProtoReflect() protoreflect.Message { 825 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[8] 826 if protoimpl.UnsafeEnabled && x != nil { 827 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 828 if ms.LoadMessageInfo() == nil { 829 ms.StoreMessageInfo(mi) 830 } 831 return ms 832 } 833 return mi.MessageOf(x) 834 } 835 836 // Deprecated: Use DNat44_IdentityMapping.ProtoReflect.Descriptor instead. 837 func (*DNat44_IdentityMapping) Descriptor() ([]byte, []int) { 838 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1, 1} 839 } 840 841 func (x *DNat44_IdentityMapping) GetVrfId() uint32 { 842 if x != nil { 843 return x.VrfId 844 } 845 return 0 846 } 847 848 func (x *DNat44_IdentityMapping) GetInterface() string { 849 if x != nil { 850 return x.Interface 851 } 852 return "" 853 } 854 855 func (x *DNat44_IdentityMapping) GetIpAddress() string { 856 if x != nil { 857 return x.IpAddress 858 } 859 return "" 860 } 861 862 func (x *DNat44_IdentityMapping) GetPort() uint32 { 863 if x != nil { 864 return x.Port 865 } 866 return 0 867 } 868 869 func (x *DNat44_IdentityMapping) GetProtocol() DNat44_Protocol { 870 if x != nil { 871 return x.Protocol 872 } 873 return DNat44_TCP 874 } 875 876 // LocalIP defines a local IP addresses. 877 type DNat44_StaticMapping_LocalIP struct { 878 state protoimpl.MessageState 879 sizeCache protoimpl.SizeCache 880 unknownFields protoimpl.UnknownFields 881 882 // VRF (table) ID. Non-zero VRF has to be explicitly created (see api/models/vpp/l3/vrf.proto). 883 VrfId uint32 `protobuf:"varint,1,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"` 884 // Local IP address). 885 LocalIp string `protobuf:"bytes,2,opt,name=local_ip,json=localIp,proto3" json:"local_ip,omitempty"` 886 // Port (do not set for address mapping). 887 LocalPort uint32 `protobuf:"varint,3,opt,name=local_port,json=localPort,proto3" json:"local_port,omitempty"` 888 // Probability level for load-balancing mode. 889 Probability uint32 `protobuf:"varint,4,opt,name=probability,proto3" json:"probability,omitempty"` 890 } 891 892 func (x *DNat44_StaticMapping_LocalIP) Reset() { 893 *x = DNat44_StaticMapping_LocalIP{} 894 if protoimpl.UnsafeEnabled { 895 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[9] 896 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 897 ms.StoreMessageInfo(mi) 898 } 899 } 900 901 func (x *DNat44_StaticMapping_LocalIP) String() string { 902 return protoimpl.X.MessageStringOf(x) 903 } 904 905 func (*DNat44_StaticMapping_LocalIP) ProtoMessage() {} 906 907 func (x *DNat44_StaticMapping_LocalIP) ProtoReflect() protoreflect.Message { 908 mi := &file_ligato_vpp_nat_nat_proto_msgTypes[9] 909 if protoimpl.UnsafeEnabled && x != nil { 910 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 911 if ms.LoadMessageInfo() == nil { 912 ms.StoreMessageInfo(mi) 913 } 914 return ms 915 } 916 return mi.MessageOf(x) 917 } 918 919 // Deprecated: Use DNat44_StaticMapping_LocalIP.ProtoReflect.Descriptor instead. 920 func (*DNat44_StaticMapping_LocalIP) Descriptor() ([]byte, []int) { 921 return file_ligato_vpp_nat_nat_proto_rawDescGZIP(), []int{1, 0, 0} 922 } 923 924 func (x *DNat44_StaticMapping_LocalIP) GetVrfId() uint32 { 925 if x != nil { 926 return x.VrfId 927 } 928 return 0 929 } 930 931 func (x *DNat44_StaticMapping_LocalIP) GetLocalIp() string { 932 if x != nil { 933 return x.LocalIp 934 } 935 return "" 936 } 937 938 func (x *DNat44_StaticMapping_LocalIP) GetLocalPort() uint32 { 939 if x != nil { 940 return x.LocalPort 941 } 942 return 0 943 } 944 945 func (x *DNat44_StaticMapping_LocalIP) GetProbability() uint32 { 946 if x != nil { 947 return x.Probability 948 } 949 return 0 950 } 951 952 var File_ligato_vpp_nat_nat_proto protoreflect.FileDescriptor 953 954 var file_ligato_vpp_nat_nat_proto_rawDesc = []byte{ 955 0x0a, 0x18, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x6e, 0x61, 0x74, 956 0x2f, 0x6e, 0x61, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0e, 0x6c, 0x69, 0x67, 0x61, 957 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 0x61, 0x74, 0x1a, 0x18, 0x6c, 0x69, 0x67, 0x61, 958 0x74, 0x6f, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 959 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x95, 0x04, 0x0a, 0x0b, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x47, 0x6c, 960 0x6f, 0x62, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 961 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 962 0x64, 0x69, 0x6e, 0x67, 0x12, 0x31, 0x0a, 0x14, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 963 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 964 0x28, 0x08, 0x52, 0x13, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x49, 0x6e, 0x64, 0x65, 965 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0e, 0x6e, 0x61, 0x74, 0x5f, 0x69, 966 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 967 0x25, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 0x61, 0x74, 968 0x2e, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x49, 0x6e, 0x74, 969 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0d, 0x6e, 0x61, 0x74, 0x49, 970 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x0c, 0x61, 0x64, 0x64, 971 0x72, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 972 0x23, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 0x61, 0x74, 973 0x2e, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x41, 0x64, 0x64, 974 0x72, 0x65, 0x73, 0x73, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 975 0x73, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x50, 0x0a, 0x12, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 976 0x5f, 0x72, 0x65, 0x61, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 977 0x0b, 0x32, 0x21, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 978 0x61, 0x74, 0x2e, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x73, 0x65, 979 0x6d, 0x62, 0x6c, 0x79, 0x52, 0x11, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 980 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x79, 0x1a, 0x63, 0x0a, 0x09, 0x49, 0x6e, 0x74, 0x65, 0x72, 981 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 982 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x69, 983 0x6e, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x49, 984 0x6e, 0x73, 0x69, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 985 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6f, 986 0x75, 0x74, 0x70, 0x75, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x1a, 0x5e, 0x0a, 0x07, 987 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1f, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 988 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 989 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 990 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 991 0x1b, 0x0a, 0x09, 0x74, 0x77, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 992 0x28, 0x08, 0x52, 0x08, 0x74, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x74, 0x22, 0xb5, 0x08, 0x0a, 993 0x06, 0x44, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 994 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x45, 0x0a, 995 0x0b, 0x73, 0x74, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 996 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 997 0x6e, 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 998 0x63, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x73, 0x74, 0x4d, 0x61, 0x70, 0x70, 999 0x69, 0x6e, 0x67, 0x73, 0x12, 0x47, 0x0a, 0x0b, 0x69, 0x64, 0x5f, 0x6d, 0x61, 0x70, 0x70, 0x69, 1000 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6c, 0x69, 0x67, 0x61, 1001 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 1002 0x34, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 1003 0x67, 0x52, 0x0a, 0x69, 0x64, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x91, 0x05, 1004 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 1005 0x2d, 0x0a, 0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x6e, 0x74, 0x65, 1006 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x65, 0x78, 0x74, 1007 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x26, 1008 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 1009 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 1010 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x70, 0x12, 0x2e, 0x0a, 0x0d, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 1011 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 1012 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 1013 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 1014 0x69, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x69, 0x67, 0x61, 1015 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 1016 0x34, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x2e, 1017 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x50, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x70, 1018 0x73, 0x12, 0x3b, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x05, 0x20, 1019 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 1020 0x2e, 0x6e, 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x2e, 0x50, 0x72, 0x6f, 0x74, 1021 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x4e, 1022 0x0a, 0x09, 0x74, 0x77, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 1023 0x0e, 0x32, 0x31, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 1024 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x63, 1025 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x2e, 0x54, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x74, 1026 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x08, 0x74, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x74, 0x12, 0x30, 1027 0x0a, 0x11, 0x74, 0x77, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x74, 0x5f, 0x70, 0x6f, 0x6f, 0x6c, 1028 0x5f, 0x69, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 1029 0x52, 0x0e, 0x74, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x74, 0x50, 0x6f, 0x6f, 0x6c, 0x49, 0x70, 1030 0x12, 0x29, 0x0a, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x66, 0x66, 0x69, 1031 0x6e, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x65, 0x73, 0x73, 1032 0x69, 0x6f, 0x6e, 0x41, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x1a, 0x8e, 0x01, 0x0a, 0x07, 1033 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x50, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 1034 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 0x20, 1035 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 1036 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x07, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x70, 1037 0x12, 0x28, 0x0a, 0x0a, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, 1038 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 1039 0x09, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 1040 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 1041 0x0b, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0x33, 0x0a, 0x0c, 1042 0x54, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0c, 0x0a, 0x08, 1043 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x4e, 1044 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x45, 0x4c, 0x46, 0x10, 1045 0x02, 0x1a, 0xc8, 0x01, 0x0a, 0x0f, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4d, 0x61, 1046 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 1047 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 1048 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 1049 0x09, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0a, 0x69, 0x70, 1050 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 1051 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 1052 0x12, 0x1d, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x09, 1053 0x82, 0x7d, 0x06, 0x12, 0x04, 0x10, 0xff, 0xff, 0x03, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 1054 0x3b, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 1055 0x0e, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x76, 0x70, 0x70, 0x2e, 0x6e, 1056 0x61, 0x74, 0x2e, 0x44, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 1057 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x26, 0x0a, 0x08, 1058 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x43, 0x50, 0x10, 1059 0x00, 0x12, 0x07, 0x0a, 0x03, 0x55, 0x44, 0x50, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x43, 1060 0x4d, 0x50, 0x10, 0x02, 0x22, 0x8b, 0x01, 0x0a, 0x0e, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x49, 0x6e, 1061 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 1062 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 1063 0x61, 0x74, 0x5f, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 1064 0x09, 0x6e, 0x61, 0x74, 0x49, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 1065 0x74, 0x5f, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 1066 0x0a, 0x6e, 0x61, 0x74, 0x4f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6f, 1067 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 1068 0x01, 0x28, 0x08, 0x52, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 1069 0x72, 0x65, 0x22, 0x9c, 0x01, 0x0a, 0x10, 0x4e, 0x61, 0x74, 0x34, 0x34, 0x41, 0x64, 0x64, 0x72, 1070 0x65, 0x73, 0x73, 0x50, 0x6f, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 1071 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x76, 1072 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x76, 0x72, 0x66, 1073 0x49, 0x64, 0x12, 0x20, 0x0a, 0x08, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 0x02, 1074 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x07, 0x66, 0x69, 0x72, 1075 0x73, 0x74, 0x49, 0x70, 0x12, 0x1e, 0x0a, 0x07, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x69, 0x70, 0x18, 1076 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x82, 0x7d, 0x02, 0x08, 0x02, 0x52, 0x06, 0x6c, 0x61, 1077 0x73, 0x74, 0x49, 0x70, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x77, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 1078 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x74, 0x77, 0x69, 0x63, 0x65, 0x4e, 0x61, 1079 0x74, 0x22, 0xa4, 0x01, 0x0a, 0x11, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x52, 0x65, 0x61, 1080 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 1081 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 1082 0x74, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x73, 0x65, 0x6d, 1083 0x62, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x6d, 0x61, 0x78, 1084 0x52, 0x65, 0x61, 0x73, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 1085 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 1086 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 1087 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 1088 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x64, 0x72, 0x6f, 0x70, 0x46, 1089 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x38, 0x5a, 0x36, 0x67, 0x6f, 0x2e, 0x6c, 1090 0x69, 0x67, 0x61, 0x74, 0x6f, 0x2e, 0x69, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2d, 0x61, 0x67, 0x65, 1091 0x6e, 0x74, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x69, 0x67, 0x61, 1092 0x74, 0x6f, 0x2f, 0x76, 0x70, 0x70, 0x2f, 0x6e, 0x61, 0x74, 0x3b, 0x76, 0x70, 0x70, 0x5f, 0x6e, 1093 0x61, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1094 } 1095 1096 var ( 1097 file_ligato_vpp_nat_nat_proto_rawDescOnce sync.Once 1098 file_ligato_vpp_nat_nat_proto_rawDescData = file_ligato_vpp_nat_nat_proto_rawDesc 1099 ) 1100 1101 func file_ligato_vpp_nat_nat_proto_rawDescGZIP() []byte { 1102 file_ligato_vpp_nat_nat_proto_rawDescOnce.Do(func() { 1103 file_ligato_vpp_nat_nat_proto_rawDescData = protoimpl.X.CompressGZIP(file_ligato_vpp_nat_nat_proto_rawDescData) 1104 }) 1105 return file_ligato_vpp_nat_nat_proto_rawDescData 1106 } 1107 1108 var file_ligato_vpp_nat_nat_proto_enumTypes = make([]protoimpl.EnumInfo, 2) 1109 var file_ligato_vpp_nat_nat_proto_msgTypes = make([]protoimpl.MessageInfo, 10) 1110 var file_ligato_vpp_nat_nat_proto_goTypes = []interface{}{ 1111 (DNat44_Protocol)(0), // 0: ligato.vpp.nat.DNat44.Protocol 1112 (DNat44_StaticMapping_TwiceNatMode)(0), // 1: ligato.vpp.nat.DNat44.StaticMapping.TwiceNatMode 1113 (*Nat44Global)(nil), // 2: ligato.vpp.nat.Nat44Global 1114 (*DNat44)(nil), // 3: ligato.vpp.nat.DNat44 1115 (*Nat44Interface)(nil), // 4: ligato.vpp.nat.Nat44Interface 1116 (*Nat44AddressPool)(nil), // 5: ligato.vpp.nat.Nat44AddressPool 1117 (*VirtualReassembly)(nil), // 6: ligato.vpp.nat.VirtualReassembly 1118 (*Nat44Global_Interface)(nil), // 7: ligato.vpp.nat.Nat44Global.Interface 1119 (*Nat44Global_Address)(nil), // 8: ligato.vpp.nat.Nat44Global.Address 1120 (*DNat44_StaticMapping)(nil), // 9: ligato.vpp.nat.DNat44.StaticMapping 1121 (*DNat44_IdentityMapping)(nil), // 10: ligato.vpp.nat.DNat44.IdentityMapping 1122 (*DNat44_StaticMapping_LocalIP)(nil), // 11: ligato.vpp.nat.DNat44.StaticMapping.LocalIP 1123 } 1124 var file_ligato_vpp_nat_nat_proto_depIdxs = []int32{ 1125 7, // 0: ligato.vpp.nat.Nat44Global.nat_interfaces:type_name -> ligato.vpp.nat.Nat44Global.Interface 1126 8, // 1: ligato.vpp.nat.Nat44Global.address_pool:type_name -> ligato.vpp.nat.Nat44Global.Address 1127 6, // 2: ligato.vpp.nat.Nat44Global.virtual_reassembly:type_name -> ligato.vpp.nat.VirtualReassembly 1128 9, // 3: ligato.vpp.nat.DNat44.st_mappings:type_name -> ligato.vpp.nat.DNat44.StaticMapping 1129 10, // 4: ligato.vpp.nat.DNat44.id_mappings:type_name -> ligato.vpp.nat.DNat44.IdentityMapping 1130 11, // 5: ligato.vpp.nat.DNat44.StaticMapping.local_ips:type_name -> ligato.vpp.nat.DNat44.StaticMapping.LocalIP 1131 0, // 6: ligato.vpp.nat.DNat44.StaticMapping.protocol:type_name -> ligato.vpp.nat.DNat44.Protocol 1132 1, // 7: ligato.vpp.nat.DNat44.StaticMapping.twice_nat:type_name -> ligato.vpp.nat.DNat44.StaticMapping.TwiceNatMode 1133 0, // 8: ligato.vpp.nat.DNat44.IdentityMapping.protocol:type_name -> ligato.vpp.nat.DNat44.Protocol 1134 9, // [9:9] is the sub-list for method output_type 1135 9, // [9:9] is the sub-list for method input_type 1136 9, // [9:9] is the sub-list for extension type_name 1137 9, // [9:9] is the sub-list for extension extendee 1138 0, // [0:9] is the sub-list for field type_name 1139 } 1140 1141 func init() { file_ligato_vpp_nat_nat_proto_init() } 1142 func file_ligato_vpp_nat_nat_proto_init() { 1143 if File_ligato_vpp_nat_nat_proto != nil { 1144 return 1145 } 1146 if !protoimpl.UnsafeEnabled { 1147 file_ligato_vpp_nat_nat_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1148 switch v := v.(*Nat44Global); i { 1149 case 0: 1150 return &v.state 1151 case 1: 1152 return &v.sizeCache 1153 case 2: 1154 return &v.unknownFields 1155 default: 1156 return nil 1157 } 1158 } 1159 file_ligato_vpp_nat_nat_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1160 switch v := v.(*DNat44); i { 1161 case 0: 1162 return &v.state 1163 case 1: 1164 return &v.sizeCache 1165 case 2: 1166 return &v.unknownFields 1167 default: 1168 return nil 1169 } 1170 } 1171 file_ligato_vpp_nat_nat_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1172 switch v := v.(*Nat44Interface); i { 1173 case 0: 1174 return &v.state 1175 case 1: 1176 return &v.sizeCache 1177 case 2: 1178 return &v.unknownFields 1179 default: 1180 return nil 1181 } 1182 } 1183 file_ligato_vpp_nat_nat_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1184 switch v := v.(*Nat44AddressPool); i { 1185 case 0: 1186 return &v.state 1187 case 1: 1188 return &v.sizeCache 1189 case 2: 1190 return &v.unknownFields 1191 default: 1192 return nil 1193 } 1194 } 1195 file_ligato_vpp_nat_nat_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1196 switch v := v.(*VirtualReassembly); i { 1197 case 0: 1198 return &v.state 1199 case 1: 1200 return &v.sizeCache 1201 case 2: 1202 return &v.unknownFields 1203 default: 1204 return nil 1205 } 1206 } 1207 file_ligato_vpp_nat_nat_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1208 switch v := v.(*Nat44Global_Interface); i { 1209 case 0: 1210 return &v.state 1211 case 1: 1212 return &v.sizeCache 1213 case 2: 1214 return &v.unknownFields 1215 default: 1216 return nil 1217 } 1218 } 1219 file_ligato_vpp_nat_nat_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1220 switch v := v.(*Nat44Global_Address); i { 1221 case 0: 1222 return &v.state 1223 case 1: 1224 return &v.sizeCache 1225 case 2: 1226 return &v.unknownFields 1227 default: 1228 return nil 1229 } 1230 } 1231 file_ligato_vpp_nat_nat_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1232 switch v := v.(*DNat44_StaticMapping); i { 1233 case 0: 1234 return &v.state 1235 case 1: 1236 return &v.sizeCache 1237 case 2: 1238 return &v.unknownFields 1239 default: 1240 return nil 1241 } 1242 } 1243 file_ligato_vpp_nat_nat_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 1244 switch v := v.(*DNat44_IdentityMapping); i { 1245 case 0: 1246 return &v.state 1247 case 1: 1248 return &v.sizeCache 1249 case 2: 1250 return &v.unknownFields 1251 default: 1252 return nil 1253 } 1254 } 1255 file_ligato_vpp_nat_nat_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1256 switch v := v.(*DNat44_StaticMapping_LocalIP); i { 1257 case 0: 1258 return &v.state 1259 case 1: 1260 return &v.sizeCache 1261 case 2: 1262 return &v.unknownFields 1263 default: 1264 return nil 1265 } 1266 } 1267 } 1268 type x struct{} 1269 out := protoimpl.TypeBuilder{ 1270 File: protoimpl.DescBuilder{ 1271 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1272 RawDescriptor: file_ligato_vpp_nat_nat_proto_rawDesc, 1273 NumEnums: 2, 1274 NumMessages: 10, 1275 NumExtensions: 0, 1276 NumServices: 0, 1277 }, 1278 GoTypes: file_ligato_vpp_nat_nat_proto_goTypes, 1279 DependencyIndexes: file_ligato_vpp_nat_nat_proto_depIdxs, 1280 EnumInfos: file_ligato_vpp_nat_nat_proto_enumTypes, 1281 MessageInfos: file_ligato_vpp_nat_nat_proto_msgTypes, 1282 }.Build() 1283 File_ligato_vpp_nat_nat_proto = out.File 1284 file_ligato_vpp_nat_nat_proto_rawDesc = nil 1285 file_ligato_vpp_nat_nat_proto_goTypes = nil 1286 file_ligato_vpp_nat_nat_proto_depIdxs = nil 1287 }