{ "id":"/axapi/v3/ddos/dst/interface-ip/{addr}", "type":"object", "node-type":"list", "title":"interface-ip", "partition-visibility":"shared", "description":"Configure protections on local interface IPs", "properties":{ "addr":{ "type":"string", "format":"ipv4-address", "partition-visibility":"shared", "description":"IP address of interface", "optional":false }, "log-enable":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable logging of limit exceed drops", "optional":true }, "log-periodic":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable periodic log while event is continuing", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true }, "l4-type-list":{ "type":"array", "minItems":1, "items":{ "type":"l4-type" }, "uniqueItems":true, "$ref":"/axapi/v3/ddos/dst/interface-ip/{addr}/l4-type/{protocol}", "array":[ { "properties":{ "protocol":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'tcp': tcp; 'udp': udp; 'icmp': icmp; 'other': other; ", "enum":[ "tcp", "udp", "icmp", "other" ], "optional":false }, "deny":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Blacklist and Drop all incoming packets for protocol", "optional":true }, "glid":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/glid", "description":"Global limit ID", "optional":true }, "tunnel-decap":{ "type":"object", "properties":{ "ip-decap":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable IP Tunnel decapsulation" }, "gre-decap":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable GRE Tunnel decapsulation" }, "key-cfg":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "key":{ "type":"string", "format":"string", "minLength":1, "maxLength":10, "partition-visibility":"shared", "description":"Only decapsulate GRE packet with this key (Hexadecimal 0x0-0xFFFFFFFF,decimal 0-4294967295)" } } } ] } } }, "tunnel-rate-limit":{ "type":"object", "properties":{ "ip-rate-limit":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable inner IP rate limiting on IPinIP traffic" }, "gre-rate-limit":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable inner IP rate limiting on GRE traffic" } } }, "drop-frag-pkt":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Drop fragmented packets", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true } }, "required":[ "protocol" ] } ] }, "ip-proto-list":{ "type":"array", "minItems":1, "items":{ "type":"ip-proto" }, "uniqueItems":true, "$ref":"/axapi/v3/ddos/dst/interface-ip/{addr}/ip-proto/{port-num}", "array":[ { "properties":{ "port-num":{ "type":"number", "format":"number", "minimum":0, "maximum":255, "partition-visibility":"shared", "description":"IP protocol number", "optional":false }, "deny":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Blacklist and Drop all incoming packets for protocol", "optional":true }, "glid":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/glid", "description":"Global limit ID", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true } }, "required":[ "port-num" ] } ] }, "port-list":{ "type":"array", "minItems":1, "items":{ "type":"port" }, "uniqueItems":true, "$ref":"/axapi/v3/ddos/dst/interface-ip/{addr}/port/{port-num}+{protocol}", "array":[ { "properties":{ "port-num":{ "type":"number", "format":"number", "minimum":1, "maximum":65535, "partition-visibility":"shared", "description":"Port Number", "optional":false }, "protocol":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'tcp': tcp; 'udp': udp; 'http-probe': http port for interface health check; ", "enum":[ "tcp", "udp", "http-probe" ], "optional":false }, "deny":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Blacklist and Drop all incoming packets for protocol", "optional":true }, "glid":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/glid", "description":"Global limit ID", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true } }, "required":[ "port-num", "protocol" ] } ] } }, "object-keys":[ "addr" ], "required":[ "addr" ] }