iptunnel

Last published : Oct 30, 2026
Configuration for ip Tunnel resource.

Properties

(click to see Operations )
Name Data Type Permissions Description
name <String> Read-write Name for the IP tunnel. Leading character must be a number or letter. Other characters allowed, after the first character, are @ _ - . (period) : (colon) # and space ( ).
Minimum length = 1
remote <String> Read-write Public IPv4 address, of the remote device, used to set up the tunnel. For this parameter, you can alternatively specify a network address.
Minimum length = 1
remotesubnetmask <String> Read-write Subnet mask of the remote IP address of the tunnel.
local <String> Read-write Type of Citrix ADC owned public IPv4 address, configured on the local Citrix ADC and used to set up the tunnel.
protocol <String> Read-write Name of the protocol to be used on this tunnel.
Default value: IPIP
Possible values = IPIP, GRE, IPSEC, UDP, GENEVE
vnid <Integer> Read-write Virtual network identifier (VNID) is the value that identifies a specific virtual network in the data plane.
Minimum value = 1
Maximum value = 16777215
vlantagging <String> Read-write Option to select Vlan Tagging.
Default value: DISABLED
Possible values = ENABLED, DISABLED
destport <Integer> Read-write Specifies UDP destination port for Geneve packets. Default port is 6081.
Default value: 6081
Minimum value = 1024
Maximum value = 65535
tosinherit <String> Read-write Default behavior is to copy the ToS field of the internal IP Packet (Payload) to the outer IP packet (Transport packet). But the user can configure a new ToS field using this option.
Default value: ENABLED
Possible values = ENABLED, DISABLED
grepayload <String> Read-write The payload GRE will carry.
Default value: ETHERNETwithDOT1Q
Possible values = ETHERNETwithDOT1Q, ETHERNET, IP
ipsecprofilename <String> Read-write Name of IPSec profile to be associated.
Default value: "ns_ipsec_default_profile"
vlan <Integer> Read-write The vlan for mulicast packets.
Minimum value = 1
Maximum value = 4094
ownergroup <String> Read-write The owner node group in a Cluster for the iptunnel.
Default value: DEFAULT_NG
Minimum length = 1
sysname <String> Read-only The name of the ip tunnel.
type <Integer> Read-only The type of this tunnel.
encapip <String> Read-only The effective local IP address of the tunnel. Used as the source of the encapsulated packets.
channel <Integer> Read-only The tunnel that is bound to a netbridge.
tunneltype <String[]> Read-only Indicates that a tunnel is User-Configured, Internal or DELETE-IN-PROGRESS.
Possible values = Configured, Delete-In-Progress
ipsectunnelstatus <String> Read-only Whether the ipsec on this tunnel is up or down.
Possible values = DOWN, UP, PARTIAL-UP, UNKNOWN
refcnt <Integer> Read-only Number of PBRs to bound to this iptunnel.
_nextgenapiresource <String> Read-only .
__count <Double> Read-only count parameter

Operations

(click to see Properties )
  • ADD
  • DELETE
  • GET (ALL)
  • GET
  • COUNT
  • UPDATE
  • UNSET
Some options that you can use for each operations:
  • Getting warnings in response: NITRO allows you to get warnings in an operation by specifying the 'warning' query parameter as 'yes'. For example, to get warnings while connecting to the NetScaler appliance, the URL is as follows:
    http:// <netscaler-ip-address> /nitro/v1/config/login?warning=yes
    If any, the warnings are displayed in the response payload with the HTTP code '209 X-NITRO-WARNING'.
  • Authenticated access for individual NITRO operations: NITRO allows you to logon to the NetScaler appliance to perform individual operations. You can use this option instead of creating a NITRO session (using the login object) and then using that session to perform all operations,
    To do this, you must specify the username and password in the request header of the NITRO request as follows:
    X-NITRO-USER: <username>
    X-NITRO-PASS: <password>
    Note: In such cases, make sure that the request header DOES not include the following:
    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
*Note: * Mandatory parameters are marked in red and placeholder content is marked in green

add

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel HTTP Method: POST
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Content-Type:application/json
Request Payload:
{"iptunnel":{
<b>"name":<String_value>,
</b><b>"remote":<String_value>,
</b><b>"remotesubnetmask":<String_value>,
</b><b>"local":<String_value>,
</b>"protocol":<String_value>,
"vnid":<Integer_value>,
"vlantagging":<String_value>,
"destport":<Integer_value>,
"tosinherit":<String_value>,
"grepayload":<String_value>,
"ipsecprofilename":<String_value>,
"vlan":<Integer_value>,
"ownergroup":<String_value>
}}
Response: HTTP Status Code on Success: 201 Created
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

delete

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel/ name_value<String> HTTP Method: DELETE
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

update

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel HTTP Method: PUT
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Content-Type:application/json
Request Payload:
{"iptunnel":{
<b>"name":<String_value>,
</b>"vlantagging":<String_value>,
"destport":<Integer_value>,
"tosinherit":<String_value>
}}
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

unset

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? action=unset HTTP Method: POST
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Content-Type:application/json
Request Payload:
{"iptunnel":{
<b>"name":<String_value>,
</b>"vlantagging":true,
"destport":true,
"tosinherit":true
}}
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error

get (all)

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel Query-parameters: args http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? args=remote: <String_value> ,remotesubnetmask: <String_value> ,name: <String_value>
Use this query-parameter to get iptunnel resources based on additional properties.
attrs http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? attrs=property-name1,property-name2
Use this query parameter to specify the resource details that you want to retrieve.
filter http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? filter=property-name1:property-val1,property-name2:property-val2
Use this query-parameter to get the filtered set of iptunnel resources configured on NetScaler.Filtering can be done on any of the properties of the resource.
view http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? view=summary
Use this query-parameter to get the summary output of iptunnel resources configured on NetScaler.
Note: By default, the retrieved results are displayed in detail view (?view=detail).
pagination http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? pagesize=#no;pageno=#no
Use this query-parameter to get the iptunnel resources in chunks.
HTTP Method: GET
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Accept:application/json
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error
Response Header:
Content-Type:application/json
Response Payload:
{ "iptunnel": [ {
remote:<String_value>,remotesubnetmask:<String_value>,name:<String_value>"sysname":<String_value>,
"local":<String_value>,
"protocol":<String_value>,
"grepayload":<String_value>,
"type":<Integer_value>,
"encapip":<String_value>,
"channel":<Integer_value>,
"ipsecprofilename":<String_value>,
"vlan":<Integer_value>,
"tunneltype":<String[]_value>,
"ipsectunnelstatus":<String_value>,
"ownergroup":<String_value>,
"refcnt":<Integer_value>,
"vnid":<Integer_value>,
"vlantagging":<String_value>,
"destport":<Integer_value>,
"tosinherit":<String_value>,
"_nextgenapiresource":<String_value>
}]}

get

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel/ name_value<String> Query-parameters: attrs http:// <netscaler-ip-address> /nitro/v1/config/iptunnel/ name_value<String> ? attrs=property-name1,property-name2
Use this query parameter to specify the resource details that you want to retrieve.
view http:// <netscaler-ip-address> /nitro/v1/config/iptunnel/ name_value<String> ? view=summary
Use this query-parameter to get the summary output of iptunnel resources configured on NetScaler.
Note: By default, the retrieved results are displayed in detail view (?view=detail).
HTTP Method: GET
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Accept:application/json
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error
Response Header:
Content-Type:application/json
Response Payload:
{  "iptunnel": [ {
remote:<String_value>,remotesubnetmask:<String_value>,name:<String_value>"sysname":<String_value>,
"local":<String_value>,
"protocol":<String_value>,
"grepayload":<String_value>,
"type":<Integer_value>,
"encapip":<String_value>,
"channel":<Integer_value>,
"ipsecprofilename":<String_value>,
"vlan":<Integer_value>,
"tunneltype":<String[]_value>,
"ipsectunnelstatus":<String_value>,
"ownergroup":<String_value>,
"refcnt":<Integer_value>,
"vnid":<Integer_value>,
"vlantagging":<String_value>,
"destport":<Integer_value>,
"tosinherit":<String_value>,
"_nextgenapiresource":<String_value>
}]}

count

URL: http:// <netscaler-ip-address> /nitro/v1/config/iptunnel? count=yes HTTP Method: GET
Request Headers:
Cookie:NITRO_AUTH_TOKEN= <tokenvalue>
Accept:application/json
Response: HTTP Status Code on Success: 200 OK
HTTP Status Code on Failure: 4xx <string> (for general HTTP errors) or 5xx <string> (for NetScaler-specific errors). The response payload provides details of the error
Response Header:
Content-Type:application/json
Response Payload:
{ "iptunnel": [ { "__count": "#no"} ] }