<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://it-arts.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin</id>
	<title>IT-Arts.net - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://it-arts.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Admin"/>
	<link rel="alternate" type="text/html" href="https://it-arts.net/index.php/Special:Contributions/Admin"/>
	<updated>2026-05-02T19:48:01Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://it-arts.net/index.php?title=DEBIAN_-_Post-Install_Script&amp;diff=1150</id>
		<title>DEBIAN - Post-Install Script</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=DEBIAN_-_Post-Install_Script&amp;diff=1150"/>
		<updated>2026-03-27T13:11:46Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
apt install -y tree strace vim screen unzip unrar-free p7zip-full nmap traceroute sysstat locate openssh-server htop iftop iotop tcpdump curl wget rsync dnsutils dnstop iputils-ping iputils-tracepath locales-all iproute2 net-tools mtr-tiny snmp whois apt-transport-https ca-certificates software-properties-common dirmngr util-linux&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1149</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1149"/>
		<updated>2026-03-20T11:34:50Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Show VS Logs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Choose Partition ==&lt;br /&gt;
&lt;br /&gt;
=== TMSH Mode ===&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux Mode ===&lt;br /&gt;
&lt;br /&gt;
List the partitions with the command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh -q -c &#039;cd /; list net route-domain recursive all&#039;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the partition ID you need, then :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
rdsh &amp;lt;PARTITION_ID&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Config ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Config ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show SSL Profiles ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Connections ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cs-client-addr&#039;&#039;&#039;: The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-client-port&#039;&#039;&#039;: The (client) source port on the clientside of the connection.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-addr&#039;&#039;&#039;: The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-port&#039;&#039;&#039;: The (server) destination port on the clientside of the connection (i.e. the Virtual Server port).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-addr&#039;&#039;&#039;: The (client) source IP address on the serverside of the connection (i.e. the SNAT address).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-port&#039;&#039;&#039;: The (client) source port on the serverside of the connection (i.e. the SNAT port).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-addr&#039;&#039;&#039;: The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-port&#039;&#039;&#039;: The (server) destination port on the serverside of the connection (i.e., the Pool Member port).&lt;br /&gt;
&lt;br /&gt;
== Show VS Logs ==&lt;br /&gt;
&lt;br /&gt;
In Linux mode use tail or cat/zcat command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cat /var/log/ltm /var/log/ltm.1 | grep &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
zcat /var/log/ltm*.gz | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== Show VS Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dump VS Traffic ==&lt;br /&gt;
&lt;br /&gt;
Be sure to be in the good partition, and use the tcpdump command.&lt;br /&gt;
Eg :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -nni any src or dst 1.2.3.4 and src or dst 5.6.7.8&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The backend servers ip/port can be tested with the telnet command.&lt;br /&gt;
&lt;br /&gt;
== Usefull Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1148</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1148"/>
		<updated>2026-03-20T11:34:39Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Show VS Logs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Choose Partition ==&lt;br /&gt;
&lt;br /&gt;
=== TMSH Mode ===&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux Mode ===&lt;br /&gt;
&lt;br /&gt;
List the partitions with the command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh -q -c &#039;cd /; list net route-domain recursive all&#039;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the partition ID you need, then :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
rdsh &amp;lt;PARTITION_ID&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Config ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Config ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show SSL Profiles ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Connections ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cs-client-addr&#039;&#039;&#039;: The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-client-port&#039;&#039;&#039;: The (client) source port on the clientside of the connection.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-addr&#039;&#039;&#039;: The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-port&#039;&#039;&#039;: The (server) destination port on the clientside of the connection (i.e. the Virtual Server port).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-addr&#039;&#039;&#039;: The (client) source IP address on the serverside of the connection (i.e. the SNAT address).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-port&#039;&#039;&#039;: The (client) source port on the serverside of the connection (i.e. the SNAT port).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-addr&#039;&#039;&#039;: The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-port&#039;&#039;&#039;: The (server) destination port on the serverside of the connection (i.e., the Pool Member port).&lt;br /&gt;
&lt;br /&gt;
== Show VS Logs ==&lt;br /&gt;
&lt;br /&gt;
In Linux mode use tail or cat/zcat command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cat /var/log/ltm /var/log/ltm.1 | grep &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
zcat /var/log/ltm*.gz | grep &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== Show VS Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dump VS Traffic ==&lt;br /&gt;
&lt;br /&gt;
Be sure to be in the good partition, and use the tcpdump command.&lt;br /&gt;
Eg :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -nni any src or dst 1.2.3.4 and src or dst 5.6.7.8&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The backend servers ip/port can be tested with the telnet command.&lt;br /&gt;
&lt;br /&gt;
== Usefull Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1147</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1147"/>
		<updated>2026-03-20T11:31:44Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Dump VS Traffic */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Choose Partition ==&lt;br /&gt;
&lt;br /&gt;
=== TMSH Mode ===&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux Mode ===&lt;br /&gt;
&lt;br /&gt;
List the partitions with the command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh -q -c &#039;cd /; list net route-domain recursive all&#039;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the partition ID you need, then :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
rdsh &amp;lt;PARTITION_ID&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Config ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Config ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show SSL Profiles ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Connections ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cs-client-addr&#039;&#039;&#039;: The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-client-port&#039;&#039;&#039;: The (client) source port on the clientside of the connection.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-addr&#039;&#039;&#039;: The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-port&#039;&#039;&#039;: The (server) destination port on the clientside of the connection (i.e. the Virtual Server port).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-addr&#039;&#039;&#039;: The (client) source IP address on the serverside of the connection (i.e. the SNAT address).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-port&#039;&#039;&#039;: The (client) source port on the serverside of the connection (i.e. the SNAT port).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-addr&#039;&#039;&#039;: The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-port&#039;&#039;&#039;: The (server) destination port on the serverside of the connection (i.e., the Pool Member port).&lt;br /&gt;
&lt;br /&gt;
== Show VS Logs ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== Show VS Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dump VS Traffic ==&lt;br /&gt;
&lt;br /&gt;
Be sure to be in the good partition, and use the tcpdump command.&lt;br /&gt;
Eg :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -nni any src or dst 1.2.3.4 and src or dst 5.6.7.8&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The backend servers ip/port can be tested with the telnet command.&lt;br /&gt;
&lt;br /&gt;
== Usefull Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1146</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1146"/>
		<updated>2026-03-20T11:30:28Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Choose Partition ==&lt;br /&gt;
&lt;br /&gt;
=== TMSH Mode ===&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Linux Mode ===&lt;br /&gt;
&lt;br /&gt;
List the partitions with the command :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh -q -c &#039;cd /; list net route-domain recursive all&#039;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note the partition ID you need, then :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
rdsh &amp;lt;PARTITION_ID&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Config ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Config ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Show Pool Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show SSL Profiles ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Show VS Connections ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cs-client-addr&#039;&#039;&#039;: The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-client-port&#039;&#039;&#039;: The (client) source port on the clientside of the connection.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-addr&#039;&#039;&#039;: The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-port&#039;&#039;&#039;: The (server) destination port on the clientside of the connection (i.e. the Virtual Server port).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-addr&#039;&#039;&#039;: The (client) source IP address on the serverside of the connection (i.e. the SNAT address).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-port&#039;&#039;&#039;: The (client) source port on the serverside of the connection (i.e. the SNAT port).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-addr&#039;&#039;&#039;: The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-port&#039;&#039;&#039;: The (server) destination port on the serverside of the connection (i.e., the Pool Member port).&lt;br /&gt;
&lt;br /&gt;
== Show VS Logs ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== Show VS Statistics ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dump VS Traffic ==&lt;br /&gt;
&lt;br /&gt;
Be sure to be in the good partition, and use the tcpdump command.&lt;br /&gt;
Eg :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -nni any src or dst 1.2.3.4 and src or dst 5.6.7.8&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The backend servers ip/port can be tested with the telnet command.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Usefull Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1145</id>
		<title>CURL - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1145"/>
		<updated>2026-02-25T12:43:16Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Force to Connect to a given Host */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quick Examples ==&lt;br /&gt;
&lt;br /&gt;
=== Force to Connect to a given Host ===&lt;br /&gt;
&lt;br /&gt;
Connect to host2 instead of host1 :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl https://domain.example --connect-to domain.example:443:203.0.113.81:443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get the HTTP Headers of a URL ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -I --http2 https://&amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Follow Redirects ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -L &amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing The Download Time ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -D - https://www.ubuntu.com -o /dev/null&lt;br /&gt;
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current&lt;br /&gt;
                                 Dload  Upload   Total   Spent    Left  Speed&lt;br /&gt;
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/2 301 &lt;br /&gt;
server: nginx/1.14.0 (Ubuntu)&lt;br /&gt;
date: Mon, 21 Jul 2025 10:04:33 GMT&lt;br /&gt;
content-type: text/html&lt;br /&gt;
content-length: 162&lt;br /&gt;
location: https://ubuntu.com/&lt;br /&gt;
strict-transport-security: max-age=15724800&lt;br /&gt;
link: &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect; crossorigin, &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect, &amp;lt;https://res.cloudinary.com&amp;gt;; rel=preconnect&lt;br /&gt;
x-cache-status: HIT from content-cache-il3/1&lt;br /&gt;
&lt;br /&gt;
100   162  100   162    0     0    367      0 --:--:-- --:--:-- --:--:--   368&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Recording Cookies ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --cookie-jar received_cookies.txt https://URL -O&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== curl --help all ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --help all                                                  &lt;br /&gt;
     --abstract-unix-socket &amp;lt;path&amp;gt;                 Connect via abstract Unix domain socket&lt;br /&gt;
     --alt-svc &amp;lt;filename&amp;gt;                          Enable alt-svc with this cache file&lt;br /&gt;
     --anyauth                                     Pick any authentication method&lt;br /&gt;
 -a, --append                                      Append to target file when uploading&lt;br /&gt;
     --aws-sigv4 &amp;lt;provider1[:prvdr2[:reg[:srv]]]&amp;gt;  AWS V4 signature auth&lt;br /&gt;
     --basic                                       HTTP Basic Authentication&lt;br /&gt;
     --ca-native                                   Load CA certs from the OS&lt;br /&gt;
     --cacert &amp;lt;file&amp;gt;                               CA certificate to verify peer against&lt;br /&gt;
     --capath &amp;lt;dir&amp;gt;                                CA directory to verify peer against&lt;br /&gt;
 -E, --cert &amp;lt;certificate[:password]&amp;gt;               Client certificate file and password&lt;br /&gt;
     --cert-status                                 Verify server cert status OCSP-staple&lt;br /&gt;
     --cert-type &amp;lt;type&amp;gt;                            Certificate type (DER/PEM/ENG/PROV/P12)&lt;br /&gt;
     --ciphers &amp;lt;list&amp;gt;                              TLS 1.2 (1.1, 1.0) ciphers to use&lt;br /&gt;
     --compressed                                  Request compressed response&lt;br /&gt;
     --compressed-ssh                              Enable SSH compression&lt;br /&gt;
 -K, --config &amp;lt;file&amp;gt;                               Read config from a file&lt;br /&gt;
     --connect-timeout &amp;lt;seconds&amp;gt;                   Maximum time allowed to connect&lt;br /&gt;
     --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;        Connect to host2 instead of host1&lt;br /&gt;
 -C, --continue-at &amp;lt;offset&amp;gt;                        Resumed transfer offset&lt;br /&gt;
 -b, --cookie &amp;lt;data|filename&amp;gt;                      Send cookies from string/load from file&lt;br /&gt;
 -c, --cookie-jar &amp;lt;filename&amp;gt;                       Save cookies to &amp;lt;filename&amp;gt; after operation&lt;br /&gt;
     --create-dirs                                 Create necessary local directory hierarchy&lt;br /&gt;
     --create-file-mode &amp;lt;mode&amp;gt;                     File mode for created files&lt;br /&gt;
     --crlf                                        Convert LF to CRLF in upload&lt;br /&gt;
     --crlfile &amp;lt;file&amp;gt;                              Certificate Revocation list&lt;br /&gt;
     --curves &amp;lt;list&amp;gt;                               (EC) TLS key exchange algorithms to request&lt;br /&gt;
 -d, --data &amp;lt;data&amp;gt;                                 HTTP POST data&lt;br /&gt;
     --data-ascii &amp;lt;data&amp;gt;                           HTTP POST ASCII data&lt;br /&gt;
     --data-binary &amp;lt;data&amp;gt;                          HTTP POST binary data&lt;br /&gt;
     --data-raw &amp;lt;data&amp;gt;                             HTTP POST data, &#039;@&#039; allowed&lt;br /&gt;
     --data-urlencode &amp;lt;data&amp;gt;                       HTTP POST data URL encoded&lt;br /&gt;
     --delegation &amp;lt;LEVEL&amp;gt;                          GSS-API delegation permission&lt;br /&gt;
     --digest                                      HTTP Digest Authentication&lt;br /&gt;
 -q, --disable                                     Disable .curlrc&lt;br /&gt;
     --disable-eprt                                Inhibit using EPRT or LPRT&lt;br /&gt;
     --disable-epsv                                Inhibit using EPSV&lt;br /&gt;
     --disallow-username-in-url                    Disallow username in URL&lt;br /&gt;
     --dns-interface &amp;lt;interface&amp;gt;                   Interface to use for DNS requests&lt;br /&gt;
     --dns-ipv4-addr &amp;lt;address&amp;gt;                     IPv4 address to use for DNS requests&lt;br /&gt;
     --dns-ipv6-addr &amp;lt;address&amp;gt;                     IPv6 address to use for DNS requests&lt;br /&gt;
     --dns-servers &amp;lt;addresses&amp;gt;                     DNS server addrs to use&lt;br /&gt;
     --doh-cert-status                             Verify DoH server cert status OCSP-staple&lt;br /&gt;
     --doh-insecure                                Allow insecure DoH server connections&lt;br /&gt;
     --doh-url &amp;lt;URL&amp;gt;                               Resolve hostnames over DoH&lt;br /&gt;
     --dump-ca-embed                               Write the embedded CA bundle to standard output&lt;br /&gt;
 -D, --dump-header &amp;lt;filename&amp;gt;                      Write the received headers to &amp;lt;filename&amp;gt;&lt;br /&gt;
     --ech &amp;lt;config&amp;gt;                                Configure ECH&lt;br /&gt;
     --egd-file &amp;lt;file&amp;gt;                             EGD socket path for random data&lt;br /&gt;
     --engine &amp;lt;name&amp;gt;                               Crypto engine to use&lt;br /&gt;
     --etag-compare &amp;lt;file&amp;gt;                         Load ETag from file&lt;br /&gt;
     --etag-save &amp;lt;file&amp;gt;                            Parse incoming ETag and save to a file&lt;br /&gt;
     --expect100-timeout &amp;lt;seconds&amp;gt;                 How long to wait for 100-continue&lt;br /&gt;
 -f, --fail                                        Fail fast with no output on HTTP errors&lt;br /&gt;
     --fail-early                                  Fail on first transfer error&lt;br /&gt;
     --fail-with-body                              Fail on HTTP errors but save the body&lt;br /&gt;
     --false-start                                 Enable TLS False Start&lt;br /&gt;
 -F, --form &amp;lt;name=content&amp;gt;                         Specify multipart MIME data&lt;br /&gt;
     --form-escape                                 Escape form fields using backslash&lt;br /&gt;
     --form-string &amp;lt;name=string&amp;gt;                   Specify multipart MIME data&lt;br /&gt;
     --ftp-account &amp;lt;data&amp;gt;                          Account data string&lt;br /&gt;
     --ftp-alternative-to-user &amp;lt;command&amp;gt;           String to replace USER [name]&lt;br /&gt;
     --ftp-create-dirs                             Create the remote dirs if not present&lt;br /&gt;
     --ftp-method &amp;lt;method&amp;gt;                         Control CWD usage&lt;br /&gt;
     --ftp-pasv                                    Send PASV/EPSV instead of PORT&lt;br /&gt;
 -P, --ftp-port &amp;lt;address&amp;gt;                          Send PORT instead of PASV&lt;br /&gt;
     --ftp-pret                                    Send PRET before PASV&lt;br /&gt;
     --ftp-skip-pasv-ip                            Skip the IP address for PASV&lt;br /&gt;
     --ftp-ssl-ccc                                 Send CCC after authenticating&lt;br /&gt;
     --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;           Set CCC mode&lt;br /&gt;
     --ftp-ssl-control                             Require TLS for login, clear for transfer&lt;br /&gt;
 -G, --get                                         Put the post data in the URL and use GET&lt;br /&gt;
 -g, --globoff                                     Disable URL globbing with {} and []&lt;br /&gt;
     --happy-eyeballs-timeout-ms &amp;lt;ms&amp;gt;              Time for IPv6 before IPv4&lt;br /&gt;
     --haproxy-clientip &amp;lt;ip&amp;gt;                       Set address in HAProxy PROXY&lt;br /&gt;
     --haproxy-protocol                            Send HAProxy PROXY protocol v1 header&lt;br /&gt;
 -I, --head                                        Show document info only&lt;br /&gt;
 -H, --header &amp;lt;header/@file&amp;gt;                       Pass custom header(s) to server&lt;br /&gt;
 -h, --help &amp;lt;subject&amp;gt;                              Get help for commands&lt;br /&gt;
     --hostpubmd5 &amp;lt;md5&amp;gt;                            Acceptable MD5 hash of host public key&lt;br /&gt;
     --hostpubsha256 &amp;lt;sha256&amp;gt;                      Acceptable SHA256 hash of host public key&lt;br /&gt;
     --hsts &amp;lt;filename&amp;gt;                             Enable HSTS with this cache file&lt;br /&gt;
     --http0.9                                     Allow HTTP/0.9 responses&lt;br /&gt;
 -0, --http1.0                                     Use HTTP/1.0&lt;br /&gt;
     --http1.1                                     Use HTTP/1.1&lt;br /&gt;
     --http2                                       Use HTTP/2&lt;br /&gt;
     --http2-prior-knowledge                       Use HTTP/2 without HTTP/1.1 Upgrade&lt;br /&gt;
     --http3                                       Use HTTP/3&lt;br /&gt;
     --http3-only                                  Use HTTP/3 only&lt;br /&gt;
     --ignore-content-length                       Ignore the size of the remote resource&lt;br /&gt;
 -k, --insecure                                    Allow insecure server connections&lt;br /&gt;
     --interface &amp;lt;name&amp;gt;                            Use network interface&lt;br /&gt;
     --ip-tos &amp;lt;string&amp;gt;                             Set IP Type of Service or Traffic Class&lt;br /&gt;
     --ipfs-gateway &amp;lt;URL&amp;gt;                          Gateway for IPFS&lt;br /&gt;
 -4, --ipv4                                        Resolve names to IPv4 addresses&lt;br /&gt;
 -6, --ipv6                                        Resolve names to IPv6 addresses&lt;br /&gt;
     --json &amp;lt;data&amp;gt;                                 HTTP POST JSON&lt;br /&gt;
 -j, --junk-session-cookies                        Ignore session cookies read from file&lt;br /&gt;
     --keepalive-cnt &amp;lt;integer&amp;gt;                     Maximum number of keepalive probes&lt;br /&gt;
     --keepalive-time &amp;lt;seconds&amp;gt;                    Interval time for keepalive probes&lt;br /&gt;
     --key &amp;lt;key&amp;gt;                                   Private key filename&lt;br /&gt;
     --key-type &amp;lt;type&amp;gt;                             Private key file type (DER/PEM/ENG)&lt;br /&gt;
     --krb &amp;lt;level&amp;gt;                                 Enable Kerberos with security &amp;lt;level&amp;gt;&lt;br /&gt;
     --libcurl &amp;lt;file&amp;gt;                              Generate libcurl code for this command line&lt;br /&gt;
     --limit-rate &amp;lt;speed&amp;gt;                          Limit transfer speed to RATE&lt;br /&gt;
 -l, --list-only                                   List only mode&lt;br /&gt;
     --local-port &amp;lt;range&amp;gt;                          Use a local port number within RANGE&lt;br /&gt;
 -L, --location                                    Follow redirects&lt;br /&gt;
     --location-trusted                            As --location, but send secrets to other hosts&lt;br /&gt;
     --login-options &amp;lt;options&amp;gt;                     Server login options&lt;br /&gt;
     --mail-auth &amp;lt;address&amp;gt;                         Originator address of the original email&lt;br /&gt;
     --mail-from &amp;lt;address&amp;gt;                         Mail from this address&lt;br /&gt;
     --mail-rcpt &amp;lt;address&amp;gt;                         Mail to this address&lt;br /&gt;
     --mail-rcpt-allowfails                        Allow RCPT TO command to fail&lt;br /&gt;
 -M, --manual                                      Display the full manual&lt;br /&gt;
     --max-filesize &amp;lt;bytes&amp;gt;                        Maximum file size to download&lt;br /&gt;
     --max-redirs &amp;lt;num&amp;gt;                            Maximum number of redirects allowed&lt;br /&gt;
 -m, --max-time &amp;lt;seconds&amp;gt;                          Maximum time allowed for transfer&lt;br /&gt;
     --metalink                                    Process given URLs as metalink XML file&lt;br /&gt;
     --mptcp                                       Enable Multipath TCP&lt;br /&gt;
     --negotiate                                   Use HTTP Negotiate (SPNEGO) authentication&lt;br /&gt;
 -n, --netrc                                       Must read .netrc for username and password&lt;br /&gt;
     --netrc-file &amp;lt;filename&amp;gt;                       Specify FILE for netrc&lt;br /&gt;
     --netrc-optional                              Use either .netrc or URL&lt;br /&gt;
 -:, --next                                        Make next URL use separate options&lt;br /&gt;
     --no-alpn                                     Disable the ALPN TLS extension&lt;br /&gt;
 -N, --no-buffer                                   Disable buffering of the output stream&lt;br /&gt;
     --no-clobber                                  Do not overwrite files that already exist&lt;br /&gt;
     --no-keepalive                                Disable TCP keepalive on the connection&lt;br /&gt;
     --no-npn                                      Disable the NPN TLS extension&lt;br /&gt;
     --no-progress-meter                           Do not show the progress meter&lt;br /&gt;
     --no-sessionid                                Disable SSL session-ID reusing&lt;br /&gt;
     --noproxy &amp;lt;no-proxy-list&amp;gt;                     List of hosts which do not use proxy&lt;br /&gt;
     --ntlm                                        HTTP NTLM authentication&lt;br /&gt;
     --ntlm-wb                                     HTTP NTLM authentication with winbind&lt;br /&gt;
     --oauth2-bearer &amp;lt;token&amp;gt;                       OAuth 2 Bearer Token&lt;br /&gt;
 -o, --output &amp;lt;file&amp;gt;                               Write to file instead of stdout&lt;br /&gt;
     --output-dir &amp;lt;dir&amp;gt;                            Directory to save files in&lt;br /&gt;
 -Z, --parallel                                    Perform transfers in parallel&lt;br /&gt;
     --parallel-immediate                          Do not wait for multiplexing&lt;br /&gt;
     --parallel-max &amp;lt;num&amp;gt;                          Maximum concurrency for parallel transfers&lt;br /&gt;
     --pass &amp;lt;phrase&amp;gt;                               Passphrase for the private key&lt;br /&gt;
     --path-as-is                                  Do not squash .. sequences in URL path&lt;br /&gt;
     --pinnedpubkey &amp;lt;hashes&amp;gt;                       Public key to verify peer against&lt;br /&gt;
     --post301                                     Do not switch to GET after a 301 redirect&lt;br /&gt;
     --post302                                     Do not switch to GET after a 302 redirect&lt;br /&gt;
     --post303                                     Do not switch to GET after a 303 redirect&lt;br /&gt;
     --preproxy &amp;lt;[protocol://]host[:port]&amp;gt;         Use this proxy first&lt;br /&gt;
 -#, --progress-bar                                Display transfer progress as a bar&lt;br /&gt;
     --proto &amp;lt;protocols&amp;gt;                           Enable/disable PROTOCOLS&lt;br /&gt;
     --proto-default &amp;lt;protocol&amp;gt;                    Use PROTOCOL for any URL missing a scheme&lt;br /&gt;
     --proto-redir &amp;lt;protocols&amp;gt;                     Enable/disable PROTOCOLS on redirect&lt;br /&gt;
 -x, --proxy &amp;lt;[protocol://]host[:port]&amp;gt;            Use this proxy&lt;br /&gt;
     --proxy-anyauth                               Pick any proxy authentication method&lt;br /&gt;
     --proxy-basic                                 Use Basic authentication on the proxy&lt;br /&gt;
     --proxy-ca-native                             Load CA certs from the OS to verify proxy&lt;br /&gt;
     --proxy-cacert &amp;lt;file&amp;gt;                         CA certificates to verify proxy against&lt;br /&gt;
     --proxy-capath &amp;lt;dir&amp;gt;                          CA directory to verify proxy against&lt;br /&gt;
     --proxy-cert &amp;lt;cert[:passwd]&amp;gt;                  Set client certificate for proxy&lt;br /&gt;
     --proxy-cert-type &amp;lt;type&amp;gt;                      Client certificate type for HTTPS proxy&lt;br /&gt;
     --proxy-ciphers &amp;lt;list&amp;gt;                        TLS 1.2 (1.1, 1.0) ciphers to use for proxy&lt;br /&gt;
     --proxy-crlfile &amp;lt;file&amp;gt;                        Set a CRL list for proxy&lt;br /&gt;
     --proxy-digest                                Digest auth with the proxy&lt;br /&gt;
     --proxy-header &amp;lt;header/@file&amp;gt;                 Pass custom header(s) to proxy&lt;br /&gt;
     --proxy-http2                                 Use HTTP/2 with HTTPS proxy&lt;br /&gt;
     --proxy-insecure                              Skip HTTPS proxy cert verification&lt;br /&gt;
     --proxy-key &amp;lt;key&amp;gt;                             Private key for HTTPS proxy&lt;br /&gt;
     --proxy-key-type &amp;lt;type&amp;gt;                       Private key file type for proxy&lt;br /&gt;
     --proxy-negotiate                             HTTP Negotiate (SPNEGO) auth with the proxy&lt;br /&gt;
     --proxy-ntlm                                  NTLM authentication with the proxy&lt;br /&gt;
     --proxy-pass &amp;lt;phrase&amp;gt;                         Passphrase for private key for HTTPS proxy&lt;br /&gt;
     --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;                 FILE/HASHES public key to verify proxy with&lt;br /&gt;
     --proxy-service-name &amp;lt;name&amp;gt;                   SPNEGO proxy service name&lt;br /&gt;
     --proxy-ssl-allow-beast                       Allow this security flaw for HTTPS proxy&lt;br /&gt;
     --proxy-ssl-auto-client-cert                  Auto client certificate for proxy&lt;br /&gt;
     --proxy-tls13-ciphers &amp;lt;list&amp;gt;                  TLS 1.3 proxy cipher suites&lt;br /&gt;
     --proxy-tlsauthtype &amp;lt;type&amp;gt;                    TLS authentication type for HTTPS proxy&lt;br /&gt;
     --proxy-tlspassword &amp;lt;string&amp;gt;                  TLS password for HTTPS proxy&lt;br /&gt;
     --proxy-tlsuser &amp;lt;name&amp;gt;                        TLS username for HTTPS proxy&lt;br /&gt;
     --proxy-tlsv1                                 TLSv1 for HTTPS proxy&lt;br /&gt;
 -U, --proxy-user &amp;lt;user:password&amp;gt;                  Proxy user and password&lt;br /&gt;
     --proxy1.0 &amp;lt;host[:port]&amp;gt;                      Use HTTP/1.0 proxy on given port&lt;br /&gt;
 -p, --proxytunnel                                 HTTP proxy tunnel (using CONNECT)&lt;br /&gt;
     --pubkey &amp;lt;key&amp;gt;                                SSH Public key filename&lt;br /&gt;
 -Q, --quote &amp;lt;command&amp;gt;                             Send command(s) to server before transfer&lt;br /&gt;
     --random-file &amp;lt;file&amp;gt;                          File for reading random data from&lt;br /&gt;
 -r, --range &amp;lt;range&amp;gt;                               Retrieve only the bytes within RANGE&lt;br /&gt;
     --rate &amp;lt;max request rate&amp;gt;                     Request rate for serial transfers&lt;br /&gt;
     --raw                                         Do HTTP raw; no transfer decoding&lt;br /&gt;
 -e, --referer &amp;lt;URL&amp;gt;                               Referrer URL&lt;br /&gt;
 -J, --remote-header-name                          Use the header-provided filename&lt;br /&gt;
 -O, --remote-name                                 Write output to file named as remote file&lt;br /&gt;
     --remote-name-all                             Use the remote filename for all URLs&lt;br /&gt;
 -R, --remote-time                                 Set remote file&#039;s time on local output&lt;br /&gt;
     --remove-on-error                             Remove output file on errors&lt;br /&gt;
 -X, --request &amp;lt;method&amp;gt;                            Specify request method to use&lt;br /&gt;
     --request-target &amp;lt;path&amp;gt;                       Specify the target for this request&lt;br /&gt;
     --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;       Resolve host+port to address&lt;br /&gt;
     --retry &amp;lt;num&amp;gt;                                 Retry request if transient problems occur&lt;br /&gt;
     --retry-all-errors                            Retry all errors (with --retry)&lt;br /&gt;
     --retry-connrefused                           Retry on connection refused (with --retry)&lt;br /&gt;
     --retry-delay &amp;lt;seconds&amp;gt;                       Wait time between retries&lt;br /&gt;
     --retry-max-time &amp;lt;seconds&amp;gt;                    Retry only within this period&lt;br /&gt;
     --sasl-authzid &amp;lt;identity&amp;gt;                     Identity for SASL PLAIN authentication&lt;br /&gt;
     --sasl-ir                                     Initial response in SASL authentication&lt;br /&gt;
     --service-name &amp;lt;name&amp;gt;                         SPNEGO service name&lt;br /&gt;
 -S, --show-error                                  Show error even when -s is used&lt;br /&gt;
 -i, --show-headers                                Show response headers in output&lt;br /&gt;
     --sigalgs &amp;lt;list&amp;gt;                              TLS signature algorithms to use&lt;br /&gt;
 -s, --silent                                      Silent mode&lt;br /&gt;
     --skip-existing                               Skip download if local file already exists&lt;br /&gt;
     --socks4 &amp;lt;host[:port]&amp;gt;                        SOCKS4 proxy on given host + port&lt;br /&gt;
     --socks4a &amp;lt;host[:port]&amp;gt;                       SOCKS4a proxy on given host + port&lt;br /&gt;
     --socks5 &amp;lt;host[:port]&amp;gt;                        SOCKS5 proxy on given host + port&lt;br /&gt;
     --socks5-basic                                Username/password auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi                               Enable GSS-API auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi-nec                           Compatibility with NEC SOCKS5 server&lt;br /&gt;
     --socks5-gssapi-service &amp;lt;name&amp;gt;                SOCKS5 proxy service name for GSS-API&lt;br /&gt;
     --socks5-hostname &amp;lt;host[:port]&amp;gt;               SOCKS5 proxy, pass hostname to proxy&lt;br /&gt;
 -Y, --speed-limit &amp;lt;speed&amp;gt;                         Stop transfers slower than this&lt;br /&gt;
 -y, --speed-time &amp;lt;seconds&amp;gt;                        Trigger &#039;speed-limit&#039; abort after this time&lt;br /&gt;
     --ssl                                         Try enabling TLS&lt;br /&gt;
     --ssl-allow-beast                             Allow security flaw to improve interop&lt;br /&gt;
     --ssl-auto-client-cert                        Use auto client certificate (Schannel)&lt;br /&gt;
     --ssl-no-revoke                               Disable cert revocation checks (Schannel)&lt;br /&gt;
     --ssl-reqd                                    Require SSL/TLS&lt;br /&gt;
     --ssl-revoke-best-effort                      Ignore missing cert CRL dist points&lt;br /&gt;
     --ssl-sessions &amp;lt;filename&amp;gt;                     Load/save SSL session tickets from/to this file&lt;br /&gt;
 -2, --sslv2                                       SSLv2&lt;br /&gt;
 -3, --sslv3                                       SSLv3&lt;br /&gt;
     --stderr &amp;lt;file&amp;gt;                               Where to redirect stderr&lt;br /&gt;
     --styled-output                               Enable styled output for HTTP headers&lt;br /&gt;
     --suppress-connect-headers                    Suppress proxy CONNECT response headers&lt;br /&gt;
     --tcp-fastopen                                Use TCP Fast Open&lt;br /&gt;
     --tcp-nodelay                                 Set TCP_NODELAY&lt;br /&gt;
 -t, --telnet-option &amp;lt;opt=val&amp;gt;                     Set telnet option&lt;br /&gt;
     --tftp-blksize &amp;lt;value&amp;gt;                        Set TFTP BLKSIZE option&lt;br /&gt;
     --tftp-no-options                             Do not send any TFTP options&lt;br /&gt;
 -z, --time-cond &amp;lt;time&amp;gt;                            Transfer based on a time condition&lt;br /&gt;
     --tls-earlydata                               Allow use of TLSv1.3 early data (0RTT)&lt;br /&gt;
     --tls-max &amp;lt;VERSION&amp;gt;                           Maximum allowed TLS version&lt;br /&gt;
     --tls13-ciphers &amp;lt;list&amp;gt;                        TLS 1.3 cipher suites to use&lt;br /&gt;
     --tlsauthtype &amp;lt;type&amp;gt;                          TLS authentication type&lt;br /&gt;
     --tlspassword &amp;lt;string&amp;gt;                        TLS password&lt;br /&gt;
     --tlsuser &amp;lt;name&amp;gt;                              TLS username&lt;br /&gt;
 -1, --tlsv1                                       TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.0                                     TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.1                                     TLSv1.1 or greater&lt;br /&gt;
     --tlsv1.2                                     TLSv1.2 or greater&lt;br /&gt;
     --tlsv1.3                                     TLSv1.3 or greater&lt;br /&gt;
     --tr-encoding                                 Request compressed transfer encoding&lt;br /&gt;
     --trace &amp;lt;file&amp;gt;                                Write a debug trace to FILE&lt;br /&gt;
     --trace-ascii &amp;lt;file&amp;gt;                          Like --trace, but without hex output&lt;br /&gt;
     --trace-config &amp;lt;string&amp;gt;                       Details to log in trace/verbose output&lt;br /&gt;
     --trace-ids                                   Transfer + connection ids in verbose output&lt;br /&gt;
     --trace-time                                  Add time stamps to trace/verbose output&lt;br /&gt;
     --unix-socket &amp;lt;path&amp;gt;                          Connect through this Unix domain socket&lt;br /&gt;
 -T, --upload-file &amp;lt;file&amp;gt;                          Transfer local FILE to destination&lt;br /&gt;
     --upload-flags &amp;lt;flags&amp;gt;                        IMAP upload behavior&lt;br /&gt;
     --url &amp;lt;url/file&amp;gt;                              URL(s) to work with&lt;br /&gt;
     --url-query &amp;lt;data&amp;gt;                            Add a URL query part&lt;br /&gt;
 -B, --use-ascii                                   Use ASCII/text transfer&lt;br /&gt;
 -u, --user &amp;lt;user:password&amp;gt;                        Server user and password&lt;br /&gt;
 -A, --user-agent &amp;lt;name&amp;gt;                           Send User-Agent &amp;lt;name&amp;gt; to server&lt;br /&gt;
     --variable &amp;lt;[%]name=text/@file&amp;gt;               Set variable&lt;br /&gt;
 -v, --verbose                                     Make the operation more talkative&lt;br /&gt;
 -V, --version                                     Show version number and quit&lt;br /&gt;
     --vlan-priority &amp;lt;priority&amp;gt;                    Set VLAN priority&lt;br /&gt;
 -w, --write-out &amp;lt;format&amp;gt;                          Output FORMAT after completion&lt;br /&gt;
     --xattr                                       Store metadata in extended file attributes&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl(1)                                                                                          curl Manual                                                                                          curl(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       curl - transfer a URL&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       curl [options / URLs]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       curl  is a tool for transferring data from or to a server. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS,&lt;br /&gt;
       RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. The command is designed to work without user interaction.&lt;br /&gt;
&lt;br /&gt;
       curl offers a busload of useful tricks like proxy support, user authentication, FTP upload, HTTP post, SSL connections, cookies, file transfer resume and more. As you will see below, the  number  of&lt;br /&gt;
       features will make your head spin.&lt;br /&gt;
&lt;br /&gt;
       curl is powered by libcurl for all transfer-related features. See libcurl(3) for details.&lt;br /&gt;
&lt;br /&gt;
URL&lt;br /&gt;
       The URL syntax is protocol-dependent. You find a detailed description in RFC 3986.&lt;br /&gt;
&lt;br /&gt;
       You can specify multiple URLs or parts of URLs by writing part sets within braces and quoting the URL as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://site.{one,two,three}.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       or you can get sequences of alphanumeric series by using [] as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[1-100].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[001-100].txt&amp;quot;    (with leading zeros)&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[a-z].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       Nested sequences are not supported, but you can use several ones next to each other:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       You  can  specify  any amount of URLs on the command line. They will be fetched in a sequential manner in the specified order. You can specify command line options and URLs mixed and in any order on&lt;br /&gt;
       the command line.&lt;br /&gt;
&lt;br /&gt;
       You can specify a step counter for the ranges to get every Nth number or letter:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[1-100:10].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[a-z:2].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       When using [] or {} sequences when invoked from a command line prompt, you probably have to put the full URL within double quotes to avoid the shell from interfering with  it.  This  also  goes  for&lt;br /&gt;
       other characters treated special, like for example &#039;&amp;amp;&#039;, &#039;?&#039; and &#039;*&#039;.&lt;br /&gt;
&lt;br /&gt;
       Provide the IPv6 zone index in the URL with an escaped percentage sign and the interface name. Like in&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://[fe80::3%25eth0]/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       If  you  specify URL without protocol:// prefix, curl will attempt to guess what protocol you might want. It will then default to HTTP but try other protocols based on often-used host name prefixes.&lt;br /&gt;
       For example, for host names starting with &amp;quot;ftp.&amp;quot; curl will assume you want to speak FTP.&lt;br /&gt;
&lt;br /&gt;
       curl will do its best to use what you pass to it as a URL. It is not trying to validate it as a syntactically correct URL by any means but is fairly liberal with what it accepts.&lt;br /&gt;
&lt;br /&gt;
       curl will attempt to re-use connections for multiple file transfers, so that getting many files from the same server will not do multiple connects / handshakes. This improves speed. Of  course  this&lt;br /&gt;
       is only done on files specified on a single command line and cannot be used between separate curl invocations.&lt;br /&gt;
&lt;br /&gt;
OUTPUT&lt;br /&gt;
       If  not  told  otherwise,  curl  writes the received data to stdout. It can be instructed to instead save that data into a local file, using the -o, --output or -O, --remote-name options. If curl is&lt;br /&gt;
       given multiple URLs to transfer on the command line, it similarly needs multiple options for where to save them.&lt;br /&gt;
&lt;br /&gt;
       curl does not parse or otherwise &amp;quot;understand&amp;quot; the content it gets or writes as output. It does no encoding or decoding, unless explicitly asked to with dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
PROTOCOLS&lt;br /&gt;
       curl supports numerous protocols, or put in URL terms: schemes. Your particular build may not support them all.&lt;br /&gt;
&lt;br /&gt;
       DICT   Lets you lookup words using online dictionaries.&lt;br /&gt;
&lt;br /&gt;
       FILE   Read or write local files. curl does not support accessing file:// URL remotely, but when running on Microsoft Windows using the native UNC approach will work.&lt;br /&gt;
&lt;br /&gt;
       FTP(S) curl supports the File Transfer Protocol with a lot of tweaks and levers. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       GOPHER(S)&lt;br /&gt;
              Retrieve files.&lt;br /&gt;
&lt;br /&gt;
       HTTP(S)&lt;br /&gt;
              curl supports HTTP with numerous options and variations. It can speak HTTP version 0.9, 1.0, 1.1, 2 and 3 depending on build options and the correct command line options.&lt;br /&gt;
&lt;br /&gt;
       IMAP(S)&lt;br /&gt;
              Using the mail reading protocol, curl can &amp;quot;download&amp;quot; emails for you. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       LDAP(S)&lt;br /&gt;
              curl can do directory lookups for you, with or without TLS.&lt;br /&gt;
&lt;br /&gt;
       MQTT   curl supports MQTT version 3. Downloading over MQTT equals &amp;quot;subscribe&amp;quot; to a topic while uploading/posting equals &amp;quot;publish&amp;quot; on a topic. MQTT over TLS is not supported (yet).&lt;br /&gt;
&lt;br /&gt;
       POP3(S)&lt;br /&gt;
              Downloading from a pop3 server means getting a mail. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       RTMP(S)&lt;br /&gt;
              The Realtime Messaging Protocol is primarily used to server streaming media and curl can download it.&lt;br /&gt;
&lt;br /&gt;
       RTSP   curl supports RTSP 1.0 downloads.&lt;br /&gt;
&lt;br /&gt;
       SCP    curl supports SSH version 2 scp transfers.&lt;br /&gt;
&lt;br /&gt;
       SFTP   curl supports SFTP (draft 5) done over SSH version 2.&lt;br /&gt;
&lt;br /&gt;
       SMB(S) curl supports SMB version 1 for upload and download.&lt;br /&gt;
&lt;br /&gt;
       SMTP(S)&lt;br /&gt;
              Uploading contents to an SMTP server means sending an email. With or without TLS.&lt;br /&gt;
&lt;br /&gt;
       TELNET Telling curl to fetch a telnet URL starts an interactive session where it sends what it reads on stdin and outputs what the server sends it.&lt;br /&gt;
&lt;br /&gt;
       TFTP   curl can do TFTP downloads and uploads.&lt;br /&gt;
&lt;br /&gt;
PROGRESS METER&lt;br /&gt;
       curl normally displays a progress meter during operations, indicating the amount of transferred data, transfer speeds and estimated time left, etc. The progress meter displays the transfer  rate  in&lt;br /&gt;
       bytes per second. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024 bytes. 1M is 1048576 bytes.&lt;br /&gt;
&lt;br /&gt;
       curl  displays this data to the terminal by default, so if you invoke curl to do an operation and it is about to write data to the terminal, it disables the progress meter as otherwise it would mess&lt;br /&gt;
       up the output mixing progress meter and response data.&lt;br /&gt;
&lt;br /&gt;
       If you want a progress meter for HTTP POST or PUT requests, you need to redirect the response output to a file, using shell redirect (&amp;gt;), -o, --output or similar.&lt;br /&gt;
&lt;br /&gt;
       This does not apply to FTP upload as that operation does not spit out any response data to the terminal.&lt;br /&gt;
&lt;br /&gt;
       If you prefer a progress &amp;quot;bar&amp;quot; instead of the regular meter, -#, --progress-bar is your friend. You can also disable the progress meter completely with the -s, --silent option.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       Options start with one or two dashes. Many of the options require an additional value next to them.&lt;br /&gt;
&lt;br /&gt;
       The short &amp;quot;single-dash&amp;quot; form of the options, -d for example, may be used with or without a space between it and its value, although a space is a recommended separator. The long  &amp;quot;double-dash&amp;quot;  form,&lt;br /&gt;
       -d, --data for example, requires a space between it and its value.&lt;br /&gt;
&lt;br /&gt;
       Short version options that do not need any additional values can be used immediately next to each other, like for example you can specify all the options -O, -L and -v at once as -OLv.&lt;br /&gt;
&lt;br /&gt;
       In  general,  all  boolean  options are enabled with --option and yet again disabled with --no-option. That is, you use the same option name but prefix it with &amp;quot;no-&amp;quot;. However, in this list we mostly&lt;br /&gt;
       only list and show the --option version of them.&lt;br /&gt;
&lt;br /&gt;
       --abstract-unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through an abstract Unix domain socket, instead of using the network.  Note: netstat shows the path of an abstract socket prefixed with &#039;@&#039;, however the &amp;lt;path&amp;gt; argument  should&lt;br /&gt;
              not have this leading character.&lt;br /&gt;
&lt;br /&gt;
              If --abstract-unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --abstract-unix-socket socketpath https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --unix-socket. Added in 7.53.0.&lt;br /&gt;
&lt;br /&gt;
       --alt-svc &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS)  This  option  enables the alt-svc parser in curl. If the file name points to an existing alt-svc cache file, that will be used. After a completed transfer, the cache will be saved to&lt;br /&gt;
              the file name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle the cache in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --alt-svc can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --alt-svc svc.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --connect-to. Added in 7.64.1.&lt;br /&gt;
&lt;br /&gt;
       --anyauth&lt;br /&gt;
              (HTTP) Tells curl to figure out authentication method by itself, and use the most secure one the remote site claims to support. This is done by first doing a  request  and  checking  the  re‐&lt;br /&gt;
              sponse-headers,  thus  possibly  inducing  an  extra network round-trip. This is used instead of setting a specific authentication method, which you can do with --basic, --digest, --ntlm, and&lt;br /&gt;
              --negotiate.&lt;br /&gt;
&lt;br /&gt;
              Using --anyauth is not recommended if you do uploads from stdin, since it may require data to be sent twice and then the client must be able to rewind. If the need should arise when uploading&lt;br /&gt;
              from stdin, the upload operation will fail.&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --anyauth --user me:pwd https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth, --basic and --digest.&lt;br /&gt;
&lt;br /&gt;
       -a, --append&lt;br /&gt;
              (FTP  SFTP)  When used in an upload, this makes curl append to the target file instead of overwriting it. If the remote file does not exist, it will be created. Note that this flag is ignored&lt;br /&gt;
              by some SFTP servers (including OpenSSH).&lt;br /&gt;
&lt;br /&gt;
              Providing -a, --append multiple times has no extra effect.  Disable it again with --no-append.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --upload-file local --append ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range and -C, --continue-at.&lt;br /&gt;
&lt;br /&gt;
       --aws-sigv4 &amp;lt;provider1[:provider2[:region[:service]]]&amp;gt;&lt;br /&gt;
              Use AWS V4 signature authentication in the transfer.&lt;br /&gt;
&lt;br /&gt;
              The provider argument is a string that is used by the algorithm when creating outgoing authentication headers.&lt;br /&gt;
&lt;br /&gt;
              The region argument is a string that points to a geographic area of a resources collection (region-code) when the region name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              The service argument is a string that points to a function provided by a cloud (service-code) when the service name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              If --aws-sigv4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --aws-sigv4 &amp;quot;aws:amz:east-2:es&amp;quot; --user &amp;quot;key:secret&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic and -u, --user. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --basic&lt;br /&gt;
              (HTTP) Tells curl to use HTTP Basic authentication with the remote host. This is the default and this option is usually pointless, unless you use it to override a previously set  option  that&lt;br /&gt;
              sets a different authentication method (such as --ntlm, --digest, or --negotiate).&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --basic https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate file to verify the peer. The file may contain multiple CA certificates. The certificate(s) must be in PEM format. Normally curl is built to&lt;br /&gt;
              use a default file for this, so this option is typically used to alter that default file.&lt;br /&gt;
&lt;br /&gt;
              curl recognizes the environment variable named &#039;CURL_CA_BUNDLE&#039; if it is set, and uses the given path as a path to a CA cert bundle. This option overrides that variable.&lt;br /&gt;
&lt;br /&gt;
              The windows version of curl will automatically look for a CA certs file named &#039;curl-ca-bundle.crt&#039;, either in the same directory as curl.exe, or in the Current Working Directory,  or  in  any&lt;br /&gt;
              folder along your PATH.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module (libnsspem.so) needs to be available for this option to work properly.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then this option is supported for backward compatibility with other SSL engines, but it should not be set. If the option is not&lt;br /&gt;
              set, then curl will use the certificates in the system and user Keychain to verify the peer, which is the preferred method of verifying the peer&#039;s certificate chain.&lt;br /&gt;
&lt;br /&gt;
              (Schannel only) This option is supported for Schannel in Windows 7 or later with libcurl 7.60 or later. This option is supported for backward compatibility with other SSL engines; instead  it&lt;br /&gt;
              is recommended to use Windows&#039; store of root certificates (the default for Schannel).&lt;br /&gt;
&lt;br /&gt;
              If --cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cacert CA-file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --capath and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate directory to verify the peer. Multiple paths can be provided by separating them with &amp;quot;:&amp;quot; (e.g.  &amp;quot;path1:path2:path3&amp;quot;). The certificates must&lt;br /&gt;
              be in PEM format, and if curl is built against OpenSSL, the directory must have been processed using the c_rehash utility supplied with OpenSSL. Using --capath can allow OpenSSL-powered  curl&lt;br /&gt;
              to make SSL-connections much more efficiently than using --cacert if the --cacert file contains many CA certificates.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default capath value will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --capath /local/directory https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --cert-status&lt;br /&gt;
              (TLS) Tells curl to verify the status of the server certificate by using the Certificate Status Request (aka. OCSP stapling) TLS extension.&lt;br /&gt;
&lt;br /&gt;
              If  this  option  is enabled and the server sends an invalid (e.g. expired) response, if the response suggests that the server certificate has been revoked, or no response at all is received,&lt;br /&gt;
              the verification fails.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --cert-status multiple times has no extra effect.  Disable it again with --no-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-status https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey. Added in 7.41.0.&lt;br /&gt;
&lt;br /&gt;
       --cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Tells curl what type the provided client certificate is using. PEM, DER, ENG and P12 are recognized types.&lt;br /&gt;
&lt;br /&gt;
              The default type depends on the TLS backend and is usually PEM, however for Secure Transport and Schannel it is P12. If -E, --cert is a pkcs11: URI then ENG is the default type.&lt;br /&gt;
&lt;br /&gt;
              If --cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-type PEM --cert file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -E, --cert, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       -E, --cert &amp;lt;certificate[:password]&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified client certificate file when getting a file with HTTPS, FTPS or another SSL-based protocol. The certificate must be in PKCS#12  format  if  using  Secure&lt;br /&gt;
              Transport, or PEM format if using any other engine. If the optional password is not specified, it will be queried for on the terminal. Note that this option assumes a certificate file that is&lt;br /&gt;
              the private key and the client certificate concatenated. See -E, --cert and --key to specify them independently.&lt;br /&gt;
&lt;br /&gt;
              In the &amp;lt;certificate&amp;gt; portion of the argument, you must escape the character &amp;quot;:&amp;quot; as &amp;quot;\:&amp;quot; so that it is not recognized as the password delimiter. Similarly, you must escape the character &amp;quot;\&amp;quot; as&lt;br /&gt;
              &amp;quot;\\&amp;quot; so that it is not recognized as an escape character.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against the NSS SSL library then this option can tell curl the nickname of the certificate to use within the NSS database defined by the environment variable SSL_DIR (or by&lt;br /&gt;
              default /etc/pki/nssdb). If the NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files may be loaded.&lt;br /&gt;
&lt;br /&gt;
              If you provide a path relative to the current directory, you must prefix the path with &amp;quot;./&amp;quot; in order to avoid confusion with an NSS database nickname.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a certificate located in a PKCS#11 device. A  string  begin‐&lt;br /&gt;
              ning  with  &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --cert-type option will&lt;br /&gt;
              be set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then the certificate string can either be the name of a certificate/private key in the system or user keychain, or the path  to&lt;br /&gt;
              a PKCS#12-encoded certificate and private key. If you want to use a file from the current directory, please precede it with &amp;quot;./&amp;quot; prefix, in order to avoid confusion with a nickname.&lt;br /&gt;
&lt;br /&gt;
              (Schannel  only) Client certificates must be specified by a path expression to a certificate store. (Loading PFX is not supported; you can import it to a store first). You can use &amp;quot;&amp;lt;store lo‐&lt;br /&gt;
              cation&amp;gt;\&amp;lt;store name&amp;gt;\&amp;lt;thumbprint&amp;gt;&amp;quot; to refer to a certificate in the system certificates store, for example, &amp;quot;CurrentUser\MY\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a&amp;quot;. Thumbprint is usually  a&lt;br /&gt;
              SHA-1  hex string which you can see in certificate details. Following store locations are supported: CurrentUser, LocalMachine, CurrentService, Services, CurrentUserGroupPolicy, LocalMachine‐&lt;br /&gt;
              GroupPolicy, LocalMachineEnterprise.&lt;br /&gt;
&lt;br /&gt;
              If -E, --cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certfile --key keyfile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cert-type, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       --ciphers &amp;lt;list of ciphers&amp;gt;&lt;br /&gt;
              (TLS) Specifies which ciphers to use in the connection. The list of ciphers must specify valid ciphers. Read up on SSL cipher list details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              If --ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --compressed-ssh&lt;br /&gt;
              (SCP SFTP) Enables built-in SSH compression.  This is a request, not an order; the server may or may not do it.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed-ssh multiple times has no extra effect.  Disable it again with --no-compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed-ssh sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --compressed. Added in 7.56.0.&lt;br /&gt;
&lt;br /&gt;
       --compressed&lt;br /&gt;
              (HTTP) Request a compressed response using one of the algorithms curl supports, and automatically decompress the content. Headers are not modified.&lt;br /&gt;
&lt;br /&gt;
              If this option is used and the server sends an unsupported encoding, curl will report an error. This is a request, not an order; the server may or may not deliver data compressed.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed multiple times has no extra effect.  Disable it again with --no-compressed.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
       -K, --config &amp;lt;file&amp;gt;&lt;br /&gt;
              Specify a text file to read curl arguments from. The command line arguments found in the text file will be used as if they were provided on the command line.&lt;br /&gt;
&lt;br /&gt;
              Options and their parameters must be specified on the same line in the file, separated by whitespace, colon, or the equals sign. Long option names can optionally be given in the  config  file&lt;br /&gt;
              without the initial double dashes and if so, the colon or equals characters can be used as separators. If the option is specified with one or two dashes, there can be no colon or equals char‐&lt;br /&gt;
              acter between the option and its parameter.&lt;br /&gt;
&lt;br /&gt;
              If the parameter contains whitespace (or starts with : or =), the parameter must be enclosed within quotes. Within double quotes, the following escape sequences are available: \\, \&amp;quot;, \t, \n,&lt;br /&gt;
              \r and \v. A backslash preceding any other letter is ignored.&lt;br /&gt;
&lt;br /&gt;
              If the first column of a config line is a &#039;#&#039; character, the rest of the line will be treated as a comment.&lt;br /&gt;
&lt;br /&gt;
              Only write one option per physical line in the config file.&lt;br /&gt;
&lt;br /&gt;
              Specify the filename to -K, --config as &#039;-&#039; to make curl read the file from stdin.&lt;br /&gt;
&lt;br /&gt;
              Note that to be able to specify a URL in the config file, you need to specify it using the --url option, and not by simply writing the URL on its own line. So, it could look similar to this:&lt;br /&gt;
&lt;br /&gt;
              url = &amp;quot;https://curl.se/docs/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # --- Example file ---&lt;br /&gt;
               # this is a comment&lt;br /&gt;
               url = &amp;quot;example.com&amp;quot;&lt;br /&gt;
               output = &amp;quot;curlhere.html&amp;quot;&lt;br /&gt;
               user-agent = &amp;quot;superagent/1.0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # and fetch another URL too&lt;br /&gt;
               url = &amp;quot;example.com/docs/manpage.html&amp;quot;&lt;br /&gt;
               -O&lt;br /&gt;
               referer = &amp;quot;http://nowhereatall.example.com/&amp;quot;&lt;br /&gt;
               # --- End of example file ---&lt;br /&gt;
&lt;br /&gt;
              When  curl  is  invoked, it (unless -q, --disable is used) checks for a default config file and uses it if found, even when -K, --config is used. The default config file is checked for in the&lt;br /&gt;
              following places in this order:&lt;br /&gt;
&lt;br /&gt;
              1) &amp;quot;$CURL_HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              2) &amp;quot;$XDG_CONFIG_HOME/.curlrc&amp;quot; (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              3) &amp;quot;$HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              4) Windows: &amp;quot;%USERPROFILE%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              5) Windows: &amp;quot;%APPDATA%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              6) Windows: &amp;quot;%USERPROFILE%\Application Data\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              7) Non-Windows: use getpwuid to find the home directory&lt;br /&gt;
&lt;br /&gt;
              8) On Windows, if it finds no .curlrc file in the sequence described above, it checks for one in the same dir the curl executable is placed.&lt;br /&gt;
&lt;br /&gt;
              On Windows two filenames are checked per location: .curlrc and _curlrc, preferring the former. Older versions on Windows checked for _curlrc only.&lt;br /&gt;
&lt;br /&gt;
              -K, --config can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --config file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --connect-timeout &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow curl&#039;s connection to take.  This only limits the connection phase, so if curl connects within the given period it will continue - if not it  will  exit.&lt;br /&gt;
              Since version 7.32.0, this option accepts decimal values.&lt;br /&gt;
&lt;br /&gt;
              The &amp;quot;connection phase&amp;quot; is considered complete when the requested TCP, TLS or QUIC handshakes are done.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --connect-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --connect-timeout 20 https://example.com&lt;br /&gt;
               curl --connect-timeout 3.14 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
              For  a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead.  This option is suitable to direct requests at a specific server, e.g. at a specific cluster node in a cluster of&lt;br /&gt;
              servers. This option is only used to establish the network connection. It does NOT affect the hostname/port that is used for TLS/SSL (e.g. SNI, certificate verification) or for  the  applica‐&lt;br /&gt;
              tion protocols. &amp;quot;HOST1&amp;quot; and &amp;quot;PORT1&amp;quot; may be the empty string, meaning &amp;quot;any host/port&amp;quot;. &amp;quot;HOST2&amp;quot; and &amp;quot;PORT2&amp;quot; may also be the empty string, meaning &amp;quot;use the request&#039;s original host/port&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              A &amp;quot;host&amp;quot; specified to this option is compared as a string, so it needs to match the name used in request URL. It can be either numerical such as &amp;quot;127.0.0.1&amp;quot; or the full host name such as &amp;quot;ex‐&lt;br /&gt;
              ample.org&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              --connect-to can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --connect-to example.com:443:example.net:8443 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and -H, --header. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       -C, --continue-at &amp;lt;offset&amp;gt;&lt;br /&gt;
              Continue/Resume a previous file transfer at the given offset. The given offset is the exact number of bytes that will be skipped, counting from the beginning of the source file before  it  is&lt;br /&gt;
              transferred to the destination. If used with uploads, the FTP server command SIZE will not be used by curl.&lt;br /&gt;
&lt;br /&gt;
              Use &amp;quot;-C -&amp;quot; to tell curl to automatically find out where/how to resume the transfer. It then uses the given output/input files to figure that out.&lt;br /&gt;
&lt;br /&gt;
              If -C, --continue-at is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -C - https://example.com&lt;br /&gt;
               curl -C 400 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range.&lt;br /&gt;
&lt;br /&gt;
       -c, --cookie-jar &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP)  Specify  to which file you want curl to write all cookies after a completed operation. Curl writes all cookies from its in-memory cookie storage to the given file at the end of opera‐&lt;br /&gt;
              tions. If no cookies are known, no data will be written. The file will be written using the Netscape cookie file format. If you set the file name to a single dash, &amp;quot;-&amp;quot;, the  cookies  will  be&lt;br /&gt;
              written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This command line option will activate the cookie engine that makes curl record and use cookies. Another way to activate it is to use the -b, --cookie option.&lt;br /&gt;
&lt;br /&gt;
              If  the  cookie  jar cannot be created or written to, the whole curl operation will not fail or even report an error clearly. Using -v, --verbose will get a warning displayed, but that is the&lt;br /&gt;
              only visible feedback you get about this possibly lethal situation.&lt;br /&gt;
&lt;br /&gt;
              If -c, --cookie-jar is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -c store-here.txt https://example.com&lt;br /&gt;
               curl -c store-here.txt -b read-these https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie.&lt;br /&gt;
&lt;br /&gt;
       -b, --cookie &amp;lt;data|filename&amp;gt;&lt;br /&gt;
              (HTTP) Pass the data to the HTTP server in the Cookie header. It is supposedly the data previously received from the server in  a  &amp;quot;Set-Cookie:&amp;quot;  line.  The  data  should  be  in  the  format&lt;br /&gt;
              &amp;quot;NAME1=VALUE1;  NAME2=VALUE2&amp;quot;.  This  makes  curl  use the cookie header with this content explicitly in all outgoing request(s). If multiple requests are done due to authentication, followed&lt;br /&gt;
              redirects or similar, they will all get this cookie passed on.&lt;br /&gt;
&lt;br /&gt;
              If no &#039;=&#039; symbol is used in the argument, it is instead treated as a filename to read previously stored cookie from. This option also activates the cookie engine which will make  curl  record&lt;br /&gt;
              incoming  cookies,  which may be handy if you are using this in combination with the -L, --location option or do multiple URL transfers on the same invoke. If the file name is exactly a minus&lt;br /&gt;
              (&amp;quot;-&amp;quot;), curl will instead read the contents from stdin.&lt;br /&gt;
&lt;br /&gt;
              The file format of the file to read cookies from should be plain HTTP headers (Set-Cookie style) or the Netscape/Mozilla cookie file format.&lt;br /&gt;
&lt;br /&gt;
              The file specified with -b, --cookie is only used as input. No cookies will be written to the file. To store cookies, use the -c, --cookie-jar option.&lt;br /&gt;
&lt;br /&gt;
              If you use the Set-Cookie file format and do not specify a domain then the cookie is not sent since the domain will never match. To address this, set a domain in Set-Cookie line  (doing  that&lt;br /&gt;
              will include sub-domains) or preferably: use the Netscape format.&lt;br /&gt;
&lt;br /&gt;
              Users often want to both read cookies from a file and write updated cookies back to a file, so using both -b, --cookie and -c, --cookie-jar in the same command line is common.&lt;br /&gt;
&lt;br /&gt;
              -b, --cookie can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -b cookiefile https://example.com&lt;br /&gt;
               curl -b cookiefile -c cookiefile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -c, --cookie-jar and -j, --junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
       --create-dirs&lt;br /&gt;
              When  used in conjunction with the -o, --output option, curl will create the necessary local directory hierarchy as needed. This option creates the directories mentioned with the -o, --output&lt;br /&gt;
              option, nothing else. If the -o, --output file name uses no directory, or if the directories it mentions already exist, no directories will be created.&lt;br /&gt;
&lt;br /&gt;
              Created dirs are made with mode 0750 on unix style file systems.&lt;br /&gt;
&lt;br /&gt;
              To create remote directories when using FTP or SFTP, try --ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Providing --create-dirs multiple times has no extra effect.  Disable it again with --no-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-dirs --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs and --output-dir.&lt;br /&gt;
&lt;br /&gt;
       --create-file-mode &amp;lt;mode&amp;gt;&lt;br /&gt;
              (SFTP SCP FILE) When curl is used to create files remotely using one of the supported protocols, this option allows the user to set which &#039;mode&#039; to set on the file at creation  time,  instead&lt;br /&gt;
              of the default 0644.&lt;br /&gt;
&lt;br /&gt;
              This option takes an octal number as argument.&lt;br /&gt;
&lt;br /&gt;
              If --create-file-mode is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-file-mode 0777 -T localfile sftp://example.com/new&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --crlf (FTP SMTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).&lt;br /&gt;
&lt;br /&gt;
              (SMTP added in 7.40.0)&lt;br /&gt;
&lt;br /&gt;
              Providing --crlf multiple times has no extra effect.  Disable it again with --no-crlf.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlf -T file ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -B, --use-ascii.&lt;br /&gt;
&lt;br /&gt;
       --crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Provide a file using PEM format with a Certificate Revocation List that may specify peer certificates that are to be considered revoked.&lt;br /&gt;
&lt;br /&gt;
              If --crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlfile rejects.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --curves &amp;lt;algorithm list&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl  to  request  specific  curves  to  use  during SSL session establishment according to RFC 8422, 5.1.  Multiple algorithms can be provided by separating them with &amp;quot;:&amp;quot; (e.g.&lt;br /&gt;
              &amp;quot;X25519:P-521&amp;quot;).  The parameter is available identically in the &amp;quot;openssl s_client/s_server&amp;quot; utilities.&lt;br /&gt;
&lt;br /&gt;
              --curves allows a OpenSSL powered curl to make SSL-connections with exactly the (EC) curve requested by the client, avoiding nontransparent client/server negotiations.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default curves list built into openssl will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --curves is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --curves X25519 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       --data-ascii &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This is just an alias for -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-ascii can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-ascii @file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-raw and --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
       --data-binary &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data exactly as specified with no extra processing whatsoever.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a filename. Data is posted in a similar manner as -d, --data does, except that newlines and carriage returns are preserved and con‐&lt;br /&gt;
              versions are never done.&lt;br /&gt;
&lt;br /&gt;
              Like  -d,  --data the default content-type sent to the server is application/x-www-form-urlencoded. If you want the data to be treated as arbitrary binary data by the server then set the con‐&lt;br /&gt;
              tent-type to octet-stream: -H &amp;quot;Content-Type: application/octet-stream&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, the ones following the first will append data as described in -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-binary can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-binary @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       --data-raw &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data similarly to -d, --data but without the special interpretation of the @ character.&lt;br /&gt;
&lt;br /&gt;
              --data-raw can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --data-raw &amp;quot;hello&amp;quot; https://example.com&lt;br /&gt;
               curl --data-raw &amp;quot;@at@at@&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data, similar to the other -d, --data options with the exception that this performs URL-encoding.&lt;br /&gt;
&lt;br /&gt;
              To be CGI-compliant, the &amp;lt;data&amp;gt; part should begin with a name followed by a separator and a content specification. The &amp;lt;data&amp;gt; part can be passed to curl using one of the following syntaxes:&lt;br /&gt;
&lt;br /&gt;
              content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. Just be careful so that the content does not contain any = or @ symbols, as that will then make the syntax match one of the&lt;br /&gt;
                     other cases below!&lt;br /&gt;
&lt;br /&gt;
              =content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. The preceding = symbol is not included in the data.&lt;br /&gt;
&lt;br /&gt;
              name=content&lt;br /&gt;
                     This will make curl URL-encode the content part and pass that on. Note that the name part is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
              @filename&lt;br /&gt;
                     This will make curl load data from the given file (including any newlines), URL-encode that data and pass it on in the POST.&lt;br /&gt;
&lt;br /&gt;
              name@filename&lt;br /&gt;
                     This  will  make  curl  load data from the given file (including any newlines), URL-encode that data and pass it on in the POST. The name part gets an equal sign appended, resulting in&lt;br /&gt;
                     name=urlencoded-file-content. Note that the name is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --data-urlencode name=val https://example.com&lt;br /&gt;
        curl --data-urlencode =encodethis https://example.com&lt;br /&gt;
        curl --data-urlencode name@file https://example.com&lt;br /&gt;
        curl --data-urlencode @fileonly https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -d, --data and --data-raw.&lt;br /&gt;
&lt;br /&gt;
       -d, --data &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP MQTT) Sends the specified data in a POST request to the HTTP server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button. This  will&lt;br /&gt;
              cause curl to pass the data to the server using the content-type application/x-www-form-urlencoded. Compare to -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --data-raw  is  almost  the  same but does not have a special interpretation of the @ character. To post data purely binary, you should instead use the --data-binary option. To URL-encode the&lt;br /&gt;
              value of a form field you may use --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
              If any of these options is used more than once on the same command line, the data pieces specified will be merged with a separating &amp;amp;-symbol. Thus, using &#039;-d name=daniel -d skill=lousy&#039; would&lt;br /&gt;
              generate a post chunk that looks like &#039;name=daniel&amp;amp;skill=lousy&#039;.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or - if you want curl to read the data from stdin. Posting data from a file named &#039;foobar&#039; would&lt;br /&gt;
              thus be done with -d, --data @foobar. When -d, --data is told to read from a file like that, carriage returns and newlines will be stripped out. If you do not want the @ character to  have  a&lt;br /&gt;
              special interpretation use --data-raw instead.&lt;br /&gt;
&lt;br /&gt;
              -d, --data can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; https://example.com&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; -d &amp;quot;tool=cmdline&amp;quot; https://example.com&lt;br /&gt;
               curl -d @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-urlencode and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --delegation &amp;lt;LEVEL&amp;gt;&lt;br /&gt;
              (GSS/kerberos) Set LEVEL to tell the server what it is allowed to delegate when it comes to user credentials.&lt;br /&gt;
&lt;br /&gt;
              none   Do not allow any delegation.&lt;br /&gt;
&lt;br /&gt;
              policy Delegates if and only if the OK-AS-DELEGATE flag is set in the Kerberos service ticket, which is a matter of realm policy.&lt;br /&gt;
&lt;br /&gt;
              always Unconditionally allow the server to delegate.&lt;br /&gt;
&lt;br /&gt;
       If --delegation is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --delegation &amp;quot;none&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -k, --insecure and --ssl.&lt;br /&gt;
&lt;br /&gt;
       --digest&lt;br /&gt;
              (HTTP) Enables HTTP Digest authentication. This is an authentication scheme that prevents the password from being sent over the wire in clear text. Use this in combination with the normal -u,&lt;br /&gt;
              --user option to set user name and password.&lt;br /&gt;
&lt;br /&gt;
              Providing --digest multiple times has no extra effect.  Disable it again with --no-digest.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --digest https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user, --proxy-digest and --anyauth. This option is mutually exclusive to --basic and --ntlm and --negotiate.&lt;br /&gt;
&lt;br /&gt;
       --disable-eprt&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPRT and LPRT commands when doing active FTP transfers. Curl will normally always first attempt to use EPRT, then LPRT before using  PORT,  but  with&lt;br /&gt;
              this  option,  it will use PORT right away. EPRT and LPRT are extensions to the original FTP protocol, and may not work on all servers, but they enable more functionality in a better way than&lt;br /&gt;
              the traditional PORT command.&lt;br /&gt;
&lt;br /&gt;
              --eprt can be used to explicitly enable EPRT again and --no-eprt is an alias for --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              If the server is accessed using IPv6, this option will have no effect as EPRT is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPRT only changes the active behavior. If you want to switch to passive mode you need to not use -P, --ftp-port or force it with --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-eprt multiple times has no extra effect.  Disable it again with --no-disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-eprt ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       --disable-epsv&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPSV command when doing passive FTP transfers. Curl will normally always first attempt to use EPSV before PASV, but with this option, it will not try&lt;br /&gt;
              using EPSV.&lt;br /&gt;
&lt;br /&gt;
              --epsv can be used to explicitly enable EPSV again and --no-epsv is an alias for --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              If the server is an IPv6 host, this option will have no effect as EPSV is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPSV only changes the passive behavior. If you want to switch to active mode you need to use -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-epsv multiple times has no extra effect.  Disable it again with --no-disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-epsv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-eprt and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       -q, --disable&lt;br /&gt;
              If used as the first parameter on the command line, the curlrc config file will not be read and used. See the -K, --config for details on the default config file search path.&lt;br /&gt;
&lt;br /&gt;
              Providing -q, --disable multiple times has no extra effect.  Disable it again with --no-disable.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -q https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --disallow-username-in-url&lt;br /&gt;
              (HTTP) This tells curl to exit if passed a URL containing a username. This is probably most useful when the URL is being provided at runtime or similar.&lt;br /&gt;
&lt;br /&gt;
              Providing --disallow-username-in-url multiple times has no extra effect.  Disable it again with --no-disallow-username-in-url.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disallow-username-in-url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-interface &amp;lt;interface&amp;gt;&lt;br /&gt;
              (DNS)  Tell curl to send outgoing DNS requests through &amp;lt;interface&amp;gt;. This option is a counterpart to --interface (which does not affect DNS). The supplied string must be an interface name (not&lt;br /&gt;
              an address).&lt;br /&gt;
&lt;br /&gt;
              If --dns-interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-ipv4-addr and --dns-ipv6-addr. --dns-interface requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv4-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv4 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv4 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv4-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv4-addr 10.1.2.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv6-addr. --dns-ipv4-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv6-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv6 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv6 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv6-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv6-addr 2a04:4e42::561 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-ipv6-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-servers &amp;lt;addresses&amp;gt;&lt;br /&gt;
              Set the list of DNS servers to be used instead of the system default.  The list of IP addresses should be separated with commas. Port numbers may also optionally be  given  as  :&amp;lt;port-number&amp;gt;&lt;br /&gt;
              after each IP address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-servers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-servers requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-cert-status&lt;br /&gt;
              Same as --cert-status but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-cert-status multiple times has no extra effect.  Disable it again with --no-doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-cert-status --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-insecure&lt;br /&gt;
              Same as -k, --insecure but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-insecure multiple times has no extra effect.  Disable it again with --no-doh-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-insecure --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-url. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-url &amp;lt;URL&amp;gt;&lt;br /&gt;
              Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames, instead of using the default name resolver mechanism. The URL must be HTTPS.&lt;br /&gt;
&lt;br /&gt;
              Some  SSL options that you set for your transfer will apply to DoH since the name lookups take place over SSL. However, the certificate verification settings are not inherited and can be con‐&lt;br /&gt;
              trolled separately via --doh-insecure and --doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              This option is unset if an empty string &amp;quot;&amp;quot; is used as the URL. (Added in 7.85.0)&lt;br /&gt;
&lt;br /&gt;
              If --doh-url is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.62.0.&lt;br /&gt;
&lt;br /&gt;
       -D, --dump-header &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP FTP) Write the received protocol headers to the specified file. If no headers are received, the use of this option will create an empty file.&lt;br /&gt;
&lt;br /&gt;
              When used in FTP, the FTP server response lines are considered being &amp;quot;headers&amp;quot; and thus are saved there.&lt;br /&gt;
&lt;br /&gt;
              Having multiple transfers in one set of operations (i.e. the URLs in one -:, --next clause), will append them to the same file, separated by a blank line.&lt;br /&gt;
&lt;br /&gt;
              If -D, --dump-header is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dump-header store.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output.&lt;br /&gt;
&lt;br /&gt;
       --egd-file &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to the Entropy Gathering Daemon socket. The socket is used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --egd-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --egd-file /random/here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --random-file.&lt;br /&gt;
&lt;br /&gt;
       --engine &amp;lt;name&amp;gt;&lt;br /&gt;
              (TLS) Select the OpenSSL crypto engine to use for cipher operations. Use --engine list to print a list of build-time supported engines. Note that not all (and possibly none)  of  the  engines&lt;br /&gt;
              may be available at runtime.&lt;br /&gt;
&lt;br /&gt;
              If --engine is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --engine flavor https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves.&lt;br /&gt;
&lt;br /&gt;
       --etag-compare &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option makes a conditional HTTP request for the specific ETag read from the given file by sending a custom If-None-Match header using the stored ETag.&lt;br /&gt;
&lt;br /&gt;
              For correct results, make sure that the specified file contains only a single line with the desired ETag. An empty file is parsed as an empty ETag.&lt;br /&gt;
&lt;br /&gt;
              Use the option --etag-save to first save the ETag from a response, and then use this option to compare against the saved ETag in a subsequent request.&lt;br /&gt;
&lt;br /&gt;
              If --etag-compare is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-compare etag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-save and -z, --time-cond. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --etag-save &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option saves an HTTP ETag to the specified file. An ETag is a caching related header, usually returned in a response.&lt;br /&gt;
&lt;br /&gt;
              If no ETag is sent by the server, an empty file is created.&lt;br /&gt;
&lt;br /&gt;
              If --etag-save is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-save storetag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --expect100-timeout &amp;lt;seconds&amp;gt;&lt;br /&gt;
              (HTTP)  Maximum  time  in seconds that you allow curl to wait for a 100-continue response when curl emits an Expects: 100-continue header in its request. By default curl will wait one second.&lt;br /&gt;
              This option accepts decimal values! When curl stops waiting, it will continue as if the response has been received.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --expect100-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --expect100-timeout 2.5 -T file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout. Added in 7.47.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-early&lt;br /&gt;
              Fail and exit on the first detected transfer error.&lt;br /&gt;
&lt;br /&gt;
              When curl is used to do multiple transfers on the command line, it will attempt to operate on each given URL, one by one. By default, it will ignore errors if there are more  URLs  given  and&lt;br /&gt;
              the last URL&#039;s success will determine the error code curl returns. So early failures will be &amp;quot;hidden&amp;quot; by subsequent successful transfers.&lt;br /&gt;
&lt;br /&gt;
              Using  this option, curl will instead return an error on the first transfer that fails, independent of the amount of URLs that are given on the command line. This way, no transfer failures go&lt;br /&gt;
              undetected by scripts and similar.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              This option does not imply -f, --fail, which causes transfers to fail due to the server&#039;s HTTP status code. You can combine the two options, however note -f,  --fail  is  not  global  and  is&lt;br /&gt;
              therefore contained by -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-early multiple times has no extra effect.  Disable it again with --no-fail-early.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-early https://example.com https://two.example&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail and --fail-with-body. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-with-body&lt;br /&gt;
              (HTTP)  Return  an error on server errors where the HTTP response code is 400 or greater). In normal cases when an HTTP server fails to deliver a document, it returns an HTML document stating&lt;br /&gt;
              so (which often also describes why and more). This flag will still allow curl to output and save that content but also to return error 22.&lt;br /&gt;
&lt;br /&gt;
              This is an alternative option to -f, --fail which makes curl fail for the same circumstances but without saving the content.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-with-body multiple times has no extra effect.  Disable it again with --no-fail-with-body.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-with-body https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. This option is mutually exclusive to -f, --fail. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       -f, --fail&lt;br /&gt;
              (HTTP) Fail fast with no output at all on server errors. This is useful to enable scripts and users to better deal with failed attempts. In normal cases when an HTTP server fails to deliver a&lt;br /&gt;
              document, it returns an HTML document stating so (which often also describes why and more). This flag will prevent curl from outputting that and return error 22.&lt;br /&gt;
&lt;br /&gt;
              This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).&lt;br /&gt;
&lt;br /&gt;
              Providing -f, --fail multiple times has no extra effect.  Disable it again with --no-fail.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --fail-with-body. This option is mutually exclusive to --fail-with-body.&lt;br /&gt;
&lt;br /&gt;
       --false-start&lt;br /&gt;
              (TLS) Tells curl to use false start during the TLS handshake. False start is a mode where a TLS client will start sending application data before verifying the server&#039;s Finished message, thus&lt;br /&gt;
              saving a round trip when performing a full handshake.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the NSS and Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --false-start multiple times has no extra effect.  Disable it again with --no-false-start.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --false-start https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tcp-fastopen. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --form-escape&lt;br /&gt;
              (HTTP) Tells curl to pass on names of multipart form fields and files using backslash-escaping instead of percent-encoding.&lt;br /&gt;
&lt;br /&gt;
              If --form-escape is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-escape -F &#039;field\name=curl&#039; -F &#039;file=@load&amp;quot;this&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form. Added in 7.81.0.&lt;br /&gt;
&lt;br /&gt;
       --form-string &amp;lt;name=string&amp;gt;&lt;br /&gt;
              (HTTP SMTP IMAP) Similar to -F, --form except that the value string for the named parameter is used literally. Leading &#039;@&#039; and &#039;&amp;lt;&#039; characters, and the &#039;;type=&#039; string in  the  value  have  no&lt;br /&gt;
              special meaning. Use this in preference to -F, --form if there&#039;s any possibility that the string value may accidentally trigger the &#039;@&#039; or &#039;&amp;lt;&#039; features of -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --form-string can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-string &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form.&lt;br /&gt;
&lt;br /&gt;
       -F, --form &amp;lt;name=content&amp;gt;&lt;br /&gt;
              (HTTP  SMTP  IMAP) For HTTP protocol family, this lets curl emulate a filled-in form in which a user has pressed the submit button. This causes curl to POST data using the Content-Type multi‐&lt;br /&gt;
              part/form-data according to RFC 2388.&lt;br /&gt;
&lt;br /&gt;
              For SMTP and IMAP protocols, this is the means to compose a multipart mail message to transmit.&lt;br /&gt;
&lt;br /&gt;
              This enables uploading of binary files etc. To force the &#039;content&#039; part to be a file, prefix the file name with an @ sign. To just get the content part from a file, prefix the file name  with&lt;br /&gt;
              the  symbol  &amp;lt;.  The  difference  between @ and &amp;lt; is then that @ makes a file get attached in the post as a file upload, while the &amp;lt; makes a text field and just get the contents for that text&lt;br /&gt;
              field from a file.&lt;br /&gt;
&lt;br /&gt;
              Tell curl to read content from stdin instead of a file by using - as filename. This goes for both @ and &amp;lt; constructs. When stdin is used, the contents is buffered in memory first by  curl  to&lt;br /&gt;
              determine  its  size  and allow a possible resend. Defining a part&#039;s data from a named non-regular file (such as a named pipe or similar) is unfortunately not subject to buffering and will be&lt;br /&gt;
              effectively read at transmission time; since the full size is unknown before the transfer starts, such data is sent as chunks by HTTP and rejected by IMAP.&lt;br /&gt;
&lt;br /&gt;
              Example: send an image to an HTTP server, where &#039;profile&#039; is the name of the form-field to which the file portrait.jpg will be the input:&lt;br /&gt;
&lt;br /&gt;
               curl -F profile=@portrait.jpg https://example.com/upload.cgi&lt;br /&gt;
&lt;br /&gt;
              Example: send your name and shoe size in two text fields to the server:&lt;br /&gt;
&lt;br /&gt;
               curl -F name=John -F shoesize=11 https://example.com/&lt;br /&gt;
&lt;br /&gt;
              Example: send your essay in a text field to the server. Send it as a plain text field, but get the contents for it from a local file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;story=&amp;lt;hugefile.txt&amp;quot; https://example.com/&lt;br /&gt;
&lt;br /&gt;
              You can also tell curl what Content-Type to use by using &#039;type=&#039;, in a manner similar to:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;web=@index.html;type=text/html&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;name=daniel;type=text/foo&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              You can also explicitly change the name field of a file upload part by setting filename=, like this:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@localfile;filename=nameinpost&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              If filename/path contains &#039;,&#039; or &#039;;&#039;, it must be quoted by double-quotes like:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@\&amp;quot;local,file\&amp;quot;;filename=\&amp;quot;name;in;post\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;file=@&amp;quot;local,file&amp;quot;;filename=&amp;quot;name;in;post&amp;quot;&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              Note that if a filename/path is quoted by double-quotes, any double-quote or backslash within the filename must be escaped by backslash.&lt;br /&gt;
&lt;br /&gt;
              Quoting must also be applied to non-file data if it contains semicolons, leading/trailing spaces or leading double quotes:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;colors=&amp;quot;red; green; blue&amp;quot;;type=text/x-myapp&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              You can add custom headers to the field by setting headers=, like&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=\&amp;quot;X-submit-type: OK\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=@headerfile&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              The headers= keyword may appear more that once and above notes about quoting apply. When headers are read from a file, Empty lines and lines starting with &#039;#&#039; are comments and  ignored;  each&lt;br /&gt;
              header  can  be  folded  by  splitting  between two words and starting the continuation line with a space; embedded carriage-returns and trailing spaces are stripped.  Here is an example of a&lt;br /&gt;
              header file contents:&lt;br /&gt;
&lt;br /&gt;
                # This file contain two headers.&lt;br /&gt;
                X-header-1: this is a header&lt;br /&gt;
&lt;br /&gt;
                # The following header is folded.&lt;br /&gt;
                X-header-2: this is&lt;br /&gt;
                 another header&lt;br /&gt;
&lt;br /&gt;
              To support sending multipart mail messages, the syntax is extended as follows:&lt;br /&gt;
              - name can be omitted: the equal sign is the first character of the argument,&lt;br /&gt;
              - if data starts with &#039;(&#039;, this signals to start a new multipart: it can be followed by a content type specification.&lt;br /&gt;
              - a multipart can be terminated with a &#039;=)&#039; argument.&lt;br /&gt;
&lt;br /&gt;
              Example: the following command sends an SMTP mime email consisting in an inline part in two alternative formats: plain text and HTML. It attaches a text file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=(;type=multipart/alternative&#039; \&lt;br /&gt;
                    -F &#039;=plain text message&#039; \&lt;br /&gt;
                    -F &#039;= &amp;lt;body&amp;gt;HTML message&amp;lt;/body&amp;gt;;type=text/html&#039; \&lt;br /&gt;
                    -F &#039;=)&#039; -F &#039;=@textfile.txt&#039; ...  smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              Data can be encoded for transfer using encoder=. Available encodings are binary and 8bit that do nothing else than adding the corresponding Content-Transfer-Encoding header,  7bit  that  only&lt;br /&gt;
              rejects 8-bit characters with a transfer error, quoted-printable and base64 that encodes data according to the corresponding schemes, limiting lines length to 76 characters.&lt;br /&gt;
&lt;br /&gt;
              Example: send multipart mail with a quoted-printable text message and a base64 attached file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=text message;encoder=quoted-printable&#039; \&lt;br /&gt;
                    -F &#039;=@localfile;encoder=base64&#039; ... smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See further examples and details in the MANUAL.&lt;br /&gt;
&lt;br /&gt;
              -F, --form can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form &amp;quot;name=curl&amp;quot; --form &amp;quot;file=@loadthis&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data, --form-string and --form-escape. This option is mutually exclusive to -d, --data and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --ftp-account &amp;lt;data&amp;gt;&lt;br /&gt;
              (FTP) When an FTP server asks for &amp;quot;account data&amp;quot; after user name and password has been provided, this data is sent off using the ACCT command.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-account is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-account &amp;quot;mr.robot&amp;quot; ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-alternative-to-user &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP)  If  authenticating  with the USER and PASS commands fails, send this command.  When connecting to Tumbleweed&#039;s Secure Transport server over FTPS using a client certificate, using &amp;quot;SITE&lt;br /&gt;
              AUTH&amp;quot; will tell the server to retrieve the username from the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-alternative-to-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-alternative-to-user &amp;quot;U53r&amp;quot; ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-account and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-create-dirs&lt;br /&gt;
              (FTP SFTP) When an FTP or SFTP URL/operation uses a path that does not currently exist on the server, the standard behavior of curl is to fail. Using this option, curl will instead attempt to&lt;br /&gt;
              create missing directories.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-create-dirs multiple times has no extra effect.  Disable it again with --no-ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-create-dirs -T file ftp://example.com/remote/path/file&lt;br /&gt;
&lt;br /&gt;
              See also --create-dirs.&lt;br /&gt;
&lt;br /&gt;
       --ftp-method &amp;lt;method&amp;gt;&lt;br /&gt;
              (FTP) Control what method curl should use to reach a file on an FTP(S) server. The method argument should be one of the following alternatives:&lt;br /&gt;
&lt;br /&gt;
              multicwd&lt;br /&gt;
                     curl  does  a  single CWD operation for each path part in the given URL. For deep hierarchies this means many commands. This is how RFC 1738 says it should be done. This is the default&lt;br /&gt;
                     but the slowest behavior.&lt;br /&gt;
&lt;br /&gt;
              nocwd  curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full path to the server for all these commands. This is the fastest behavior.&lt;br /&gt;
&lt;br /&gt;
              singlecwd&lt;br /&gt;
                     curl does one CWD with the full target directory and then operates on the file &amp;quot;normally&amp;quot; (like in the multicwd case). This is somewhat more standards compliant than &#039;nocwd&#039; but  with‐&lt;br /&gt;
                     out the full penalty of &#039;multicwd&#039;.&lt;br /&gt;
&lt;br /&gt;
       If --ftp-method is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --ftp-method multicwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method nocwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method singlecwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
&lt;br /&gt;
       See also -l, --list-only.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pasv&lt;br /&gt;
              (FTP) Use passive mode for the data connection. Passive is the internal default behavior, but using this option can be used to override a previous -P, --ftp-port option.&lt;br /&gt;
&lt;br /&gt;
              Reversing an enforced passive really is not doable but you must then instead enforce the correct -P, --ftp-port again.&lt;br /&gt;
&lt;br /&gt;
              Passive mode means that curl will try the EPSV command first and then PASV, unless --disable-epsv is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pasv multiple times has no extra effect.  Disable it again with --no-ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pasv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
       -P, --ftp-port &amp;lt;address&amp;gt;&lt;br /&gt;
              (FTP)  Reverses the default initiator/listener roles when connecting with FTP. This option makes curl use active mode. curl then tells the server to connect back to the client&#039;s specified ad‐&lt;br /&gt;
              dress and port, while passive mode asks the server to setup an IP address and port for it to connect to. &amp;lt;address&amp;gt; should be one of:&lt;br /&gt;
&lt;br /&gt;
              interface&lt;br /&gt;
                     e.g. &amp;quot;eth0&amp;quot; to specify which interface&#039;s IP address you want to use (Unix only)&lt;br /&gt;
&lt;br /&gt;
              IP address&lt;br /&gt;
                     e.g. &amp;quot;192.168.10.1&amp;quot; to specify the exact IP address&lt;br /&gt;
&lt;br /&gt;
              host name&lt;br /&gt;
                     e.g. &amp;quot;my.host.domain&amp;quot; to specify the machine&lt;br /&gt;
&lt;br /&gt;
              -      make curl pick the same IP address that is already used for the control connection&lt;br /&gt;
&lt;br /&gt;
       Disable the use of PORT with --ftp-pasv. Disable the attempt to use the EPRT command instead of PORT by using --disable-eprt. EPRT is really PORT++.&lt;br /&gt;
&lt;br /&gt;
       You can also append &amp;quot;:[start]-[end]&amp;quot; to the right of the address, to tell curl what TCP port range to use. That means you specify a port range, from a lower to a higher number. A single number works&lt;br /&gt;
       as well, but do note that it increases the risk of failure since the port may not be available.&lt;br /&gt;
&lt;br /&gt;
       If -P, --ftp-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl -P - ftp:/example.com&lt;br /&gt;
        curl -P eth0 ftp:/example.com&lt;br /&gt;
        curl -P 192.168.0.2 ftp:/example.com&lt;br /&gt;
&lt;br /&gt;
       See also --ftp-pasv and --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pret&lt;br /&gt;
              (FTP) Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers, mainly drftpd, require this non-standard command for directory listings as well as up and downloads in PASV&lt;br /&gt;
              mode.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pret multiple times has no extra effect.  Disable it again with --no-ftp-pret.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pret ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -P, --ftp-port and --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-skip-pasv-ip&lt;br /&gt;
              (FTP) Tell curl to not use the IP address the server suggests in its response to curl&#039;s PASV command when curl connects the data connection. Instead curl will re-use the same  IP  address  it&lt;br /&gt;
              already uses for the control connection.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.74.0 this option is enabled by default.&lt;br /&gt;
&lt;br /&gt;
              This option has no effect if PORT, EPRT or EPSV is used instead of PASV.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-skip-pasv-ip multiple times has no extra effect.  Disable it again with --no-ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-skip-pasv-ip ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;&lt;br /&gt;
              (FTP)  Sets the CCC mode. The passive mode will not initiate the shutdown, but instead wait for the server to do it, and will not reply to the shutdown from the server. The active mode initi‐&lt;br /&gt;
              ates the shutdown and waits for a reply from the server.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc-mode multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc&lt;br /&gt;
              (FTP) Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after authenticating. The rest of the control channel communication will be unencrypted. This allows NAT routers  to  follow&lt;br /&gt;
              the FTP transaction. The default mode is passive.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and --ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-control&lt;br /&gt;
              (FTP) Require SSL/TLS for the FTP login, clear for transfer.  Allows secure authentication, but non-encrypted data transfers for efficiency.  Fails the transfer if the server does not support&lt;br /&gt;
              SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-control multiple times has no extra effect.  Disable it again with --no-ftp-ssl-control.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-control ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl.&lt;br /&gt;
&lt;br /&gt;
       -G, --get&lt;br /&gt;
              When used, this option will make all data specified with -d, --data, --data-binary or --data-urlencode to be used in an HTTP GET request instead of the POST request that  otherwise  would  be&lt;br /&gt;
              used. The data will be appended to the URL with a &#039;?&#039; separator.&lt;br /&gt;
&lt;br /&gt;
              If used in combination with -I, --head, the POST data will instead be appended to the URL with a HEAD request.&lt;br /&gt;
&lt;br /&gt;
              Providing -G, --get multiple times has no extra effect.  Disable it again with --no-get.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --get https://example.com&lt;br /&gt;
               curl --get -d &amp;quot;tool=curl&amp;quot; -d &amp;quot;age=old&amp;quot; https://example.com&lt;br /&gt;
               curl --get -I -d &amp;quot;tool=curl&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       -g, --globoff&lt;br /&gt;
              This  option  switches  off  the &amp;quot;URL globbing parser&amp;quot;. When you set this option, you can specify URLs that contain the letters {}[] without having curl itself interpret them. Note that these&lt;br /&gt;
              letters are not normal legal URL contents but they should be encoded according to the URI standard.&lt;br /&gt;
&lt;br /&gt;
              Providing -g, --globoff multiple times has no extra effect.  Disable it again with --no-globoff.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -g &amp;quot;https://example.com/{[]}}}}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config and -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --happy-eyeballs-timeout-ms &amp;lt;milliseconds&amp;gt;&lt;br /&gt;
              Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6 addresses for dual-stack hosts, giving IPv6 a head-start of the specified number of milliseconds. If the IPv6 ad‐&lt;br /&gt;
              dress cannot be connected to within that time, then a connection attempt is made to the IPv4 address in parallel. The first connection to be established is the one that is used.&lt;br /&gt;
&lt;br /&gt;
              The  range  of  suggested useful values is limited. Happy Eyeballs RFC 6555 says &amp;quot;It is RECOMMENDED that connection attempts be paced 150-250 ms apart to balance human factors against network&lt;br /&gt;
              load.&amp;quot; libcurl currently defaults to 200 ms. Firefox and Chrome currently default to 300 ms.&lt;br /&gt;
&lt;br /&gt;
              If --happy-eyeballs-timeout-ms is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --happy-eyeballs-timeout-ms 500 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time and --connect-timeout. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --haproxy-protocol&lt;br /&gt;
              (HTTP) Send a HAProxy PROXY protocol v1 header at the beginning of the connection. This is used by some load balancers and reverse proxies to indicate the client&#039;s true IP address and port.&lt;br /&gt;
&lt;br /&gt;
              This option is primarily useful when sending test requests to a service that expects this header.&lt;br /&gt;
&lt;br /&gt;
              Providing --haproxy-protocol multiple times has no extra effect.  Disable it again with --no-haproxy-protocol.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --haproxy-protocol https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.60.0.&lt;br /&gt;
&lt;br /&gt;
       -I, --head&lt;br /&gt;
              (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the command HEAD which this uses to get nothing but the header of a document. When used on an FTP or FILE file, curl displays  the&lt;br /&gt;
              file size and last modification time only.&lt;br /&gt;
&lt;br /&gt;
              Providing -I, --head multiple times has no extra effect.  Disable it again with --no-head.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get, -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -H, --header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP IMAP SMTP) Extra header to include in information sent. When used within an HTTP request, it is added to the regular request headers.&lt;br /&gt;
&lt;br /&gt;
              For an IMAP or SMTP MIME uploaded mail built with -F, --form options, it is prepended to the resulting MIME document, effectively including it at the mail global level. It does not affect raw&lt;br /&gt;
              uploaded mails (Added in 7.56.0).&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of extra headers. Note that if you should add a custom header that has the same name as one of the internal ones curl would use, your externally set header will  be&lt;br /&gt;
              used  instead  of the internal one.  This allows you to make even trickier stuff than curl would normally do. You should not replace internally set headers without knowing perfectly well what&lt;br /&gt;
              you are doing. Remove an internal header by giving a replacement without content on the right side of the colon, as in: -H &amp;quot;Host:&amp;quot;. If you send the custom header with no-value then its header&lt;br /&gt;
              must be terminated with a semicolon, such as -H &amp;quot;X-Custom-Header;&amp;quot; to send &amp;quot;X-Custom-Header:&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              curl  will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              This option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
              Please note that most anti-spam utilities check the presence and value of several MIME mail headers: these are &amp;quot;From:&amp;quot;, &amp;quot;To:&amp;quot;, &amp;quot;Date:&amp;quot; and &amp;quot;Subject:&amp;quot; among others and  should  be  added  with&lt;br /&gt;
              this option.&lt;br /&gt;
&lt;br /&gt;
              You need --proxy-header to send custom headers intended for an HTTP proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
              Passing on a &amp;quot;Transfer-Encoding: chunked&amp;quot; header when doing an HTTP request with a request body, will make curl send the data using chunked encoding.&lt;br /&gt;
&lt;br /&gt;
              WARNING: headers set with this option will be set in all HTTP requests - even after redirects are followed, like when told with -L, --location. This can lead to the header being sent to other&lt;br /&gt;
              hosts than the original host, so sensitive headers should be used with caution combined with following redirects.&lt;br /&gt;
&lt;br /&gt;
              -H, --header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -H &amp;quot;X-First-Name: Joe&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;User-Agent: yes-please/2000&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;Host:&amp;quot; https://example.com&lt;br /&gt;
               curl -H @headers.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -e, --referer.&lt;br /&gt;
&lt;br /&gt;
       -h, --help &amp;lt;category&amp;gt;&lt;br /&gt;
              Usage help. This lists all commands of the &amp;lt;category&amp;gt;.  If no arg was provided, curl will display the most important command line arguments.  If the argument &amp;quot;all&amp;quot;  was  provided,  curl  will&lt;br /&gt;
              display all options available.  If the argument &amp;quot;category&amp;quot; was provided, curl will display all categories and their meanings.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --help all&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --hostpubmd5 &amp;lt;md5&amp;gt;&lt;br /&gt;
              (SFTP  SCP) Pass a string containing 32 hexadecimal digits. The string should be the 128 bit MD5 checksum of the remote host&#039;s public key, curl will refuse the connection with the host unless&lt;br /&gt;
              the md5sums match.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubmd5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256.&lt;br /&gt;
&lt;br /&gt;
       --hostpubsha256 &amp;lt;sha256&amp;gt;&lt;br /&gt;
              (SFTP SCP) Pass a string containing a Base64-encoded SHA256 hash of the remote host&#039;s public key. Curl will refuse the connection with the host unless the hashes match.&lt;br /&gt;
&lt;br /&gt;
              This feature requires libcurl to be built with libssh2 and does not work with other SSH backends.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubsha256 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubmd5. Added in 7.80.0.&lt;br /&gt;
&lt;br /&gt;
       --hsts &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS) This option enables HSTS for the transfer. If the file name points to an existing HSTS cache file, that will be used. After a completed transfer, the cache will be saved to  the  file&lt;br /&gt;
              name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to use HTTP:// for a transfer involving a host name that exists in the HSTS cache, it upgrades the transfer to use HTTPS. Each HSTS cache entry has an individual life time af‐&lt;br /&gt;
              ter which the upgrade is no longer performed.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle HSTS in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --hsts can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hsts cache.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.74.0.&lt;br /&gt;
&lt;br /&gt;
       --http0.9&lt;br /&gt;
              (HTTP) Tells curl to be fine with HTTP version 0.9 response.&lt;br /&gt;
&lt;br /&gt;
              HTTP/0.9 is a completely headerless response and therefore you can also connect with this to non-HTTP servers and still get a response since curl will simply transparently downgrade - if  al‐&lt;br /&gt;
              lowed.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, HTTP/0.9 is disabled by default.&lt;br /&gt;
&lt;br /&gt;
              Providing --http0.9 multiple times has no extra effect.  Disable it again with --no-http0.9.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http0.9 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1, --http2 and --http3. Added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
       -0, --http1.0&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.0 instead of using its internally preferred HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Providing -0, --http1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http0.9 and --http1.1. This option is mutually exclusive to --http1.1 and --http2 and --http2-prior-knowledge and --http3.&lt;br /&gt;
&lt;br /&gt;
       --http1.1&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --http1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -0, --http1.0 and --http0.9. This option is mutually exclusive to -0, --http1.0 and --http2 and --http2-prior-knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http2-prior-knowledge&lt;br /&gt;
              (HTTP)  Tells  curl  to  issue  its non-TLS HTTP requests using HTTP/2 without HTTP/1.1 Upgrade. It requires prior knowledge that the server supports HTTP/2 straight away. HTTPS requests will&lt;br /&gt;
              still do HTTP/2 the standard way with negotiated protocol version in the TLS handshake.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2-prior-knowledge multiple times has no extra effect.  Disable it again with --no-http2-prior-knowledge.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2-prior-knowledge https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http2 and --http3. --http2-prior-knowledge requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and  -0,  --http1.0  and&lt;br /&gt;
              --http2 and --http3. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --http2&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 2.&lt;br /&gt;
&lt;br /&gt;
              For HTTPS, this means curl will attempt to negotiate HTTP/2 in the TLS handshake. curl does this by default.&lt;br /&gt;
&lt;br /&gt;
              For HTTP, this means curl will attempt to upgrade the request to HTTP/2 using the Upgrade: request header.&lt;br /&gt;
&lt;br /&gt;
              When curl uses HTTP/2 over HTTPS, it does not itself insist on TLS 1.2 or higher even though that is required by the specification. A user can add this version requirement with --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http3. --http2 requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2-prior-&lt;br /&gt;
              knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http3-only&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Instructs curl to use HTTP/3 to the host in the URL, with no fallback to earlier HTTP versions. HTTP/3 can only be used for HTTPS and not for HTTP URLs. For HTTP, this option will trigger  an&lt;br /&gt;
              error.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              This option will make curl fail if a QUIC connection cannot be established, it will not attempt any other HTTP version on its own. Use --http3 for similar functionality with a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3-only multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3-only https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1,  --http2 and --http3. --http3-only requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and&lt;br /&gt;
              --http2 and --http2-prior-knowledge and --http3. Added in 7.88.0.&lt;br /&gt;
&lt;br /&gt;
       --http3&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Tells curl to try HTTP/3 to the host in the URL, but fallback to earlier HTTP versions if the HTTP/3 connection establishment fails. HTTP/3 is only available for HTTPS and not for HTTP URLs.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              When asked to use HTTP/3, curl will issue a separate attempt to use older HTTP versions with a slight delay, so if the HTTP/3 transfer fails or is very slow, curl will still  try  to  proceed&lt;br /&gt;
              with an older HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Use --http3-only for similar functionality without a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1  and  --http2.  --http3 requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2 and&lt;br /&gt;
              --http2-prior-knowledge and --http3-only. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --ignore-content-length&lt;br /&gt;
              (FTP HTTP) For HTTP, Ignore the Content-Length header. This is particularly useful for servers running Apache 1.x, which will report incorrect Content-Length for files  larger  than  2  giga‐&lt;br /&gt;
              bytes.&lt;br /&gt;
&lt;br /&gt;
              For FTP (since 7.46.0), skip the RETR command to figure out the size before downloading a file.&lt;br /&gt;
&lt;br /&gt;
              This option does not work for HTTP if libcurl was built to use hyper.&lt;br /&gt;
&lt;br /&gt;
              Providing --ignore-content-length multiple times has no extra effect.  Disable it again with --no-ignore-content-length.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ignore-content-length https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
       -i, --include&lt;br /&gt;
              Include the HTTP response headers in the output. The HTTP response headers can include things like server name, cookies, date of the document, HTTP version and more...&lt;br /&gt;
&lt;br /&gt;
              To view the request headers, consider the -v, --verbose option.&lt;br /&gt;
&lt;br /&gt;
              Providing -i, --include multiple times has no extra effect.  Disable it again with --no-include.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -i https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       -k, --insecure&lt;br /&gt;
              (TLS  SFTP  SCP) By default, every secure connection curl makes is verified to be secure before the transfer takes place. This option makes curl skip the verification step and proceed without&lt;br /&gt;
              checking.&lt;br /&gt;
&lt;br /&gt;
              When this option is not used for protocols using TLS, curl verifies the server&#039;s TLS certificate before it continues: that the certificate contains the right name which matches the host  name&lt;br /&gt;
              used in the URL and that the certificate has been signed by a CA certificate present in the cert store.  See this online resource for further details:&lt;br /&gt;
               https://curl.se/docs/sslcerts.html&lt;br /&gt;
&lt;br /&gt;
              For SFTP and SCP, this option makes curl skip the known_hosts verification.  known_hosts is a file normally stored in the user&#039;s home directory in the &amp;quot;.ssh&amp;quot; subdirectory, which contains host&lt;br /&gt;
              names and their public keys.&lt;br /&gt;
&lt;br /&gt;
              WARNING: using this option makes the transfer insecure.&lt;br /&gt;
&lt;br /&gt;
              When curl uses secure protocols it trusts responses and allows for example HSTS and Alt-Svc information to be stored and used subsequently. Using -k, --insecure can make curl  trust  and  use&lt;br /&gt;
              such information from malicious servers.&lt;br /&gt;
&lt;br /&gt;
              Providing -k, --insecure multiple times has no extra effect.  Disable it again with --no-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --insecure https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-insecure, --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --interface &amp;lt;name&amp;gt;&lt;br /&gt;
              Perform an operation using a specified interface. You can enter interface name, IP address or host name. An example could look like:&lt;br /&gt;
&lt;br /&gt;
               curl --interface eth0:1 https://www.example.com/&lt;br /&gt;
&lt;br /&gt;
              On Linux it can be used to specify a VRF, but the binary needs to either have CAP_NET_RAW or to be run as root. More information about Linux VRF: https://www.kernel.org/doc/Documentation/net‐&lt;br /&gt;
              working/vrf.txt&lt;br /&gt;
&lt;br /&gt;
              If --interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface.&lt;br /&gt;
&lt;br /&gt;
       -4, --ipv4&lt;br /&gt;
              This option tells curl to use IPv4 addresses only, and not for example try IPv6.&lt;br /&gt;
&lt;br /&gt;
              Providing -4, --ipv4 multiple times has no extra effect.  Disable it again with --no-ipv4.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv4 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -6, --ipv6.&lt;br /&gt;
&lt;br /&gt;
       -6, --ipv6&lt;br /&gt;
              This option tells curl to use IPv6 addresses only, and not for example try IPv4.&lt;br /&gt;
&lt;br /&gt;
              Providing -6, --ipv6 multiple times has no extra effect.  Disable it again with --no-ipv6.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv6 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -4, --ipv4.&lt;br /&gt;
&lt;br /&gt;
       --json &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) Sends the specified JSON data in a POST request to the HTTP server. --json works as a shortcut for passing on these three options:&lt;br /&gt;
&lt;br /&gt;
               --data [arg]&lt;br /&gt;
               --header &amp;quot;Content-Type: application/json&amp;quot;&lt;br /&gt;
               --header &amp;quot;Accept: application/json&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              There is no verification that the passed in data is actual JSON or that the syntax is correct.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or a single dash (-) if you want curl to read the data from stdin.  Posting  data  from  a  file&lt;br /&gt;
              named &#039;foobar&#039; would thus be done with --json @foobar and to instead read the data from stdin, use --json @-.&lt;br /&gt;
&lt;br /&gt;
              If this option is used more than once on the same command line, the additional data pieces will be concatenated to the previous before sending.&lt;br /&gt;
&lt;br /&gt;
              The headers this option sets can be overridden with -H, --header as usual.&lt;br /&gt;
&lt;br /&gt;
              --json can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;: &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;:&#039; --json &#039; &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json @prepared https://example.com&lt;br /&gt;
               curl --json @- https://example.com &amp;lt; json.txt&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file. Added in 7.82.0.&lt;br /&gt;
&lt;br /&gt;
       -j, --junk-session-cookies&lt;br /&gt;
              (HTTP)  When  curl  is told to read cookies from a given file, this option will make it discard all &amp;quot;session cookies&amp;quot;. This will basically have the same effect as if a new session is started.&lt;br /&gt;
              Typical browsers always discard session cookies when they are closed down.&lt;br /&gt;
&lt;br /&gt;
              Providing -j, --junk-session-cookies multiple times has no extra effect.  Disable it again with --no-junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --junk-session-cookies -b cookies.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie and -c, --cookie-jar.&lt;br /&gt;
&lt;br /&gt;
       --keepalive-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              This option sets the time a connection needs to remain idle before sending keepalive probes and the time between individual keepalive probes. It is currently effective  on  operating  systems&lt;br /&gt;
              offering  the  TCP_KEEPIDLE  and TCP_KEEPINTVL socket options (meaning Linux, recent AIX, HP-UX and more).  Keepalives are used by the TCP stack to detect broken networks on idle connections.&lt;br /&gt;
              The number of missed keepalive probes before declaring the connection down is OS dependent and is commonly 9 or 10. This option has no effect if --no-keepalive is used.&lt;br /&gt;
&lt;br /&gt;
              If unspecified, the option defaults to 60 seconds.&lt;br /&gt;
&lt;br /&gt;
              If --keepalive-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --keepalive-time 20 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-keepalive and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Private key file type. Specify which type your --key provided private key is. DER, PEM, and ENG are supported. If not specified, PEM is assumed.&lt;br /&gt;
&lt;br /&gt;
              If --key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --key-type DER --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key.&lt;br /&gt;
&lt;br /&gt;
       --key &amp;lt;key&amp;gt;&lt;br /&gt;
              (TLS SSH) Private key file name. Allows you to provide your private key in this separate file. For SSH, if not specified, curl  tries  the  following  candidates  in  order:  &#039;~/.ssh/id_rsa&#039;,&lt;br /&gt;
              &#039;~/.ssh/id_dsa&#039;, &#039;./id_rsa&#039;, &#039;./id_dsa&#039;.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a private key located in a PKCS#11 device. A string begin‐&lt;br /&gt;
              ning with &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --key-type option will be&lt;br /&gt;
              set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against Secure Transport or Schannel then this option is ignored for TLS protocols (HTTPS, etc). Those backends expect the private key to be already present in the keychain&lt;br /&gt;
              or PKCS#12 file containing the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certificate --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key-type and -E, --cert.&lt;br /&gt;
&lt;br /&gt;
       --krb &amp;lt;level&amp;gt;&lt;br /&gt;
              (FTP) Enable Kerberos authentication and use. The level must be entered and should be one of &#039;clear&#039;, &#039;safe&#039;, &#039;confidential&#039;, or &#039;private&#039;. Should you use a level that is not  one  of  these,&lt;br /&gt;
              &#039;private&#039; will instead be used.&lt;br /&gt;
&lt;br /&gt;
              If --krb is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --krb clear ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --delegation and --ssl. --krb requires that the underlying libcurl was built to support Kerberos.&lt;br /&gt;
&lt;br /&gt;
       --libcurl &amp;lt;file&amp;gt;&lt;br /&gt;
              Append this option to any ordinary curl command line, and you will get libcurl-using C source code written to the file that does the equivalent of what your command-line operation does!&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --libcurl is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --libcurl client.c https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --limit-rate &amp;lt;speed&amp;gt;&lt;br /&gt;
              Specify the maximum transfer rate you want curl to use - for both downloads and uploads. This feature is useful if you have a limited pipe and you would like your transfer not to use your en‐&lt;br /&gt;
              tire bandwidth. To make it slower than it otherwise would be.&lt;br /&gt;
&lt;br /&gt;
              The given speed is measured in bytes/second, unless a suffix is appended.  Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or  &#039;G&#039;  makes  it&lt;br /&gt;
              gigabytes. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024. Examples: 200K, 3m and 1G.&lt;br /&gt;
&lt;br /&gt;
              The rate limiting logic works on averaging the transfer speed to no more than the set threshold over a period of multiple seconds.&lt;br /&gt;
&lt;br /&gt;
              If you also use the -Y, --speed-limit option, that option will take precedence and might cripple the rate-limiting slightly, to help keeping the speed-limit logic working.&lt;br /&gt;
&lt;br /&gt;
              If --limit-rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --limit-rate 100K https://example.com&lt;br /&gt;
               curl --limit-rate 1000 https://example.com&lt;br /&gt;
               curl --limit-rate 10M https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --rate, -Y, --speed-limit and -y, --speed-time.&lt;br /&gt;
&lt;br /&gt;
       -l, --list-only&lt;br /&gt;
              (FTP  POP3)  (FTP)  When listing an FTP directory, this switch forces a name-only view. This is especially useful if the user wants to machine-parse the contents of an FTP directory since the&lt;br /&gt;
              normal directory view does not use a standard look or format. When used like this, the option causes an NLST command to be sent to the server instead of LIST.&lt;br /&gt;
&lt;br /&gt;
              Note: Some FTP servers list only files in their response to NLST; they do not include sub-directories and symbolic links.&lt;br /&gt;
&lt;br /&gt;
              (POP3) When retrieving a specific email from POP3, this switch forces a LIST command to be performed instead of RETR. This is particularly useful if the user wants to see if a  specific  mes‐&lt;br /&gt;
              sage-id exists on the server and what size it is.&lt;br /&gt;
&lt;br /&gt;
              Note:  When  combined  with -X, --request, this option can be used to send a UIDL command instead, so the user may use the email&#039;s unique identifier rather than its message-id to make the re‐&lt;br /&gt;
              quest.&lt;br /&gt;
&lt;br /&gt;
              Providing -l, --list-only multiple times has no extra effect.  Disable it again with --no-list-only.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --list-only ftp://example.com/dir/&lt;br /&gt;
&lt;br /&gt;
              See also -Q, --quote and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --local-port &amp;lt;num/range&amp;gt;&lt;br /&gt;
              Set a preferred single number or range (FROM-TO) of local port numbers to use for the connection(s).  Note that port numbers by nature are a scarce resource that will be busy at times so set‐&lt;br /&gt;
              ting this range to something too narrow might cause unnecessary connection setup failures.&lt;br /&gt;
&lt;br /&gt;
              If --local-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --local-port 1000-3000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -g, --globoff.&lt;br /&gt;
&lt;br /&gt;
       --location-trusted&lt;br /&gt;
              (HTTP) Like -L, --location, but will allow sending the name + password to all hosts that the site may redirect to. This may or may not introduce a security breach if the site redirects you to&lt;br /&gt;
              a site to which you will send your authentication info (which is plaintext in the case of HTTP Basic authentication).&lt;br /&gt;
&lt;br /&gt;
              Providing --location-trusted multiple times has no extra effect.  Disable it again with --no-location-trusted.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --location-trusted -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       -L, --location&lt;br /&gt;
              (HTTP) If the server reports that the requested page has moved to a different location (indicated with a Location: header and a 3XX response code), this option will make curl redo the request&lt;br /&gt;
              on  the  new place. If used together with -i, --include or -I, --head, headers from all requested pages will be shown. When authentication is used, curl only sends its credentials to the ini‐&lt;br /&gt;
              tial host. If a redirect takes curl to a different host, it will not be able to intercept the user+password. See also --location-trusted on how to change this. You can  limit  the  amount  of&lt;br /&gt;
              redirects to follow by using the --max-redirs option.&lt;br /&gt;
&lt;br /&gt;
              When  curl  follows  a  redirect  and if the request is a POST, it will send the following request with a GET if the HTTP response was 301, 302, or 303. If the response code was any other 3xx&lt;br /&gt;
              code, curl will re-send the following request using the same unmodified method.&lt;br /&gt;
&lt;br /&gt;
              You can tell curl to not change POST requests to GET after a 30x response by using the dedicated options for that: --post301, --post302 and --post303.&lt;br /&gt;
&lt;br /&gt;
              The method set with -X, --request overrides the method curl would otherwise select to use.&lt;br /&gt;
&lt;br /&gt;
              Providing -L, --location multiple times has no extra effect.  Disable it again with --no-location.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --login-options &amp;lt;options&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP) Specify the login options to use during server authentication.&lt;br /&gt;
&lt;br /&gt;
              You can use login options to specify protocol specific options that may be used during authentication. At present only IMAP, POP3 and SMTP support login options. For  more  information  about&lt;br /&gt;
              login options please see RFC 2384, RFC 5092 and IETF draft draft-earhart-url-smtp-00.txt&lt;br /&gt;
&lt;br /&gt;
              If --login-options is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --login-options &#039;AUTH=*&#039; imap://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-auth &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address. This will be used to specify the authentication address (identity) of a submitted message that is being relayed to another server.&lt;br /&gt;
&lt;br /&gt;
              If --mail-auth is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-auth user@example.come -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-from.&lt;br /&gt;
&lt;br /&gt;
       --mail-from &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address that the given mail should get sent from.&lt;br /&gt;
&lt;br /&gt;
              If --mail-from is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-from user@example.com -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-auth.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt-allowfails&lt;br /&gt;
              (SMTP) When sending data to multiple recipients, by default curl will abort SMTP conversation if at least one of the recipients causes RCPT TO command to return an error.&lt;br /&gt;
&lt;br /&gt;
              The default behavior can be changed by passing --mail-rcpt-allowfails command-line option which will make curl ignore errors and proceed with the remaining valid recipients.&lt;br /&gt;
&lt;br /&gt;
              If all recipients trigger RCPT TO failures and this flag is specified, curl will still abort the SMTP conversation and return the error received from to the last RCPT TO command.&lt;br /&gt;
&lt;br /&gt;
              Providing --mail-rcpt-allowfails multiple times has no extra effect.  Disable it again with --no-mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt. Added in 7.69.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single email address, user name or mailing list name. Repeat this option several times to send to multiple recipients.&lt;br /&gt;
&lt;br /&gt;
              When performing an address verification (VRFY command), the recipient should be specified as the user name or user name and domain (as per Section 3.5 of RFC5321). (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              When performing a mailing list expand (EXPN command), the recipient should be specified using the mailing list name, such as &amp;quot;Friends&amp;quot; or &amp;quot;London-Office&amp;quot;.  (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              --mail-rcpt can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt user@example.net smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
       -M, --manual&lt;br /&gt;
              Manual. Display the huge help text.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --manual&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --libcurl and --trace.&lt;br /&gt;
&lt;br /&gt;
       --max-filesize &amp;lt;bytes&amp;gt;&lt;br /&gt;
              (FTP HTTP MQTT) Specify the maximum size (in bytes) of a file to download. If the file requested is larger than this value, the transfer will not start and curl will return with exit code 63.&lt;br /&gt;
&lt;br /&gt;
              A  size  modifier may be used. For example, Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or &#039;G&#039; makes it gigabytes. Examples: 200K, 3m and&lt;br /&gt;
              1G. (Added in 7.58.0)&lt;br /&gt;
&lt;br /&gt;
              NOTE: The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit.   If  --max-file‐&lt;br /&gt;
              size is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-filesize 100K https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --max-redirs &amp;lt;num&amp;gt;&lt;br /&gt;
              (HTTP) Set maximum number of redirections to follow. When -L, --location is used, to prevent curl from following too many redirects, by default, the limit is set to 50 redirects. Set this op‐&lt;br /&gt;
              tion to -1 to make it unlimited.&lt;br /&gt;
&lt;br /&gt;
              If --max-redirs is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-redirs 3 --location https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -L, --location.&lt;br /&gt;
&lt;br /&gt;
       -m, --max-time &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow each transfer to take.  This is useful for preventing your batch jobs from hanging for hours due to slow networks or links going  down.   Since  7.32.0,&lt;br /&gt;
              this option accepts decimal values, but the actual timeout will decrease in accuracy as the specified timeout increases in decimal precision.&lt;br /&gt;
&lt;br /&gt;
              If you enable retrying the transfer (--retry) then the maximum time counter is reset each time the transfer is retried. You can use --retry-max-time to limit the retry time.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If -m, --max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --max-time 10 https://example.com&lt;br /&gt;
               curl --max-time 2.92 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout and --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --metalink&lt;br /&gt;
              This option was previously used to specify a metalink resource. Metalink support has been disabled in curl since 7.78.0 for security reasons.&lt;br /&gt;
&lt;br /&gt;
              If --metalink is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --metalink file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel.&lt;br /&gt;
&lt;br /&gt;
       --negotiate&lt;br /&gt;
              (HTTP) Enables Negotiate (SPNEGO) authentication.&lt;br /&gt;
&lt;br /&gt;
              This option requires a library built with GSS-API or SSPI support. Use -V, --version to see if your curl supports GSS-API/SSPI or SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              When  using  this  option,  you  must also provide a fake -u, --user option to activate the authentication code properly. Sending a &#039;-u :&#039; is enough as the user name and password from the -u,&lt;br /&gt;
              --user option are not actually used.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --negotiate -u : https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm, --anyauth and --proxy-negotiate.&lt;br /&gt;
&lt;br /&gt;
       --netrc-file &amp;lt;filename&amp;gt;&lt;br /&gt;
              This option is similar to -n, --netrc, except that you provide the path (absolute or relative) to the netrc file that curl should use. You can only specify one netrc file per invocation.&lt;br /&gt;
&lt;br /&gt;
              It will abide by --netrc-optional if specified.&lt;br /&gt;
&lt;br /&gt;
              If --netrc-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-file netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc, -u, --user and -K, --config. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       --netrc-optional&lt;br /&gt;
              Similar to -n, --netrc, but this option makes the .netrc usage optional and not mandatory as the -n, --netrc option does.&lt;br /&gt;
&lt;br /&gt;
              Providing --netrc-optional multiple times has no extra effect.  Disable it again with --no-netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-optional https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       -n, --netrc&lt;br /&gt;
              Makes curl scan the .netrc (_netrc on Windows) file in the user&#039;s home directory for login name and password. This is typically used for FTP on Unix. If used with HTTP, curl will enable  user&lt;br /&gt;
              authentication.  See  netrc(5)  and ftp(1) for details on the file format. Curl will not complain if that file does not have the right permissions (it should be neither world- nor group-read‐&lt;br /&gt;
              able). The environment variable &amp;quot;HOME&amp;quot; is used to find the home directory.&lt;br /&gt;
&lt;br /&gt;
              A quick and simple example of how to setup a .netrc to allow curl to FTP to the machine host.domain.com with user name &#039;myself&#039; and password &#039;secret&#039; could look similar to:&lt;br /&gt;
&lt;br /&gt;
               machine host.domain.com&lt;br /&gt;
               login myself&lt;br /&gt;
               password secret&lt;br /&gt;
&lt;br /&gt;
              Providing -n, --netrc multiple times has no extra effect.  Disable it again with --no-netrc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file, -K, --config and -u, --user. This option is mutually exclusive to --netrc-file and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
       -:, --next&lt;br /&gt;
              Tells curl to use a separate operation for the following URL and associated options. This allows you to send several URL requests, each with their own specific options, for example,  such  as&lt;br /&gt;
              different user names or custom requests for each.&lt;br /&gt;
&lt;br /&gt;
              -:,  --next  will reset all local options and only global ones will have their values survive over to the operation following the -:, --next instruction. Global options include -v, --verbose,&lt;br /&gt;
              --trace, --trace-ascii and --fail-early.&lt;br /&gt;
&lt;br /&gt;
              For example, you can do both a GET and a POST in a single command line:&lt;br /&gt;
&lt;br /&gt;
               curl www1.example.com --next -d postthis www2.example.com&lt;br /&gt;
&lt;br /&gt;
              -:, --next can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl https://example.com --next -d postthis www2.example.com&lt;br /&gt;
               curl -I https://example.com --next https://example.net/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and -K, --config. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-alpn&lt;br /&gt;
              (HTTPS) Disable the ALPN TLS extension. ALPN is enabled by default if libcurl was built with an SSL library that supports ALPN. ALPN is used by a libcurl that  supports  HTTP/2  to  negotiate&lt;br /&gt;
              HTTP/2 support with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-alpn multiple times has no extra effect.  Disable it again with --alpn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-alpn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-npn and --http2. --no-alpn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       -N, --no-buffer&lt;br /&gt;
              Disables  the  buffering of the output stream. In normal work situations, curl will use a standard buffered output stream that will have the effect that it will output the data in chunks, not&lt;br /&gt;
              necessarily exactly when the data arrives.  Using this option will disable that buffering.&lt;br /&gt;
&lt;br /&gt;
              Providing -N, --no-buffer multiple times has no extra effect.  Disable it again with --buffer.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-buffer https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -#, --progress-bar.&lt;br /&gt;
&lt;br /&gt;
       --no-clobber&lt;br /&gt;
              When used in conjunction with the -o, --output, -J, --remote-header-name, -O, --remote-name, or --remote-name-all options, curl avoids overwriting files that already exist. Instead, a dot and&lt;br /&gt;
              a number gets appended to the name of the file that would be created, up to filename.100 after which it will not create any file.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented.  You can thus use --clobber to enforce the clobbering, even if -J, --remote-header-name is specified.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-clobber multiple times has no extra effect.  Disable it again with --clobber.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-clobber --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output and -O, --remote-name. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --no-keepalive&lt;br /&gt;
              Disables the use of keepalive messages on the TCP connection. curl otherwise enables them by default.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --keepalive to enforce keepalive.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-keepalive multiple times has no extra effect.  Disable it again with --keepalive.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-keepalive https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --keepalive-time.&lt;br /&gt;
&lt;br /&gt;
       --no-npn&lt;br /&gt;
              (HTTPS) In curl 7.86.0 and later, curl never uses NPN.&lt;br /&gt;
&lt;br /&gt;
              Disable  the NPN TLS extension. NPN is enabled by default if libcurl was built with an SSL library that supports NPN. NPN is used by a libcurl that supports HTTP/2 to negotiate HTTP/2 support&lt;br /&gt;
              with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-npn multiple times has no extra effect.  Disable it again with --npn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-npn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-alpn and --http2. --no-npn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-progress-meter&lt;br /&gt;
              Option to switch off the progress meter output without muting or otherwise affecting warning and informational messages like -s, --silent does.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --progress-meter to enable the progress meter again.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-progress-meter multiple times has no extra effect.  Disable it again with --progress-meter.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-progress-meter -o store https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent. Added in 7.67.0.&lt;br /&gt;
&lt;br /&gt;
       --no-sessionid&lt;br /&gt;
              (TLS) Disable curl&#039;s use of SSL session-ID caching. By default all transfers are done using the cache. Note that while nothing should ever get hurt by attempting  to  reuse  SSL  session-IDs,&lt;br /&gt;
              there seem to be broken SSL implementations in the wild that may require you to disable this in order for you to succeed.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --sessionid to enforce session-ID caching.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-sessionid multiple times has no extra effect.  Disable it again with --sessionid.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-sessionid https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --noproxy &amp;lt;no-proxy-list&amp;gt;&lt;br /&gt;
              Comma-separated  list  of hosts for which not to use a proxy, if one is specified. The only wildcard is a single * character, which matches all hosts, and effectively disables the proxy. Each&lt;br /&gt;
              name in this list is matched as either a domain which contains the hostname, or the hostname itself. For example, local.com would match local.com, local.com:80,  and  www.local.com,  but  not&lt;br /&gt;
              www.notlocal.com.&lt;br /&gt;
&lt;br /&gt;
              Since 7.53.0, This option overrides the environment variables that disable the proxy (&#039;no_proxy&#039; and &#039;NO_PROXY&#039;). If there&#039;s an environment variable disabling a proxy, you can set the noproxy&lt;br /&gt;
              list to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses specified to this option can be provided using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use  in  the&lt;br /&gt;
              comparison. For example &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --noproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --noproxy &amp;quot;www.example&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --ntlm-wb&lt;br /&gt;
              (HTTP) Enables NTLM much in the style --ntlm does, but hand over the authentication to the separate binary ntlmauth application that is executed when needed.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm-wb multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm-wb -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ntlm and --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
       --ntlm (HTTP)  Enables NTLM authentication. The NTLM authentication method was designed by Microsoft and is used by IIS web servers. It is a proprietary protocol, reverse-engineered by clever people&lt;br /&gt;
              and implemented in curl based on their efforts. This kind of behavior should not be endorsed, you should encourage everyone who uses NTLM to switch to a public and  documented  authentication&lt;br /&gt;
              method instead, such as Digest.&lt;br /&gt;
&lt;br /&gt;
              If you want to enable NTLM for your proxy authentication, then use --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ntlm. --ntlm requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --basic and --negotiate and --digest and --anyauth.&lt;br /&gt;
&lt;br /&gt;
       --oauth2-bearer &amp;lt;token&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP HTTP) Specify the Bearer Token for OAUTH 2.0 server authentication. The Bearer Token is used in conjunction with the user name which can be specified as part of the --url&lt;br /&gt;
              or -u, --user options.&lt;br /&gt;
&lt;br /&gt;
              The Bearer Token and user name are formatted according to RFC 6750.&lt;br /&gt;
&lt;br /&gt;
              If --oauth2-bearer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --oauth2-bearer &amp;quot;mF_9.B5f-4.1JqM&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm and --digest. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --output-dir &amp;lt;dir&amp;gt;&lt;br /&gt;
              This option specifies the directory in which files should be stored, when -O, --remote-name or -o, --output are used.&lt;br /&gt;
&lt;br /&gt;
              The given output directory is used for all URLs and output options on the command line, up until the first -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If the specified target directory does not exist, the operation will fail unless --create-dirs is also used.&lt;br /&gt;
&lt;br /&gt;
              If --output-dir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --output-dir &amp;quot;tmp&amp;quot; -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -J, --remote-header-name. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       -o, --output &amp;lt;file&amp;gt;&lt;br /&gt;
              Write output to &amp;lt;file&amp;gt; instead of stdout. If you are using {} or [] to fetch multiple documents, you should quote the URL and you can use &#039;#&#039; followed by a number  in  the  &amp;lt;file&amp;gt;  specifier.&lt;br /&gt;
              That variable will be replaced with the current string for the URL being fetched. Like in:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              or use several variables like:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have. For example, if you specify two URLs on the same command line, you can use it like this:&lt;br /&gt;
&lt;br /&gt;
                curl -o aa example.com -o bb example.net&lt;br /&gt;
&lt;br /&gt;
              and the order of the -o options and the URLs does not matter, just that the first -o is for the first URL and so on, so the above command line can also be written as&lt;br /&gt;
&lt;br /&gt;
                curl example.com example.net -o aa -o bb&lt;br /&gt;
&lt;br /&gt;
              See also the --create-dirs option to create the local directories dynamically. Specifying the output as &#039;-&#039; (a single dash) will force the output to be done to stdout.&lt;br /&gt;
&lt;br /&gt;
              To suppress response bodies, you can redirect output to /dev/null:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o /dev/null&lt;br /&gt;
&lt;br /&gt;
              Or for Windows use nul:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o nul&lt;br /&gt;
&lt;br /&gt;
              -o, --output can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -o file https://example.com&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
               curl -o file https://example.com -o file2 https://example.net&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name, --remote-name-all and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       --parallel-immediate&lt;br /&gt;
              When  doing  parallel transfers, this option will instruct curl that it should rather prefer opening up more connections in parallel at once rather than waiting to see if new transfers can be&lt;br /&gt;
              added as multiplexed streams on another connection.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --parallel-immediate multiple times has no extra effect.  Disable it again with --no-parallel-immediate.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and --parallel-max. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --parallel-max &amp;lt;num&amp;gt;&lt;br /&gt;
              When asked to do parallel transfers, using -Z, --parallel, this option controls the maximum amount of transfers to do simultaneously.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              The default is 50.&lt;br /&gt;
&lt;br /&gt;
              If --parallel-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-max 100 -Z https://example.com ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       -Z, --parallel&lt;br /&gt;
              Makes curl perform its transfers in parallel as compared to the regular serial manner.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -Z, --parallel multiple times has no extra effect.  Disable it again with --no-parallel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -v, --verbose. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              (SSH TLS) Passphrase for the private key.&lt;br /&gt;
&lt;br /&gt;
              If --pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pass secret --key file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --path-as-is&lt;br /&gt;
              Tell curl to not handle sequences of /../ or /./ in the given URL path. Normally curl will squash or merge them according to standards but with this option set you tell it not to do that.&lt;br /&gt;
&lt;br /&gt;
              Providing --path-as-is multiple times has no extra effect.  Disable it again with --no-path-as-is.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --path-as-is https://example.com/../../etc/passwd&lt;br /&gt;
&lt;br /&gt;
              See also --request-target. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified public key file (or hashes) to verify the peer. This can be a path to a file which contains a single public key in PEM or DER format, or  any  number  of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When  negotiating  a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match the public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              PEM/DER support:&lt;br /&gt;
&lt;br /&gt;
              7.39.0: OpenSSL, GnuTLS and GSKit&lt;br /&gt;
&lt;br /&gt;
              7.43.0: NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              sha256 support:&lt;br /&gt;
&lt;br /&gt;
              7.44.0: OpenSSL, GnuTLS, NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              Other SSL backends not supported.&lt;br /&gt;
&lt;br /&gt;
              If --pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256. Added in 7.39.0.&lt;br /&gt;
&lt;br /&gt;
       --post301&lt;br /&gt;
              (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST requests into GET requests when following a 301 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl  does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post301 multiple times has no extra effect.  Disable it again with --no-post301.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post301 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post302&lt;br /&gt;
              (HTTP)  Tells curl to respect RFC 7231/6.4.3 and not convert POST requests into GET requests when following a 302 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post302 multiple times has no extra effect.  Disable it again with --no-post302.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post302 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post301, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post303&lt;br /&gt;
              (HTTP) Tells curl to violate RFC 7231/6.4.4 and not convert POST requests into GET requests when following 303 redirections. A server may require a POST to remain a POST after a 303 redirect‐&lt;br /&gt;
              ion. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post303 multiple times has no extra effect.  Disable it again with --no-post303.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post303 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post301 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --preproxy [protocol://]host[:port]&lt;br /&gt;
              Use  the  specified SOCKS proxy before connecting to an HTTP or HTTPS -x, --proxy. In such a case curl first connects to the SOCKS proxy and then connects (through SOCKS) to the HTTP or HTTPS&lt;br /&gt;
              proxy. Hence pre proxy.&lt;br /&gt;
&lt;br /&gt;
              The pre proxy string should be specified with a protocol:// prefix to specify alternative proxy protocols. Use socks4://, socks4a://, socks5:// or socks5h:// to  request  the  specific  SOCKS&lt;br /&gt;
              version to be used. No protocol specified will make curl default to SOCKS4.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              If --preproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --preproxy socks5://proxy.example -x http://http.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --socks5. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -#, --progress-bar&lt;br /&gt;
              Make curl display transfer progress as a simple progress bar instead of the standard, more informational, meter.&lt;br /&gt;
&lt;br /&gt;
              This  progress  bar  draws a single line of &#039;#&#039; characters across the screen and shows a percentage if the transfer size is known. For transfers without a known size, there will be space ship&lt;br /&gt;
              (-=o=-) that moves back and forth but only while data is being transferred, with a set of flying hash sign symbols on top.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -#, --progress-bar multiple times has no extra effect.  Disable it again with --no-progress-bar.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -# -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --styled-output.&lt;br /&gt;
&lt;br /&gt;
       --proto-default &amp;lt;protocol&amp;gt;&lt;br /&gt;
              Tells curl to use protocol for any URL missing a scheme name.&lt;br /&gt;
&lt;br /&gt;
              An unknown or unsupported protocol causes error CURLE_UNSUPPORTED_PROTOCOL (1).&lt;br /&gt;
&lt;br /&gt;
              This option does not change the default proxy protocol (http).&lt;br /&gt;
&lt;br /&gt;
              Without this option set, curl guesses protocol based on the host name, see --url for details.&lt;br /&gt;
&lt;br /&gt;
              If --proto-default is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-default https ftp.example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto and --proto-redir. Added in 7.45.0.&lt;br /&gt;
&lt;br /&gt;
       --proto-redir &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use on redirect. Protocols denied by --proto are not overridden by this option. See --proto for how protocols are represented.&lt;br /&gt;
&lt;br /&gt;
              Example, allow only HTTP and HTTPS on redirect:&lt;br /&gt;
&lt;br /&gt;
               curl --proto-redir -all,http,https http://example.com&lt;br /&gt;
&lt;br /&gt;
              By default curl will only allow HTTP, HTTPS, FTP and FTPS on redirect (since 7.65.2). Specifying all or +all enables all protocols on redirects, which is not good for security.&lt;br /&gt;
&lt;br /&gt;
              If --proto-redir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-redir =http,https https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto.&lt;br /&gt;
&lt;br /&gt;
       --proto &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use for transfers. Protocols are evaluated left to right, are comma separated, and are each a protocol name or &#039;all&#039;, optionally prefixed by zero  or&lt;br /&gt;
              more modifiers. Available modifiers are:&lt;br /&gt;
&lt;br /&gt;
              +  Permit this protocol in addition to protocols already permitted (this is the default if no modifier is used).&lt;br /&gt;
&lt;br /&gt;
              -  Deny this protocol, removing it from the list of protocols already permitted.&lt;br /&gt;
&lt;br /&gt;
              =  Permit only this protocol (ignoring the list already permitted), though subject to later modification by subsequent entries in the comma separated list.&lt;br /&gt;
&lt;br /&gt;
              For example:&lt;br /&gt;
&lt;br /&gt;
              --proto -ftps  uses the default protocols, but disables ftps&lt;br /&gt;
&lt;br /&gt;
              --proto -all,https,+http&lt;br /&gt;
                             only enables http and https&lt;br /&gt;
&lt;br /&gt;
              --proto =http,https&lt;br /&gt;
                             also only enables http and https&lt;br /&gt;
&lt;br /&gt;
              Unknown  and  disabled protocols produce a warning. This allows scripts to safely rely on being able to disable potentially dangerous protocols, without relying upon support for that protocol&lt;br /&gt;
              being built into curl to avoid an error.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times, in which case the effect is the same as concatenating the protocols into one instance of the option.&lt;br /&gt;
&lt;br /&gt;
              If --proto is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto =http,https,sftp https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto-redir and --proto-default.&lt;br /&gt;
&lt;br /&gt;
       --proxy-anyauth&lt;br /&gt;
              Tells curl to pick a suitable authentication method when communicating with the given HTTP proxy. This might cause an extra request/response round-trip.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-basic and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-basic&lt;br /&gt;
              Tells curl to use HTTP Basic authentication when communicating with the given proxy. Use --basic for enabling HTTP Basic with a remote host. Basic is the default  authentication  method  curl&lt;br /&gt;
              uses with proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --cacert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cacert CA-file.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-capath, --cacert, --capath and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              Same as --capath but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-capath /local/directory -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cacert, -x, --proxy and --capath. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --cert-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert &amp;lt;cert[:passwd]&amp;gt;&lt;br /&gt;
              Same as -E, --cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert-type. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ciphers &amp;lt;list&amp;gt;&lt;br /&gt;
              Same as --ciphers but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers, --curves and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --crlfile but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-crlfile rejects.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-digest&lt;br /&gt;
              Tells curl to use HTTP Digest authentication when communicating with the given proxy. Use --digest for enabling HTTP Digest with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-digest multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP)  Extra header to include in the request when sending HTTP to a proxy. You may specify any number of extra headers. This is the equivalent option to -H, --header but is for proxy commu‐&lt;br /&gt;
              nication only like in CONNECT requests when you want a separate header sent to the proxy to what is sent to the actual remote host.&lt;br /&gt;
&lt;br /&gt;
              curl will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or  carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              Headers specified with this option will not be included in requests that curl knows will not be sent to a proxy.&lt;br /&gt;
&lt;br /&gt;
              Starting in 7.55.0, this option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times to add/replace/remove multiple headers.&lt;br /&gt;
&lt;br /&gt;
              --proxy-header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-header &amp;quot;X-First-Name: Joe&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;User-Agent: surprise&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;Host:&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-insecure&lt;br /&gt;
              Same as -k, --insecure but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-insecure multiple times has no extra effect.  Disable it again with --no-proxy-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-insecure -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and -k, --insecure. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --key-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key &amp;lt;key&amp;gt;&lt;br /&gt;
              Same as --key but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key-type and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-negotiate&lt;br /&gt;
              Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating with the given proxy. Use --negotiate for enabling HTTP Negotiate (SPNEGO) with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ntlm&lt;br /&gt;
              Tells curl to use HTTP NTLM authentication when communicating with the given proxy. Use --ntlm for enabling NTLM with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-negotiate and --proxy-anyauth.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              Same as --pass but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-key. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified public key file (or hashes) to verify the proxy. This can be a path to a file which contains a single public key in PEM or DER format, or any number of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When negotiating a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match  the  public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --proxy-pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey and -x, --proxy. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for proxy negotiation.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-service-name &amp;quot;shrubbery&amp;quot; -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --service-name and -x, --proxy. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-allow-beast&lt;br /&gt;
              Same as --ssl-allow-beast but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-proxy-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-allow-beast -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-allow-beast and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-auto-client-cert&lt;br /&gt;
              Same as --ssl-auto-client-cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-proxy-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-auto-client-cert and -x, --proxy. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS)  Specifies  which cipher suites to use in the connection to your HTTPS proxy when it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher&lt;br /&gt;
              suite details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using  the  --proxy-&lt;br /&gt;
              ciphers option.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tls13-ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --tlsauthtype but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsauthtype SRP -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Same as --tlspassword but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlspassword passwd -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Same as --tlsuser but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsuser smith -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlspassword. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsv1&lt;br /&gt;
              Same as -1, --tlsv1 but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsv1 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -U, --proxy-user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for proxy authentication.&lt;br /&gt;
&lt;br /&gt;
              If  you use a Windows SSPI-enabled curl binary and do either Negotiate or NTLM authentication then you can tell curl to select the user name and password from your environment by specifying a&lt;br /&gt;
              single colon with this option: &amp;quot;-U :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              If -U, --proxy-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-user name:pwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-pass.&lt;br /&gt;
&lt;br /&gt;
       -x, --proxy [protocol://]host[:port]&lt;br /&gt;
              Use the specified proxy.&lt;br /&gt;
&lt;br /&gt;
              The  proxy  string  can be specified with a protocol:// prefix. No protocol specified or http:// will be treated as HTTP proxy. Use socks4://, socks4a://, socks5:// or socks5h:// to request a&lt;br /&gt;
              specific SOCKS version to be used.&lt;br /&gt;
&lt;br /&gt;
              Unix domain sockets are supported for socks proxy. Set localhost for the host part. e.g. socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              HTTPS proxy support via https:// protocol prefix was added in 7.52.0 for OpenSSL, GnuTLS and NSS.&lt;br /&gt;
&lt;br /&gt;
              Unrecognized and unsupported proxy protocols cause an error since 7.52.0.  Prior versions may ignore the protocol and use http:// instead.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              This option overrides existing environment variables that set the proxy to use. If there&#039;s an environment variable setting a proxy, you can set proxy to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              All operations that are performed over an HTTP proxy will transparently be converted to HTTP. It means that certain protocol specific operations might not be available. This is not  the  case&lt;br /&gt;
              if you can tunnel through the proxy, as one with the -p, --proxytunnel option.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              The proxy host can be specified the same way as the proxy environment variables, including the protocol prefix (http://) and the embedded user + password.&lt;br /&gt;
&lt;br /&gt;
              When a proxy is used, the active FTP mode as set with -P, --ftp-port, cannot be used.&lt;br /&gt;
&lt;br /&gt;
              If -x, --proxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy http://proxy.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy1.0 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified HTTP 1.0 proxy. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              The only difference between this and the HTTP proxy option -x, --proxy, is that attempts to use CONNECT through the proxy will specify an HTTP 1.0 protocol instead of the default HTTP 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy1.0 -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --socks5 and --preproxy.&lt;br /&gt;
&lt;br /&gt;
       -p, --proxytunnel&lt;br /&gt;
              When an HTTP proxy is used -x, --proxy, this option will make curl tunnel through the proxy. The tunnel approach is made with the HTTP proxy CONNECT request and requires that the proxy allows&lt;br /&gt;
              direct connect to the remote port number curl wants to tunnel through to.&lt;br /&gt;
&lt;br /&gt;
              To suppress proxy CONNECT response headers when curl is set to output headers use --suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Providing -p, --proxytunnel multiple times has no extra effect.  Disable it again with --no-proxytunnel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxytunnel -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --pubkey &amp;lt;key&amp;gt;&lt;br /&gt;
              (SFTP SCP) Public key file name. Allows you to provide your public key in this separate file.&lt;br /&gt;
&lt;br /&gt;
              (As of 7.39.0, curl attempts to automatically extract the public key from the private key file, so passing this option is generally not required. Note that this public key extraction requires&lt;br /&gt;
              libcurl to be linked against a copy of libssh2 1.2.8 or higher that is itself linked against OpenSSL.)&lt;br /&gt;
&lt;br /&gt;
              If --pubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pubkey file.pub sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --pass.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP  SFTP)  Send  an arbitrary command to the remote FTP or SFTP server. Quote commands are sent BEFORE the transfer takes place (just after the initial PWD command in an FTP transfer, to be&lt;br /&gt;
              exact). To make commands take place after a successful transfer, prefix them with a dash &#039;-&#039;.&lt;br /&gt;
&lt;br /&gt;
              (FTP only) To make commands be sent after curl has changed the working directory, just before the file transfer command(s), prefix the command with a &#039;+&#039;. This is not performed when a  direc‐&lt;br /&gt;
              tory listing is performed.&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of commands.&lt;br /&gt;
&lt;br /&gt;
              By  default  curl will stop at first failure. To make curl continue even if the command fails, prefix the command with an asterisk (*). Otherwise, if the server returns failure for one of the&lt;br /&gt;
              commands, the entire operation will be aborted.&lt;br /&gt;
&lt;br /&gt;
              You must send syntactically correct FTP commands as RFC 959 defines to FTP servers, or one of the commands listed below to SFTP servers.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times.&lt;br /&gt;
&lt;br /&gt;
              SFTP is a binary protocol. Unlike for FTP, curl interprets SFTP quote commands itself before sending them to the server. File names may be quoted shell-style to embed spaces or special  char‐&lt;br /&gt;
              acters. Following is the list of all supported SFTP quote commands:&lt;br /&gt;
&lt;br /&gt;
              atime date file&lt;br /&gt;
                     The atime command sets the last access time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3) man page for date ex‐&lt;br /&gt;
                     pression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              chgrp group file&lt;br /&gt;
                     The chgrp command sets the group ID of the file named by the file operand to the group ID specified by the group operand. The group operand is a decimal integer group ID.&lt;br /&gt;
&lt;br /&gt;
              chmod mode file&lt;br /&gt;
                     The chmod command modifies the file mode bits of the specified file. The mode operand is an octal integer mode number.&lt;br /&gt;
&lt;br /&gt;
              chown user file&lt;br /&gt;
                     The chown command sets the owner of the file named by the file operand to the user ID specified by the user operand. The user operand is a decimal integer user ID.&lt;br /&gt;
&lt;br /&gt;
              ln source_file target_file&lt;br /&gt;
                     The ln and symlink commands create a symbolic link at the target_file location pointing to the source_file location.&lt;br /&gt;
&lt;br /&gt;
              mkdir directory_name&lt;br /&gt;
                     The mkdir command creates the directory named by the directory_name operand.&lt;br /&gt;
&lt;br /&gt;
              mtime date file&lt;br /&gt;
                     The mtime command sets the last modification time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3)  man  page  for&lt;br /&gt;
                     date expression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              pwd    The pwd command returns the absolute pathname of the current working directory.&lt;br /&gt;
&lt;br /&gt;
              rename source target&lt;br /&gt;
                     The rename command renames the file or directory named by the source operand to the destination path named by the target operand.&lt;br /&gt;
&lt;br /&gt;
              rm file&lt;br /&gt;
                     The rm command removes the file specified by the file operand.&lt;br /&gt;
&lt;br /&gt;
              rmdir directory&lt;br /&gt;
                     The rmdir command removes the directory entry specified by the directory operand, provided it is empty.&lt;br /&gt;
&lt;br /&gt;
              symlink source_file target_file&lt;br /&gt;
                     See ln.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --quote &amp;quot;DELE file&amp;quot; ftp://example.com/foo&lt;br /&gt;
&lt;br /&gt;
       See also -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --random-file &amp;lt;file&amp;gt;&lt;br /&gt;
              Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to file containing what will be considered as random data. The data may be used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --random-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --random-file rubbish https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --egd-file.&lt;br /&gt;
&lt;br /&gt;
       -r, --range &amp;lt;range&amp;gt;&lt;br /&gt;
              (HTTP FTP SFTP FILE) Retrieve a byte range (i.e. a partial document) from an HTTP/1.1, FTP or SFTP server or a local FILE. Ranges can be specified in a number of ways.&lt;br /&gt;
&lt;br /&gt;
              0-499     specifies the first 500 bytes&lt;br /&gt;
&lt;br /&gt;
              500-999   specifies the second 500 bytes&lt;br /&gt;
&lt;br /&gt;
              -500      specifies the last 500 bytes&lt;br /&gt;
&lt;br /&gt;
              9500-     specifies the bytes from offset 9500 and forward&lt;br /&gt;
&lt;br /&gt;
              0-0,-1    specifies the first and last byte only(*)(HTTP)&lt;br /&gt;
&lt;br /&gt;
              100-199,500-599&lt;br /&gt;
                        specifies two separate 100-byte ranges(*) (HTTP)&lt;br /&gt;
&lt;br /&gt;
              (*)  =  NOTE that this will cause the server to reply with a multipart response, which will be returned as-is by curl! Parsing or otherwise transforming this response is the responsibility of&lt;br /&gt;
              the caller.&lt;br /&gt;
&lt;br /&gt;
              Only digit characters (0-9) are valid in the &#039;start&#039; and &#039;stop&#039; fields of the &#039;start-stop&#039; range syntax. If a non-digit character is given in the range, the server&#039;s response will be unspeci‐&lt;br /&gt;
              fied, depending on the server&#039;s configuration.&lt;br /&gt;
&lt;br /&gt;
              You should also be aware that many HTTP/1.1 servers do not have this feature enabled, so that when you attempt to get a range, you will instead get the whole document.&lt;br /&gt;
&lt;br /&gt;
              FTP and SFTP range downloads only support the simple &#039;start-stop&#039; syntax (optionally with one of the numbers omitted). FTP use depends on the extended FTP command SIZE.&lt;br /&gt;
&lt;br /&gt;
              If -r, --range is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --range 22-44 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -C, --continue-at and -a, --append.&lt;br /&gt;
&lt;br /&gt;
       --rate &amp;lt;max request rate&amp;gt;&lt;br /&gt;
              Specify the maximum transfer frequency you allow curl to use - in number of transfer starts per time unit (sometimes called request rate). Without this option, curl will start the next trans‐&lt;br /&gt;
              fer as fast as possible.&lt;br /&gt;
&lt;br /&gt;
              If given several URLs and a transfer completes faster than the allowed rate, curl will wait until the next transfer is started to maintain the requested rate. This option has no  effect  when&lt;br /&gt;
              -Z, --parallel is used.&lt;br /&gt;
&lt;br /&gt;
              The  request  rate is provided as &amp;quot;N/U&amp;quot; where N is an integer number and U is a time unit. Supported units are &#039;s&#039; (second), &#039;m&#039; (minute), &#039;h&#039; (hour) and &#039;d&#039; /(day, as in a 24 hour unit). The&lt;br /&gt;
              default time unit, if no &amp;quot;/U&amp;quot; is provided, is number of transfers per hour.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to allow 10 requests per minute, it will not start the next request until 6 seconds have elapsed since the previous transfer was started.&lt;br /&gt;
&lt;br /&gt;
              This function uses millisecond resolution. If the allowed frequency is set more than 1000 per second, it will instead run unrestricted.&lt;br /&gt;
&lt;br /&gt;
              When retrying transfers, enabled with --retry, the separate retry delay logic is used and not this setting.&lt;br /&gt;
&lt;br /&gt;
              If --rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --rate 2/s https://example.com&lt;br /&gt;
               curl --rate 3/h https://example.com&lt;br /&gt;
               curl --rate 14/m https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate and --retry-delay. Added in 7.84.0.&lt;br /&gt;
&lt;br /&gt;
       --raw  (HTTP) When used, it disables all internal HTTP decoding of content or transfer encodings and instead makes them passed on unaltered, raw.&lt;br /&gt;
&lt;br /&gt;
              Providing --raw multiple times has no extra effect.  Disable it again with --no-raw.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --raw https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tr-encoding.&lt;br /&gt;
&lt;br /&gt;
       -e, --referer &amp;lt;URL&amp;gt;&lt;br /&gt;
              (HTTP) Sends the &amp;quot;Referrer Page&amp;quot; information to the HTTP server. This can also be set with the -H, --header flag of course. When used with -L, --location you can append  &amp;quot;;auto&amp;quot;  to  the  -e,&lt;br /&gt;
              --referer URL to make curl automatically set the previous URL when it follows a Location: header. The &amp;quot;;auto&amp;quot; string can be used alone, even if you do not set an initial -e, --referer.&lt;br /&gt;
&lt;br /&gt;
              If -e, --referer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example&amp;quot; https://example.com&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example;auto&amp;quot; -L https://example.com&lt;br /&gt;
               curl --referer &amp;quot;;auto&amp;quot; -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -H, --header.&lt;br /&gt;
&lt;br /&gt;
       -J, --remote-header-name&lt;br /&gt;
              (HTTP)  This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL. If the server-provided file name&lt;br /&gt;
              contains a path, that will be stripped off before the file name is used.&lt;br /&gt;
&lt;br /&gt;
              The file is saved in the current directory, or in the directory specified with --output-dir.&lt;br /&gt;
&lt;br /&gt;
              If the server specifies a file name and a file with that name already exists in the destination directory, it will not be overwritten and an error will occur - unless you allow  it  by  using&lt;br /&gt;
              the --clobber option. If the server does not specify a file name then this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              There&#039;s no attempt to decode %-sequences (yet) in the provided file name, so this option may provide you with rather unexpected file names.&lt;br /&gt;
&lt;br /&gt;
              This feature uses the name from the &amp;quot;filename&amp;quot; field, it does not yet support the &amp;quot;filename*&amp;quot; field (filenames with explicit character sets).&lt;br /&gt;
&lt;br /&gt;
              WARNING:  Exercise  judicious  use  of  this option, especially on Windows. A rogue server could send you the name of a DLL or other file that could be loaded automatically by Windows or some&lt;br /&gt;
              third party software.&lt;br /&gt;
&lt;br /&gt;
              Providing -J, --remote-header-name multiple times has no extra effect.  Disable it again with --no-remote-header-name.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -OJ https://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       --remote-name-all&lt;br /&gt;
              This option changes the default action for all given URLs to be dealt with as if -O, --remote-name were used for each one. So if you want to disable that for a specific  URL  after  --remote-&lt;br /&gt;
              name-all has been used, you must use &amp;quot;-o -&amp;quot; or --no-remote-name.&lt;br /&gt;
&lt;br /&gt;
              Providing --remote-name-all multiple times has no extra effect.  Disable it again with --no-remote-name-all.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       -O, --remote-name&lt;br /&gt;
              Write output to a local file named like the remote file we get. (Only the file part of the remote file is used, the path is cut off.)&lt;br /&gt;
&lt;br /&gt;
              The file will be saved in the current working directory. If you want the file saved in a different directory, make sure you change the current working directory before invoking curl with this&lt;br /&gt;
              option or use --output-dir.&lt;br /&gt;
&lt;br /&gt;
              The remote file name to use for saving is extracted from the given URL, nothing else, and if it already exists it will be overwritten. If you want the server to be able  to  choose  the  file&lt;br /&gt;
              name refer to -J, --remote-header-name which can be used in addition to this option. If the server chooses a file name and that name already exists it will not be overwritten.&lt;br /&gt;
&lt;br /&gt;
              There is no URL decoding done on the file name. If it has %20 or other URL encoded parts of the name, they will end up as-is as file name.&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have.&lt;br /&gt;
&lt;br /&gt;
              -O, --remote-name can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -O https://example.com/filename&lt;br /&gt;
&lt;br /&gt;
              See also --remote-name-all, --output-dir and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       -R, --remote-time&lt;br /&gt;
              When used, this will make curl attempt to figure out the timestamp of the remote file, and if that is available make the local file get that same timestamp.&lt;br /&gt;
&lt;br /&gt;
              Providing -R, --remote-time multiple times has no extra effect.  Disable it again with --no-remote-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-time -o foo https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -z, --time-cond.&lt;br /&gt;
&lt;br /&gt;
       --remove-on-error&lt;br /&gt;
              When curl returns an error when told to save output in a local file, this option removes that saved file before exiting. This prevents curl from leaving a partial file in the case of an error&lt;br /&gt;
              during transfer.&lt;br /&gt;
&lt;br /&gt;
              If the output is not a file, this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              Providing --remove-on-error multiple times has no extra effect.  Disable it again with --no-remove-on-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remove-on-error -o output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --request-target &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Tells curl to use an alternative &amp;quot;target&amp;quot; (path) instead of using the path as provided in the URL. Particularly useful when wanting to issue HTTP  requests  without  leading  slash  or&lt;br /&gt;
              other data that does not follow the regular URL pattern, like &amp;quot;OPTIONS *&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --request-target is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --request-target &amp;quot;*&amp;quot; -X OPTIONS https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -X, --request. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       -X, --request &amp;lt;method&amp;gt;&lt;br /&gt;
              (HTTP)  Specifies  a  custom  request  method to use when communicating with the HTTP server. The specified request method will be used instead of the method otherwise used (which defaults to&lt;br /&gt;
              GET). Read the HTTP 1.1 specification for details and explanations. Common additional HTTP requests include PUT and DELETE, but related technologies like WebDAV offers  PROPFIND,  COPY,  MOVE&lt;br /&gt;
              and more.&lt;br /&gt;
&lt;br /&gt;
              Normally you do not need this option. All sorts of GET, HEAD, POST and PUT requests are rather invoked by using dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
              This  option  only  changes  the actual word used in the HTTP request, it does not alter the way curl behaves. So for example if you want to make a proper HEAD request, using -X HEAD will not&lt;br /&gt;
              suffice. You need to use the -I, --head option.&lt;br /&gt;
&lt;br /&gt;
              The method string you set with -X, --request will be used for all requests, which if you for example use -L, --location may cause unintended side-effects when curl  does  not  change  request&lt;br /&gt;
              method according to the HTTP 30x response codes - and similar.&lt;br /&gt;
&lt;br /&gt;
              (FTP) Specifies a custom FTP command to use instead of LIST when doing file lists with FTP.&lt;br /&gt;
&lt;br /&gt;
              (POP3) Specifies a custom POP3 command to use instead of LIST or RETR.&lt;br /&gt;
&lt;br /&gt;
              (IMAP) Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)&lt;br /&gt;
&lt;br /&gt;
              (SMTP) Specifies a custom SMTP command to use instead of HELP or VRFY. (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              If -X, --request is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -X &amp;quot;DELETE&amp;quot; https://example.com&lt;br /&gt;
               curl -X NLST ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --request-target.&lt;br /&gt;
&lt;br /&gt;
       --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;&lt;br /&gt;
              Provide  a  custom  address  for a specific host and port pair. Using this, you can make the curl requests(s) use a specified address and prevent the otherwise normally resolved address to be&lt;br /&gt;
              used. Consider it a sort of /etc/hosts alternative provided on the command line. The port number should be the number used for the specific protocol the host will be used for.  It  means  you&lt;br /&gt;
              need several entries if you want to provide address for the same host but different ports.&lt;br /&gt;
&lt;br /&gt;
              By  specifying &#039;*&#039; as host you can tell curl to resolve any host and specific port pair to the specified address. Wildcard is resolved last so any --resolve with a specific host and port will&lt;br /&gt;
              be used first.&lt;br /&gt;
&lt;br /&gt;
              The provided address set by this option will be used even if -4, --ipv4 or -6, --ipv6 is set to make curl use another IP version.&lt;br /&gt;
&lt;br /&gt;
              By prefixing the host with a &#039;+&#039; you can make the entry time out after curl&#039;s default timeout (1 minute). Note that this will only make sense for long running parallel transfers with a lot of&lt;br /&gt;
              files. In such cases, if this option is used curl will try to resolve the host as it normally would once the timeout has expired.&lt;br /&gt;
&lt;br /&gt;
              Support for providing the IP address within [brackets] was added in 7.57.0.&lt;br /&gt;
&lt;br /&gt;
              Support for providing multiple IP addresses per entry was added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
              Support for resolving with wildcard was added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
              Support for the &#039;+&#039; prefix was was added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
              This option can be used many times to add many host names to resolve.&lt;br /&gt;
&lt;br /&gt;
              --resolve can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --resolve example.com:443:127.0.0.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-to and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --retry-all-errors&lt;br /&gt;
              Retry on any error. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              This  option  is the &amp;quot;sledgehammer&amp;quot; of retrying. Do not use this option by default (eg in curlrc), there may be unintended consequences such as sending or receiving duplicate data. Do not use&lt;br /&gt;
              with redirected input or output. You&#039;d be much better off handling your unique problems in shell script. Please read the example below.&lt;br /&gt;
&lt;br /&gt;
              WARNING: For server compatibility curl attempts to retry failed flaky transfers as close as possible to how they were started, but this is not possible with redirected input  or  output.  For&lt;br /&gt;
              example, before retrying it removes output data from a failed partial transfer that was written to an output file. However this is not true of data redirected to a | pipe or &amp;gt; file, which are&lt;br /&gt;
              not reset. We strongly suggest you do not parse or record output via redirect in combination with this option, since you may receive duplicate data.&lt;br /&gt;
&lt;br /&gt;
              By default curl will not error on an HTTP response code that indicates an HTTP error, if the transfer was successful. For example, if a server replies 404 Not Found and the reply is fully re‐&lt;br /&gt;
              ceived  then that is not an error. When --retry is used then curl will retry on some HTTP response codes that indicate transient HTTP errors, but that does not include most 4xx response codes&lt;br /&gt;
              such as 404. If you want to retry on all response codes that indicate HTTP errors (4xx and 5xx) then combine with -f, --fail.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-all-errors multiple times has no extra effect.  Disable it again with --no-retry-all-errors.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 5 --retry-all-errors https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry. Added in 7.71.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-connrefused&lt;br /&gt;
              In addition to the other conditions, consider ECONNREFUSED as a transient error too for --retry. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-connrefused multiple times has no extra effect.  Disable it again with --no-retry-connrefused.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-connrefused --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry and --retry-all-errors. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-delay &amp;lt;seconds&amp;gt;&lt;br /&gt;
              Make curl sleep this amount of time before each retry when a transfer has failed with a transient error (it changes the default backoff time algorithm between retries). This  option  is  only&lt;br /&gt;
              interesting if --retry is also used. Setting this delay to zero will make curl use the default backoff time.&lt;br /&gt;
&lt;br /&gt;
              If --retry-delay is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-delay 5 --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry-max-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              The retry timer is reset before the first transfer attempt. Retries will be done as usual (see --retry) as long as the timer has not reached this given limit. Notice that if the timer has not&lt;br /&gt;
              reached the limit, the request will be made and while performing, it may take longer than this given time period. To limit a single request&#039;s maximum time, use -m, --max-time. Set this option&lt;br /&gt;
              to zero to not timeout retries.&lt;br /&gt;
&lt;br /&gt;
              If --retry-max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-max-time 30 --retry 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry &amp;lt;num&amp;gt;&lt;br /&gt;
              If a transient error is returned when curl tries to perform a transfer, it will retry this number of times before giving up. Setting the number to 0 makes curl do no retries (which is the de‐&lt;br /&gt;
              fault). Transient error means either: a timeout, an FTP 4xx response code or an HTTP 408, 429, 500, 502, 503 or 504 response code.&lt;br /&gt;
&lt;br /&gt;
              When curl is about to retry a transfer, it will first wait one second and then for all forthcoming retries it will double the waiting time until it reaches 10 minutes which then will  be  the&lt;br /&gt;
              delay between the rest of the retries. By using --retry-delay you disable this exponential backoff algorithm. See also --retry-max-time to limit the total time allowed for retries.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, curl will comply with the Retry-After: response header if one was present to know when to issue the next retry.&lt;br /&gt;
&lt;br /&gt;
              If --retry is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --sasl-authzid &amp;lt;identity&amp;gt;&lt;br /&gt;
              Use this authorization identity (authzid), during SASL PLAIN authentication, in addition to the authentication identity (authcid) as specified by -u, --user.&lt;br /&gt;
&lt;br /&gt;
              If  the option is not specified, the server will derive the authzid from the authcid, but if specified, and depending on the server implementation, it may be used to access another user&#039;s in‐&lt;br /&gt;
              box, that the user has been granted access to, or a shared mailbox for example.&lt;br /&gt;
&lt;br /&gt;
              If --sasl-authzid is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-authzid zid imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --login-options. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --sasl-ir&lt;br /&gt;
              Enable initial response in SASL authentication.&lt;br /&gt;
&lt;br /&gt;
              Providing --sasl-ir multiple times has no extra effect.  Disable it again with --no-sasl-ir.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-ir imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --sasl-authzid. Added in 7.31.0.&lt;br /&gt;
&lt;br /&gt;
       --service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              Examples: --negotiate --service-name sockd would use sockd/server-name.&lt;br /&gt;
&lt;br /&gt;
              If --service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --service-name sockd/server https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --negotiate and --proxy-service-name. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       -S, --show-error&lt;br /&gt;
              When used with -s, --silent, it makes curl show an error message if it fails.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -S, --show-error multiple times has no extra effect.  Disable it again with --no-show-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --show-error --silent https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       -s, --silent&lt;br /&gt;
              Silent or quiet mode. Do not show progress meter or error messages. Makes Curl mute. It will still output the data you ask for, potentially even to the terminal/stdout unless you redirect it.&lt;br /&gt;
&lt;br /&gt;
              Use -S, --show-error in addition to this option to disable progress meter but still show error messages.&lt;br /&gt;
&lt;br /&gt;
              Providing -s, --silent multiple times has no extra effect.  Disable it again with --no-silent.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -s https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --stderr and --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       --socks4 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4 proxy. If the port number is not specified, it is assumed at port 1080. Using this socket type make curl resolve the host name and  passing  the  address  on  to  the&lt;br /&gt;
              proxy.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4 proxy with -x, --proxy using a socks4:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4a, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks4a &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4a proxy. If the port number is not specified, it is assumed at port 1080. This asks the proxy to resolve the host name.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4a://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4a proxy with -x, --proxy using a socks4a:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4a is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4a hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks5-basic&lt;br /&gt;
              Tells  curl  to  use username/password authentication when connecting to a SOCKS5 proxy.  The username/password authentication is enabled by default.  Use --socks5-gssapi to force GSS-API au‐&lt;br /&gt;
              thentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-basic --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-nec&lt;br /&gt;
              As part of the GSS-API negotiation a protection mode is negotiated. RFC 1961 says in section 4.3/4.4 it should be protected,  but  the  NEC  reference  implementation  does  not.  The  option&lt;br /&gt;
              --socks5-gssapi-nec allows the unprotected exchange of the protection mode negotiation.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi-nec multiple times has no extra effect.  Disable it again with --no-socks5-gssapi-nec.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-service &amp;lt;name&amp;gt;&lt;br /&gt;
              The default service name for a socks server is rcmd/server-fqdn. This option allows you to change it.&lt;br /&gt;
&lt;br /&gt;
              Examples:  --socks5  proxy-name  --socks5-gssapi-service sockd would use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-service sockd/real-name would use sockd/real-name for cases where&lt;br /&gt;
              the proxy-name does not match the principal name.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-gssapi-service is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi&lt;br /&gt;
              Tells curl to use GSS-API authentication when connecting to a SOCKS5 proxy.  The GSS-API authentication is enabled by default (if curl is compiled with GSS-API support).   Use  --socks5-basic&lt;br /&gt;
              to force username/password authentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi multiple times has no extra effect.  Disable it again with --no-socks5-gssapi.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-hostname &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 hostname proxy with -x, --proxy using a socks5h:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-hostname is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-hostname proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       --socks5 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy - but resolve the host name locally. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 proxy with -x, --proxy using a socks5:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              This option (as well as --socks4) does not work with IPV6, FTPS or LDAP.&lt;br /&gt;
&lt;br /&gt;
              If --socks5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5 proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5-hostname and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       -Y, --speed-limit &amp;lt;speed&amp;gt;&lt;br /&gt;
              If a transfer is slower than this given speed (in bytes per second) for speed-time seconds it gets aborted. speed-time is set with -y, --speed-time and is 30 if not set.&lt;br /&gt;
&lt;br /&gt;
              If -Y, --speed-limit is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -y, --speed-time, --limit-rate and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       -y, --speed-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              If  a  transfer runs slower than speed-limit bytes per second during a speed-time period, the transfer is aborted. If speed-time is used, the default speed-limit will be 1 unless set with -Y,&lt;br /&gt;
              --speed-limit.&lt;br /&gt;
&lt;br /&gt;
              This option controls transfers (in both directions) but will not affect slow connects etc. If this is a concern for you, try the --connect-timeout option.&lt;br /&gt;
&lt;br /&gt;
              If -y, --speed-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Y, --speed-limit and --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --ssl-allow-beast&lt;br /&gt;
              This option tells curl to not work around a security flaw in the SSL3 and TLS1.0 protocols known as BEAST.  If this option is not used, the SSL layer may use workarounds known to cause inter‐&lt;br /&gt;
              operability problems with some older SSL implementations.&lt;br /&gt;
&lt;br /&gt;
              WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-allow-beast https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-allow-beast and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-auto-client-cert&lt;br /&gt;
              Tell  libcurl  to  automatically  locate  and use a client certificate for authentication, when requested by the server. This option is only supported for Schannel (the native Windows SSL li‐&lt;br /&gt;
              brary). Prior to 7.77.0 this was the default behavior in libcurl with Schannel. Since the server can request any certificate that supports client authentication in the OS certificate store it&lt;br /&gt;
              could be a privacy violation and unexpected.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-auto-client-cert https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-auto-client-cert. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-no-revoke&lt;br /&gt;
              (Schannel) This option tells curl to disable certificate revocation checks.  WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-no-revoke multiple times has no extra effect.  Disable it again with --no-ssl-no-revoke.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-no-revoke https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile. Added in 7.44.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-reqd&lt;br /&gt;
              (FTP IMAP POP3 SMTP LDAP) Require SSL/TLS for the connection. Terminates the connection if the transfer cannot be upgraded to use SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and rejected by the generic ldap backend if explicit TLS is required.&lt;br /&gt;
&lt;br /&gt;
              This  option  is unnecessary if you use a URL scheme that in itself implies immediate and implicit use of TLS, like for FTPS, IMAPS, POP3S, SMTPS and LDAPS. Such transfers will always fail if&lt;br /&gt;
              the TLS handshake does not work.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-reqd multiple times has no extra effect.  Disable it again with --no-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-reqd ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-revoke-best-effort&lt;br /&gt;
              (Schannel) This option tells curl to ignore certificate revocation checks when they failed due to missing/offline distribution points for the revocation check lists.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-revoke-best-effort multiple times has no extra effect.  Disable it again with --no-ssl-revoke-best-effort.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-revoke-best-effort https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -k, --insecure. Added in 7.70.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl  (FTP IMAP POP3 SMTP LDAP) Warning: this is considered an insecure option. Consider using --ssl-reqd instead to be sure curl upgrades to a secure connection.&lt;br /&gt;
&lt;br /&gt;
              Try to use SSL/TLS for the connection. Reverts to a non-secure connection if the server does not support SSL/TLS. See also --ftp-ssl-control and --ssl-reqd for different levels of  encryption&lt;br /&gt;
              required.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and ignored by the generic ldap backend.&lt;br /&gt;
&lt;br /&gt;
              Please note that a server may close the connection if the negotiation does not succeed.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl. That option name can still be used but will be removed in a future version.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl multiple times has no extra effect.  Disable it again with --no-ssl.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl pop3://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-reqd, -k, --insecure and --ciphers.&lt;br /&gt;
&lt;br /&gt;
       -2, --sslv2&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv2, but starting in curl 7.77.0 this instruction is ignored. SSLv2 is widely considered insecure (see RFC 6176).&lt;br /&gt;
&lt;br /&gt;
              Providing -2, --sslv2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http2. -2, --sslv2 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       -3, --sslv3&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv3, but starting in curl 7.77.0 this instruction is ignored. SSLv3 is widely considered insecure (see RFC 7568).&lt;br /&gt;
&lt;br /&gt;
              Providing -3, --sslv3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -3, --sslv3 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -2, --sslv2 and -1, --tlsv1 and  --tlsv1.1  and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       --stderr &amp;lt;file&amp;gt;&lt;br /&gt;
              Redirect all writes to stderr to the specified file instead. If the file name is a plain &#039;-&#039;, it is instead written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --stderr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --stderr output.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent.&lt;br /&gt;
&lt;br /&gt;
       --styled-output&lt;br /&gt;
              Enables the automatic use of bold font styles when writing HTTP headers to the terminal. Use --no-styled-output to switch them off.&lt;br /&gt;
&lt;br /&gt;
              Styled output requires a terminal that supports bold fonts. This feature is not present on curl for Windows due to lack of this capability.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --styled-output multiple times has no extra effect.  Disable it again with --no-styled-output.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --styled-output -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -I, --head and -v, --verbose. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --suppress-connect-headers&lt;br /&gt;
              When  -p,  --proxytunnel  is used and a CONNECT request is made do not output proxy CONNECT response headers. This option is meant to be used with -D, --dump-header or -i, --include which are&lt;br /&gt;
              used to show protocol headers in the output. It has no effect on debug options such as -v, --verbose or --trace, or any statistics.&lt;br /&gt;
&lt;br /&gt;
              Providing --suppress-connect-headers multiple times has no extra effect.  Disable it again with --no-suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --suppress-connect-headers --include -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -D, --dump-header, -i, --include and -p, --proxytunnel. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-fastopen&lt;br /&gt;
              Enable use of TCP Fast Open (RFC7413).&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-fastopen multiple times has no extra effect.  Disable it again with --no-tcp-fastopen.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-fastopen https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --false-start. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-nodelay&lt;br /&gt;
              Turn on the TCP_NODELAY option. See the curl_easy_setopt(3) man page for details about this option.&lt;br /&gt;
&lt;br /&gt;
              Since 7.50.2, curl sets this option by default and you need to explicitly switch it off if you do not want it on.&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-nodelay multiple times has no extra effect.  Disable it again with --no-tcp-nodelay.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-nodelay https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -N, --no-buffer.&lt;br /&gt;
&lt;br /&gt;
       -t, --telnet-option &amp;lt;opt=val&amp;gt;&lt;br /&gt;
              Pass options to the telnet protocol. Supported options are:&lt;br /&gt;
&lt;br /&gt;
              TTYPE=&amp;lt;term&amp;gt; Sets the terminal type.&lt;br /&gt;
&lt;br /&gt;
              XDISPLOC=&amp;lt;X display&amp;gt; Sets the X display location.&lt;br /&gt;
&lt;br /&gt;
              NEW_ENV=&amp;lt;var,val&amp;gt; Sets an environment variable.&lt;br /&gt;
&lt;br /&gt;
              -t, --telnet-option can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -t TTYPE=vt100 telnet://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --tftp-blksize &amp;lt;value&amp;gt;&lt;br /&gt;
              (TFTP) Set TFTP BLKSIZE option (must be &amp;gt;512). This is the block size that curl will try to use when transferring data to or from a TFTP server. By default 512 bytes will be used.&lt;br /&gt;
&lt;br /&gt;
              If --tftp-blksize is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-blksize 1024 tftp://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
       --tftp-no-options&lt;br /&gt;
              (TFTP) Tells curl not to send TFTP options requests.&lt;br /&gt;
&lt;br /&gt;
              This option improves interop with some legacy servers that do not acknowledge or properly implement TFTP options. When this option is used --tftp-blksize is ignored.&lt;br /&gt;
&lt;br /&gt;
              Providing --tftp-no-options multiple times has no extra effect.  Disable it again with --no-tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-no-options tftp://192.168.0.1/&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-blksize. Added in 7.48.0.&lt;br /&gt;
&lt;br /&gt;
       -z, --time-cond &amp;lt;time&amp;gt;&lt;br /&gt;
              (HTTP FTP) Request a file that has been modified later than the given time and date, or one that has been modified before that time. The &amp;lt;date expression&amp;gt; can be all sorts of date strings  or&lt;br /&gt;
              if it does not match any internal ones, it is taken as a filename and tries to get the modification date (mtime) from &amp;lt;file&amp;gt; instead. See the curl_getdate(3) man pages for date expression de‐&lt;br /&gt;
              tails.&lt;br /&gt;
&lt;br /&gt;
              Start the date expression with a dash (-) to make it request for a document that is older than the given date/time, default is a document that is newer than the specified date/time.&lt;br /&gt;
&lt;br /&gt;
              If -z, --time-cond is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -z &amp;quot;Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z &amp;quot;-Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare and -R, --remote-time.&lt;br /&gt;
&lt;br /&gt;
       --tls-max &amp;lt;VERSION&amp;gt;&lt;br /&gt;
              (SSL) VERSION defines maximum supported TLS version. The minimum acceptable version is set by tlsv1.0, tlsv1.1, tlsv1.2 or tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              default&lt;br /&gt;
                     Use up to recommended TLS version.&lt;br /&gt;
&lt;br /&gt;
              1.0    Use up to TLSv1.0.&lt;br /&gt;
&lt;br /&gt;
              1.1    Use up to TLSv1.1.&lt;br /&gt;
&lt;br /&gt;
              1.2    Use up to TLSv1.2.&lt;br /&gt;
&lt;br /&gt;
              1.3    Use up to TLSv1.3.&lt;br /&gt;
&lt;br /&gt;
       If --tls-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --tls-max 1.2 https://example.com&lt;br /&gt;
        curl --tls-max 1.3 --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also --tlsv1.0, --tlsv1.1, --tlsv1.2 and --tlsv1.3. --tls-max requires that the underlying libcurl was built to support TLS. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS) Specifies which cipher suites to use in the connection if it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher suite details  on  this&lt;br /&gt;
              URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This  option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the --ciphers&lt;br /&gt;
              option.&lt;br /&gt;
&lt;br /&gt;
              If --tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Set TLS authentication type. Currently, the only supported option is &amp;quot;SRP&amp;quot;, for TLS-SRP (RFC 5054). If --tlsuser and --tlspassword are specified but --tlsauthtype is not, then this option de‐&lt;br /&gt;
              faults to &amp;quot;SRP&amp;quot;. This option works only if the underlying libcurl is built with TLS-SRP support, which requires OpenSSL or GnuTLS with TLS-SRP support.&lt;br /&gt;
&lt;br /&gt;
              If --tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsauthtype SRP https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Set password for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlsuser also be set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Set username for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlspassword also is set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlspassword.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.0&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.0.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.1&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.1 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In old versions of curl this option was documented to allow _only_ TLS 1.1.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum  TLS  ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.2&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.2 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.2.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.3&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.3 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              Note that TLS 1.3 is not supported by all TLS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.2 and --tls-max. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -1, --tlsv1&lt;br /&gt;
              (SSL) Tells curl to use at least TLS version 1.x when negotiating with a remote TLS server. That means TLS version 1.0 or higher&lt;br /&gt;
&lt;br /&gt;
              Providing -1, --tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -1, --tlsv1 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --tlsv1.1 and --tlsv1.2 and --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --tr-encoding&lt;br /&gt;
              (HTTP) Request a compressed Transfer-Encoding response using one of the algorithms curl supports, and uncompress the data while receiving it.&lt;br /&gt;
&lt;br /&gt;
              Providing --tr-encoding multiple times has no extra effect.  Disable it again with --no-tr-encoding.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tr-encoding https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed.&lt;br /&gt;
&lt;br /&gt;
       --trace-ascii &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to stdout.&lt;br /&gt;
&lt;br /&gt;
              This is similar to --trace, but leaves out the hex part and only shows the ASCII part of the dump. It makes smaller output that might be easier to read for untrained humans.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace-ascii is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-ascii log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and --trace. This option is mutually exclusive to --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace-time&lt;br /&gt;
              Prepends a time stamp to each trace or verbose line that curl displays.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --trace-time multiple times has no extra effect.  Disable it again with --no-trace-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-time --trace-ascii output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to  stdout.  Use  &amp;quot;%&amp;quot;  as&lt;br /&gt;
              filename to have the output sent to stderr.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace-ascii and --trace-time. This option is mutually exclusive to -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       --unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through this Unix domain socket, instead of using the network.&lt;br /&gt;
&lt;br /&gt;
              If --unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --unix-socket socket-path https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --abstract-unix-socket. Added in 7.40.0.&lt;br /&gt;
&lt;br /&gt;
       -T, --upload-file &amp;lt;file&amp;gt;&lt;br /&gt;
              This transfers the specified local file to the remote URL. If there is no file part in the specified URL, curl will append the local file name. NOTE that you must use a trailing / on the last&lt;br /&gt;
              directory to really prove to Curl that there is no file name or curl will think that your last directory name is the remote file name to use. That will most likely cause the upload  operation&lt;br /&gt;
              to fail. If this is used on an HTTP(S) server, the PUT command will be used.&lt;br /&gt;
&lt;br /&gt;
              Use the file name &amp;quot;-&amp;quot; (a single dash) to use stdin instead of a given file.  Alternately, the file name &amp;quot;.&amp;quot; (a single period) may be specified instead of &amp;quot;-&amp;quot; to use stdin in non-blocking mode&lt;br /&gt;
              to allow reading server output while stdin is being uploaded.&lt;br /&gt;
&lt;br /&gt;
              You can specify one -T, --upload-file for each URL on the command line. Each -T, --upload-file + URL pair specifies what to upload and to where. curl also supports &amp;quot;globbing&amp;quot; of the -T, --up‐&lt;br /&gt;
              load-file argument, meaning that you can upload multiple files to a single URL by using the same URL globbing style supported in the URL.&lt;br /&gt;
&lt;br /&gt;
              When  uploading  to an SMTP server: the uploaded data is assumed to be RFC 5322 formatted. It has to feature the necessary set of headers and mail body formatted correctly by the user as curl&lt;br /&gt;
              will not transcode nor encode it further in any way.&lt;br /&gt;
&lt;br /&gt;
              -T, --upload-file can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -T file https://example.com&lt;br /&gt;
               curl -T &amp;quot;img[1-1000].png&amp;quot; ftp://ftp.example.com/&lt;br /&gt;
               curl --upload-file &amp;quot;{file1,file2}&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --url-query &amp;lt;data&amp;gt;&lt;br /&gt;
              (all) This option adds a piece of data, usually a name + value pair, to the end of the URL query part. The syntax is identical to that used for --data-urlencode with one extension:&lt;br /&gt;
&lt;br /&gt;
              If the argument starts with a &#039;+&#039; (plus), the rest of the string is provided as-is unencoded.&lt;br /&gt;
&lt;br /&gt;
              The query part of a URL is the one following the question mark on the right end.&lt;br /&gt;
&lt;br /&gt;
              --url-query can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --url-query name=val https://example.com&lt;br /&gt;
               curl --url-query =encodethis http://example.net/foo&lt;br /&gt;
               curl --url-query name@file https://example.com&lt;br /&gt;
               curl --url-query @fileonly https://example.com&lt;br /&gt;
               curl --url-query &amp;quot;+name=%20foo&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-urlencode and -G, --get. Added in 7.87.0.&lt;br /&gt;
&lt;br /&gt;
       --url &amp;lt;url&amp;gt;&lt;br /&gt;
              Specify a URL to fetch. This option is mostly handy when you want to specify URL(s) in a config file.&lt;br /&gt;
&lt;br /&gt;
              If the given URL is missing a scheme name (such as &amp;quot;http://&amp;quot; or &amp;quot;ftp://&amp;quot; etc) then curl will make a guess based on the host. If the outermost sub-domain name matches DICT,  FTP,  IMAP,  LDAP,&lt;br /&gt;
              POP3 or SMTP then that protocol will be used, otherwise HTTP will be used. Since 7.45.0 guessing can be disabled by setting a default protocol, see --proto-default for details.&lt;br /&gt;
&lt;br /&gt;
              To control where this URL is written, use the -o, --output or the -O, --remote-name options.&lt;br /&gt;
&lt;br /&gt;
              WARNING: On Windows, particular file:// accesses can be converted to network accesses by the operating system. Beware!&lt;br /&gt;
&lt;br /&gt;
              --url can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -B, --use-ascii&lt;br /&gt;
              (FTP LDAP) Enable ASCII transfer. For FTP, this can also be enforced by using a URL that ends with &amp;quot;;type=A&amp;quot;. This option causes data sent to stdout to be in text mode for win32 systems.&lt;br /&gt;
&lt;br /&gt;
              Providing -B, --use-ascii multiple times has no extra effect.  Disable it again with --no-use-ascii.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -B ftp://example.com/README&lt;br /&gt;
&lt;br /&gt;
              See also --crlf and --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       -A, --user-agent &amp;lt;name&amp;gt;&lt;br /&gt;
              (HTTP) Specify the User-Agent string to send to the HTTP server. To encode blanks in the string, surround the string with single quote marks. This header can also be set with the -H, --header&lt;br /&gt;
              or the --proxy-header options.&lt;br /&gt;
&lt;br /&gt;
              If you give an empty argument to -A, --user-agent (&amp;quot;&amp;quot;), it will remove the header completely from the request. If you prefer a blank header, you can set it to a single space (&amp;quot; &amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              If -A, --user-agent is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -A &amp;quot;Agent 007&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -H, --header and --proxy-header.&lt;br /&gt;
&lt;br /&gt;
       -u, --user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for server authentication. Overrides -n, --netrc and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              If you simply specify the user name, curl will prompt for a password.&lt;br /&gt;
&lt;br /&gt;
              The user name and passwords are split up on the first colon, which makes it impossible to use a colon in the user name with this option. The password can, still.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              When  using  Kerberos  V5  with a Windows based server you should include the Windows domain name in the user name, in order for the server to successfully obtain a Kerberos Ticket. If you do&lt;br /&gt;
              not, then the initial authentication handshake may fail.&lt;br /&gt;
&lt;br /&gt;
              When using NTLM, the user name can be specified simply as the user name, without the domain, if there is a single domain and forest in your setup for example.&lt;br /&gt;
&lt;br /&gt;
              To specify the domain name use either Down-Level Logon Name or UPN (User Principal Name) formats. For example, EXAMPLE\user and user@example.com respectively.&lt;br /&gt;
&lt;br /&gt;
              If you use a Windows SSPI-enabled curl binary and perform Kerberos V5, Negotiate, NTLM or Digest authentication then you can tell curl to select the user name and password from your  environ‐&lt;br /&gt;
              ment by specifying a single colon with this option: &amp;quot;-u :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If -u, --user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u user:secret https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -v, --verbose&lt;br /&gt;
              Makes  curl  verbose during the operation. Useful for debugging and seeing what&#039;s going on &amp;quot;under the hood&amp;quot;. A line starting with &#039;&amp;gt;&#039; means &amp;quot;header data&amp;quot; sent by curl, &#039;&amp;lt;&#039; means &amp;quot;header data&amp;quot;&lt;br /&gt;
              received by curl that is hidden in normal cases, and a line starting with &#039;*&#039; means additional info provided by curl.&lt;br /&gt;
&lt;br /&gt;
              If you only want HTTP headers in the output, -i, --include might be the option you are looking for.&lt;br /&gt;
&lt;br /&gt;
              If you think this option still does not give you enough details, consider using --trace or --trace-ascii instead.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Use -s, --silent to make curl really quiet.&lt;br /&gt;
&lt;br /&gt;
              Providing -v, --verbose multiple times has no extra effect.  Disable it again with --no-verbose.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --verbose https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -i, --include. This option is mutually exclusive to --trace and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -V, --version&lt;br /&gt;
              Displays information about curl and the libcurl version it uses.&lt;br /&gt;
&lt;br /&gt;
              The first line includes the full version of curl, libcurl and other 3rd party libraries linked with the executable.&lt;br /&gt;
&lt;br /&gt;
              The second line (starts with &amp;quot;Protocols:&amp;quot;) shows all protocols that libcurl reports to support.&lt;br /&gt;
&lt;br /&gt;
              The third line (starts with &amp;quot;Features:&amp;quot;) shows specific features libcurl reports to offer. Available features include:&lt;br /&gt;
&lt;br /&gt;
              alt-svc&lt;br /&gt;
                     Support for the Alt-Svc: header is provided.&lt;br /&gt;
&lt;br /&gt;
              AsynchDNS&lt;br /&gt;
                     This curl uses asynchronous name resolves. Asynchronous name resolves can be done using either the c-ares or the threaded resolver backends.&lt;br /&gt;
&lt;br /&gt;
              brotli Support for automatic brotli compression over HTTP(S).&lt;br /&gt;
&lt;br /&gt;
              CharConv&lt;br /&gt;
                     curl was built with support for character set conversions (like EBCDIC)&lt;br /&gt;
&lt;br /&gt;
              Debug  This curl uses a libcurl built with Debug. This enables more error-tracking and memory debugging etc. For curl-developers only!&lt;br /&gt;
&lt;br /&gt;
              gsasl  The built-in SASL authentication includes extensions to support SCRAM because libcurl was built with libgsasl.&lt;br /&gt;
&lt;br /&gt;
              GSS-API&lt;br /&gt;
                     GSS-API is supported.&lt;br /&gt;
&lt;br /&gt;
              HSTS   HSTS support is present.&lt;br /&gt;
&lt;br /&gt;
              HTTP2  HTTP/2 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTP3  HTTP/3 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTPS-proxy&lt;br /&gt;
                     This curl is built to support HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              IDN    This curl supports IDN - international domain names.&lt;br /&gt;
&lt;br /&gt;
              IPv6   You can use IPv6 with this.&lt;br /&gt;
&lt;br /&gt;
              Kerberos&lt;br /&gt;
                     Kerberos V5 authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              Largefile&lt;br /&gt;
                     This curl supports transfers of large files, files larger than 2GB.&lt;br /&gt;
&lt;br /&gt;
              libz   Automatic decompression (via gzip, deflate) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
              MultiSSL&lt;br /&gt;
                     This curl supports multiple TLS backends.&lt;br /&gt;
&lt;br /&gt;
              NTLM   NTLM authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              NTLM_WB&lt;br /&gt;
                     NTLM delegation to winbind helper is supported.&lt;br /&gt;
&lt;br /&gt;
              PSL    PSL is short for Public Suffix List and means that this curl has been built with knowledge about &amp;quot;public suffixes&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              SPNEGO SPNEGO authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              SSL    SSL versions of various protocols are supported, such as HTTPS, FTPS, POP3S and so on.&lt;br /&gt;
&lt;br /&gt;
              SSPI   SSPI is supported.&lt;br /&gt;
&lt;br /&gt;
              TLS-SRP&lt;br /&gt;
                     SRP (Secure Remote Password) authentication is supported for TLS.&lt;br /&gt;
&lt;br /&gt;
              TrackMemory&lt;br /&gt;
                     Debug memory tracking is supported.&lt;br /&gt;
&lt;br /&gt;
              Unicode&lt;br /&gt;
                     Unicode support on Windows.&lt;br /&gt;
&lt;br /&gt;
              UnixSockets&lt;br /&gt;
                     Unix sockets support is provided.&lt;br /&gt;
&lt;br /&gt;
              zstd   Automatic decompression (via zstd) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --version&lt;br /&gt;
&lt;br /&gt;
       See also -h, --help and -M, --manual.&lt;br /&gt;
&lt;br /&gt;
       -w, --write-out &amp;lt;format&amp;gt;&lt;br /&gt;
              Make curl display information on stdout after a completed transfer. The format is a string that may contain plain text mixed with any number of variables. The format can  be  specified  as  a&lt;br /&gt;
              literal &amp;quot;string&amp;quot;, or you can have curl read the format from a file with &amp;quot;@filename&amp;quot; and to tell curl to read the format from stdin you write &amp;quot;@-&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              The  variables  present in the output format will be substituted by the value or text that curl thinks fit, as described below. All variables are specified as %{variable_name} and to output a&lt;br /&gt;
              normal % you just write them as %%. You can output a newline by using \n, a carriage return with \r and a tab space with \t.&lt;br /&gt;
&lt;br /&gt;
              The output will be written to standard output, but this can be switched to standard error by using %{stderr}.&lt;br /&gt;
&lt;br /&gt;
              Output HTTP headers from the most recent request by using %header{name} where name is the case insensitive name of the header (without the trailing colon). The header contents are exactly  as&lt;br /&gt;
              sent over the network, with leading and trailing whitespace trimmed. Added in curl 7.84.0.&lt;br /&gt;
&lt;br /&gt;
              NOTE:  In Windows the %-symbol is a special symbol used to expand environment variables. In batch files all occurrences of % must be doubled when using this option to properly escape. If this&lt;br /&gt;
              option is used at the command prompt then the % cannot be escaped and unintended expansion is possible.&lt;br /&gt;
&lt;br /&gt;
              The variables available are:&lt;br /&gt;
&lt;br /&gt;
              certs          Output the certificate chain with details. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              content_type   The Content-Type of the requested document, if there was any.&lt;br /&gt;
&lt;br /&gt;
              errormsg       The error message. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              exitcode       The numerical exitcode of the transfer. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              filename_effective&lt;br /&gt;
                             The ultimate filename that curl writes out to. This is only meaningful if curl is told to write to a file with the -O, --remote-name or -o, --output option. It&#039;s most useful in&lt;br /&gt;
                             combination with the -J, --remote-header-name option.&lt;br /&gt;
&lt;br /&gt;
              ftp_entry_path The initial path curl ended up in when logging on to the remote FTP server.&lt;br /&gt;
&lt;br /&gt;
              header_json    A JSON object with all HTTP response headers from the recent transfer. Values are provided as arrays, since in the case of multiple headers there can be multiple values. (Added&lt;br /&gt;
                             in 7.83.0)&lt;br /&gt;
&lt;br /&gt;
                             The header names provided in lowercase, listed in order of appearance over the wire. Except for duplicated headers. They are grouped on the first  occurrence  of  that  header,&lt;br /&gt;
                             each value is presented in the JSON array.&lt;br /&gt;
&lt;br /&gt;
              http_code      The numerical response code that was found in the last retrieved HTTP(S) or FTP(s) transfer.&lt;br /&gt;
&lt;br /&gt;
              http_connect   The numerical code that was found in the last response (from a proxy) to a curl CONNECT request.&lt;br /&gt;
&lt;br /&gt;
              http_version   The http version that was effectively used. (Added in 7.50.0)&lt;br /&gt;
&lt;br /&gt;
              json           A JSON object with all available keys.&lt;br /&gt;
&lt;br /&gt;
              local_ip       The IP address of the local end of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              local_port     The local port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              method         The http method used in the most recent HTTP request. (Added in 7.72.0)&lt;br /&gt;
&lt;br /&gt;
              num_certs      Number of server certificates received in the TLS handshake. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              num_connects   Number of new connects made in the recent transfer.&lt;br /&gt;
&lt;br /&gt;
              num_headers    The number of response headers in the most recent request (restarted at each redirect). Note that the status line IS NOT a header. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              num_redirects  Number of redirects that were followed in the request.&lt;br /&gt;
&lt;br /&gt;
              onerror        The rest of the output is only shown if the transfer returned a non-zero error (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              proxy_ssl_verify_result&lt;br /&gt;
                             The result of the HTTPS proxy&#039;s SSL peer certificate verification that was requested. 0 means the verification was successful. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              redirect_url   When an HTTP request was made without -L, --location to follow redirects (or when --max-redirs is met), this variable will show the actual URL a redirect would have gone to.&lt;br /&gt;
&lt;br /&gt;
              referer        The Referer: header, if there was any. (Added in 7.76.0)&lt;br /&gt;
&lt;br /&gt;
              remote_ip      The remote IP address of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              remote_port    The remote port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              response_code  The numerical response code that was found in the last transfer (formerly known as &amp;quot;http_code&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              scheme         The URL scheme (sometimes called protocol) that was effectively used. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              size_download  The total amount of bytes that were downloaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              size_header    The total amount of bytes of the downloaded headers.&lt;br /&gt;
&lt;br /&gt;
              size_request   The total amount of bytes that were sent in the HTTP request.&lt;br /&gt;
&lt;br /&gt;
              size_upload    The total amount of bytes that were uploaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              speed_download The average download speed that curl measured for the complete download. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              speed_upload   The average upload speed that curl measured for the complete upload. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              ssl_verify_result&lt;br /&gt;
                             The result of the SSL peer certificate verification that was requested. 0 means the verification was successful.&lt;br /&gt;
&lt;br /&gt;
              stderr         From this point on, the -w, --write-out output will be written to standard error. (Added in 7.63.0)&lt;br /&gt;
&lt;br /&gt;
              stdout         From  this  point  on, the -w, --write-out output will be written to standard output.  This is the default, but can be used to switch back after switching to stderr.  (Added in&lt;br /&gt;
                             7.63.0)&lt;br /&gt;
&lt;br /&gt;
              time_appconnect&lt;br /&gt;
                             The time, in seconds, it took from the start until the SSL/SSH/etc connect/handshake to the remote host was completed.&lt;br /&gt;
&lt;br /&gt;
              time_connect   The time, in seconds, it took from the start until the TCP connect to the remote host (or proxy) was completed.&lt;br /&gt;
&lt;br /&gt;
              time_namelookup&lt;br /&gt;
                             The time, in seconds, it took from the start until the name resolving was completed.&lt;br /&gt;
&lt;br /&gt;
              time_pretransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the file transfer was just about to begin. This includes all pre-transfer commands and negotiations that are specific to  the&lt;br /&gt;
                             particular protocol(s) involved.&lt;br /&gt;
&lt;br /&gt;
              time_redirect  The  time,  in seconds, it took for all redirection steps including name lookup, connect, pretransfer and transfer before the final transaction was started. time_redirect shows&lt;br /&gt;
                             the complete execution time for multiple redirections.&lt;br /&gt;
&lt;br /&gt;
              time_starttransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the first byte was just about to be transferred. This includes time_pretransfer and also the time the server needed to calcu‐&lt;br /&gt;
                             late the result.&lt;br /&gt;
&lt;br /&gt;
              time_total     The total time, in seconds, that the full operation lasted.&lt;br /&gt;
&lt;br /&gt;
              url            The URL that was fetched. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              urlnum         The URL index number of this transfer, 0-indexed. De-globbed URLs share the same index number as the origin globbed URL. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              url_effective  The URL that was fetched last. This is most meaningful if you have told curl to follow location: headers.&lt;br /&gt;
&lt;br /&gt;
              If -w, --write-out is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -w &#039;%{http_code}\n&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --xattr&lt;br /&gt;
              When  saving  output  to a file, this option tells curl to store certain file metadata in extended file attributes. Currently, the URL is stored in the xdg.origin.url attribute and, for HTTP,&lt;br /&gt;
              the content type is stored in the mime_type attribute. If the file system does not support extended attributes, a warning is issued.&lt;br /&gt;
&lt;br /&gt;
              Providing --xattr multiple times has no extra effect.  Disable it again with --no-xattr.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --xattr -o storage https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -R, --remote-time, -w, --write-out and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       ~/.curlrc&lt;br /&gt;
              Default config file, see -K, --config for details.&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       The environment variables can be specified in lower case or upper case. The lower case version has precedence. http_proxy is an exception as it is only available in lower case.&lt;br /&gt;
&lt;br /&gt;
       Using an environment variable to set the proxy has the same effect as using the -x, --proxy option.&lt;br /&gt;
&lt;br /&gt;
       http_proxy [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTP.&lt;br /&gt;
&lt;br /&gt;
       HTTPS_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTPS.&lt;br /&gt;
&lt;br /&gt;
       [url-protocol]_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for [url-protocol], where the protocol is a protocol that curl supports and as specified in a URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP, etc.&lt;br /&gt;
&lt;br /&gt;
       ALL_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use if no protocol-specific proxy is set.&lt;br /&gt;
&lt;br /&gt;
       NO_PROXY &amp;lt;comma-separated list of hosts/domains&amp;gt;&lt;br /&gt;
              list of host names that should not go through any proxy. If set to an asterisk &#039;*&#039; only, it matches all hosts. Each name in this list is matched as either a domain  name  which  contains  the&lt;br /&gt;
              hostname, or the hostname itself.&lt;br /&gt;
&lt;br /&gt;
              This  environment  variable disables use of the proxy even when specified with the -x, --proxy option. That is NO_PROXY=direct.example.com curl -x http://proxy.example.com http://direct.exam‐&lt;br /&gt;
              ple.com accesses the target URL directly, and NO_PROXY=direct.example.com curl -x http://proxy.example.com http://somewhere.example.com accesses the target URL through the proxy.&lt;br /&gt;
&lt;br /&gt;
              The list of host names can also be include numerical IP addresses, and IPv6 versions should then be given without enclosing brackets.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses can be specified using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use in the comparison.  For  example&lt;br /&gt;
              &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       APPDATA &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the primary home variable are all unset.&lt;br /&gt;
&lt;br /&gt;
       COLUMNS &amp;lt;terminal width&amp;gt;&lt;br /&gt;
              If set, the specified number of characters will be used as the terminal width when the alternative progress-bar is shown. If not set, curl will try to figure it out using other ways.&lt;br /&gt;
&lt;br /&gt;
       CURL_CA_BUNDLE &amp;lt;file&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       CURL_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, is the first variable curl checks when trying to find its home directory. If not set, it continues to check XDG_CONFIG_HOME&lt;br /&gt;
&lt;br /&gt;
       CURL_SSL_BACKEND &amp;lt;TLS backend&amp;gt;&lt;br /&gt;
              If  curl  was  built  with support for &amp;quot;MultiSSL&amp;quot;, meaning that it has built-in support for more than one TLS backend, this environment variable can be set to the case insensitive name of the&lt;br /&gt;
              particular backend to use when curl is invoked. Setting a name that is not a built-in alternative will make curl stay with the default.&lt;br /&gt;
&lt;br /&gt;
              SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls, nss, openssl, rustls, schannel, secure-transport, wolfssl&lt;br /&gt;
&lt;br /&gt;
       HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, this is used to find the home directory when that is needed. Like when looking for the default .curlrc. CURL_HOME and XDG_CONFIG_HOME have preference.&lt;br /&gt;
&lt;br /&gt;
       QLOGDIR &amp;lt;directory name&amp;gt;&lt;br /&gt;
              If curl was built with HTTP/3 support, setting this environment variable to a local directory will make curl produce qlogs in that directory, using file names named after the destination con‐&lt;br /&gt;
              nection id (in hex). Do note that these files can become rather large. Works with both QUIC backends.&lt;br /&gt;
&lt;br /&gt;
       SHELL  Used on VMS when trying to detect if using a DCL or a &amp;quot;unix&amp;quot; shell.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_DIR &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, will be used as the --capath value.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_FILE &amp;lt;path&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       SSLKEYLOGFILE &amp;lt;file name&amp;gt;&lt;br /&gt;
              If  you  set  this  environment variable to a file name, curl will store TLS secrets from its connections in that file when invoked to enable you to analyze the TLS traffic in real time using&lt;br /&gt;
              network analyzing tools such as Wireshark. This works with the following TLS backends: OpenSSL, libressl, BoringSSL, GnuTLS, NSS and wolfSSL.&lt;br /&gt;
&lt;br /&gt;
       USERPROFILE &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the other, primary, variable are all unset. If set, curl will use the path &amp;quot;$USERPROFILE\Application Data&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       XDG_CONFIG_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If CURL_HOME is not set, this variable is checked when looking for a default .curlrc file.&lt;br /&gt;
&lt;br /&gt;
PROXY PROTOCOL PREFIXES&lt;br /&gt;
       The proxy string may be specified with a protocol:// prefix to specify alternative proxy protocols.&lt;br /&gt;
&lt;br /&gt;
       If no protocol is specified in the proxy string or if the string does not match a supported one, the proxy will be treated as an HTTP proxy.&lt;br /&gt;
&lt;br /&gt;
       The supported proxy protocol prefixes are as follows:&lt;br /&gt;
&lt;br /&gt;
       http://&lt;br /&gt;
              Makes it use it as an HTTP proxy. The default if no scheme prefix is used.&lt;br /&gt;
&lt;br /&gt;
       https://&lt;br /&gt;
              Makes it treated as an HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
       socks4://&lt;br /&gt;
              Makes it the equivalent of --socks4&lt;br /&gt;
&lt;br /&gt;
       socks4a://&lt;br /&gt;
              Makes it the equivalent of --socks4a&lt;br /&gt;
&lt;br /&gt;
       socks5://&lt;br /&gt;
              Makes it the equivalent of --socks5&lt;br /&gt;
&lt;br /&gt;
       socks5h://&lt;br /&gt;
              Makes it the equivalent of --socks5-hostname&lt;br /&gt;
&lt;br /&gt;
EXIT CODES&lt;br /&gt;
       There are a bunch of different error codes and their corresponding error messages that may appear under error conditions. At the time of this writing, the exit codes are:&lt;br /&gt;
&lt;br /&gt;
       0      Success. The operation completed successfully according to the instructions.&lt;br /&gt;
&lt;br /&gt;
       1      Unsupported protocol. This build of curl has no support for this protocol.&lt;br /&gt;
&lt;br /&gt;
       2      Failed to initialize.&lt;br /&gt;
&lt;br /&gt;
       3      URL malformed. The syntax was not correct.&lt;br /&gt;
&lt;br /&gt;
       4      A feature or option that was needed to perform the desired request was not enabled or was explicitly disabled at build-time. To make curl able to do this, you probably need another  build  of&lt;br /&gt;
              libcurl.&lt;br /&gt;
&lt;br /&gt;
       5      Could not resolve proxy. The given proxy host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       6      Could not resolve host. The given remote host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       7      Failed to connect to host.&lt;br /&gt;
&lt;br /&gt;
       8      Weird server reply. The server sent data curl could not parse.&lt;br /&gt;
&lt;br /&gt;
       9      FTP  access  denied. The server denied login or denied access to the particular resource or directory you wanted to reach. Most often you tried to change to a directory that does not exist on&lt;br /&gt;
              the server.&lt;br /&gt;
&lt;br /&gt;
       10     FTP accept failed. While waiting for the server to connect back when an active FTP session is used, an error code was sent over the control connection or similar.&lt;br /&gt;
&lt;br /&gt;
       11     FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.&lt;br /&gt;
&lt;br /&gt;
       12     During an active FTP session while waiting for the server to connect back to curl, the timeout expired.&lt;br /&gt;
&lt;br /&gt;
       13     FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.&lt;br /&gt;
&lt;br /&gt;
       14     FTP weird 227 format. Curl could not parse the 227-line the server sent.&lt;br /&gt;
&lt;br /&gt;
       15     FTP cannot use host. Could not resolve the host IP we got in the 227-line.&lt;br /&gt;
&lt;br /&gt;
       16     HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       17     FTP could not set binary. Could not change transfer method to binary.&lt;br /&gt;
&lt;br /&gt;
       18     Partial file. Only a part of the file was transferred.&lt;br /&gt;
&lt;br /&gt;
       19     FTP could not download/access the given file, the RETR (or similar) command failed.&lt;br /&gt;
&lt;br /&gt;
       21     FTP quote error. A quote command returned error from the server.&lt;br /&gt;
&lt;br /&gt;
       22     HTTP page not retrieved. The requested URL was not found or returned another error with the HTTP error code being 400 or above. This return code only appears if -f, --fail is used.&lt;br /&gt;
&lt;br /&gt;
       23     Write error. Curl could not write data to a local filesystem or similar.&lt;br /&gt;
&lt;br /&gt;
       25     FTP could not STOR file. The server denied the STOR operation, used for FTP uploading.&lt;br /&gt;
&lt;br /&gt;
       26     Read error. Various reading problems.&lt;br /&gt;
&lt;br /&gt;
       27     Out of memory. A memory allocation request failed.&lt;br /&gt;
&lt;br /&gt;
       28     Operation timeout. The specified time-out period was reached according to the conditions.&lt;br /&gt;
&lt;br /&gt;
       30     FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT command, try doing a transfer using PASV instead!&lt;br /&gt;
&lt;br /&gt;
       31     FTP could not use REST. The REST command failed. This command is used for resumed FTP transfers.&lt;br /&gt;
&lt;br /&gt;
       33     HTTP range error. The range &amp;quot;command&amp;quot; did not work.&lt;br /&gt;
&lt;br /&gt;
       34     HTTP post error. Internal post-request generation error.&lt;br /&gt;
&lt;br /&gt;
       35     SSL connect error. The SSL handshaking failed.&lt;br /&gt;
&lt;br /&gt;
       36     Bad download resume. Could not continue an earlier aborted download.&lt;br /&gt;
&lt;br /&gt;
       37     FILE could not read file. Failed to open the file. Permissions?&lt;br /&gt;
&lt;br /&gt;
       38     LDAP cannot bind. LDAP bind operation failed.&lt;br /&gt;
&lt;br /&gt;
       39     LDAP search failed.&lt;br /&gt;
&lt;br /&gt;
       41     Function not found. A required LDAP function was not found.&lt;br /&gt;
&lt;br /&gt;
       42     Aborted by callback. An application told curl to abort the operation.&lt;br /&gt;
&lt;br /&gt;
       43     Internal error. A function was called with a bad parameter.&lt;br /&gt;
&lt;br /&gt;
       45     Interface error. A specified outgoing interface could not be used.&lt;br /&gt;
&lt;br /&gt;
       47     Too many redirects. When following redirects, curl hit the maximum amount.&lt;br /&gt;
&lt;br /&gt;
       48     Unknown option specified to libcurl. This indicates that you passed a weird option to curl that was passed on to libcurl and rejected. Read up in the manual!&lt;br /&gt;
&lt;br /&gt;
       49     Malformed telnet option.&lt;br /&gt;
&lt;br /&gt;
       52     The server did not reply anything, which here is considered an error.&lt;br /&gt;
&lt;br /&gt;
       53     SSL crypto engine not found.&lt;br /&gt;
&lt;br /&gt;
       54     Cannot set SSL crypto engine as default.&lt;br /&gt;
&lt;br /&gt;
       55     Failed sending network data.&lt;br /&gt;
&lt;br /&gt;
       56     Failure in receiving network data.&lt;br /&gt;
&lt;br /&gt;
       58     Problem with the local certificate.&lt;br /&gt;
&lt;br /&gt;
       59     Could not use specified SSL cipher.&lt;br /&gt;
&lt;br /&gt;
       60     Peer certificate cannot be authenticated with known CA certificates.&lt;br /&gt;
&lt;br /&gt;
       61     Unrecognized transfer encoding.&lt;br /&gt;
&lt;br /&gt;
       63     Maximum file size exceeded.&lt;br /&gt;
&lt;br /&gt;
       64     Requested FTP SSL level failed.&lt;br /&gt;
&lt;br /&gt;
       65     Sending the data requires a rewind that failed.&lt;br /&gt;
&lt;br /&gt;
       66     Failed to initialise SSL Engine.&lt;br /&gt;
&lt;br /&gt;
       67     The user name, password, or similar was not accepted and curl failed to log in.&lt;br /&gt;
&lt;br /&gt;
       68     File not found on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       69     Permission problem on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       70     Out of disk space on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       71     Illegal TFTP operation.&lt;br /&gt;
&lt;br /&gt;
       72     Unknown TFTP transfer ID.&lt;br /&gt;
&lt;br /&gt;
       73     File already exists (TFTP).&lt;br /&gt;
&lt;br /&gt;
       74     No such user (TFTP).&lt;br /&gt;
&lt;br /&gt;
       77     Problem reading the SSL CA cert (path? access rights?).&lt;br /&gt;
&lt;br /&gt;
       78     The resource referenced in the URL does not exist.&lt;br /&gt;
&lt;br /&gt;
       79     An unspecified error occurred during the SSH session.&lt;br /&gt;
&lt;br /&gt;
       80     Failed to shut down the SSL connection.&lt;br /&gt;
&lt;br /&gt;
       82     Could not load CRL file, missing or wrong format.&lt;br /&gt;
&lt;br /&gt;
       83     Issuer check failed.&lt;br /&gt;
&lt;br /&gt;
       84     The FTP PRET command failed.&lt;br /&gt;
&lt;br /&gt;
       85     Mismatch of RTSP CSeq numbers.&lt;br /&gt;
&lt;br /&gt;
       86     Mismatch of RTSP Session Identifiers.&lt;br /&gt;
&lt;br /&gt;
       87     Unable to parse FTP file list.&lt;br /&gt;
&lt;br /&gt;
       88     FTP chunk callback reported error.&lt;br /&gt;
&lt;br /&gt;
       89     No connection available, the session will be queued.&lt;br /&gt;
&lt;br /&gt;
       90     SSL public key does not matched pinned public key.&lt;br /&gt;
&lt;br /&gt;
       91     Invalid SSL certificate status.&lt;br /&gt;
&lt;br /&gt;
       92     Stream error in HTTP/2 framing layer.&lt;br /&gt;
&lt;br /&gt;
       93     An API function was called from inside a callback.&lt;br /&gt;
&lt;br /&gt;
       94     An authentication function returned an error.&lt;br /&gt;
&lt;br /&gt;
       95     A problem was detected in the HTTP/3 layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       96     QUIC connection error. This error may be caused by an SSL library error. QUIC is the protocol used for HTTP/3 transfers.&lt;br /&gt;
&lt;br /&gt;
       XX     More error codes will appear here in future releases. The existing ones are meant to never change.&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       If you experience any problems with curl, submit an issue in the project&#039;s bug tracker on GitHub: https://github.com/curl/curl/issues&lt;br /&gt;
&lt;br /&gt;
AUTHORS / CONTRIBUTORS&lt;br /&gt;
       Daniel Stenberg is the main author, but the whole list of contributors is found in the separate THANKS file.&lt;br /&gt;
&lt;br /&gt;
WWW&lt;br /&gt;
       https://curl.se&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       ftp(1), wget(1)&lt;br /&gt;
&lt;br /&gt;
curl 7.88.1                                                                                    February 19 2023                                                                                       curl(1)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1144</id>
		<title>CURL - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1144"/>
		<updated>2026-02-25T12:42:32Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Force to Connect to a given Host */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quick Examples ==&lt;br /&gt;
&lt;br /&gt;
=== Force to Connect to a given Host ===&lt;br /&gt;
&lt;br /&gt;
Connect to host2 instead of host1 :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl https://FQDN --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get the HTTP Headers of a URL ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -I --http2 https://&amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Follow Redirects ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -L &amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing The Download Time ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -D - https://www.ubuntu.com -o /dev/null&lt;br /&gt;
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current&lt;br /&gt;
                                 Dload  Upload   Total   Spent    Left  Speed&lt;br /&gt;
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/2 301 &lt;br /&gt;
server: nginx/1.14.0 (Ubuntu)&lt;br /&gt;
date: Mon, 21 Jul 2025 10:04:33 GMT&lt;br /&gt;
content-type: text/html&lt;br /&gt;
content-length: 162&lt;br /&gt;
location: https://ubuntu.com/&lt;br /&gt;
strict-transport-security: max-age=15724800&lt;br /&gt;
link: &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect; crossorigin, &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect, &amp;lt;https://res.cloudinary.com&amp;gt;; rel=preconnect&lt;br /&gt;
x-cache-status: HIT from content-cache-il3/1&lt;br /&gt;
&lt;br /&gt;
100   162  100   162    0     0    367      0 --:--:-- --:--:-- --:--:--   368&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Recording Cookies ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --cookie-jar received_cookies.txt https://URL -O&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== curl --help all ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --help all                                                  &lt;br /&gt;
     --abstract-unix-socket &amp;lt;path&amp;gt;                 Connect via abstract Unix domain socket&lt;br /&gt;
     --alt-svc &amp;lt;filename&amp;gt;                          Enable alt-svc with this cache file&lt;br /&gt;
     --anyauth                                     Pick any authentication method&lt;br /&gt;
 -a, --append                                      Append to target file when uploading&lt;br /&gt;
     --aws-sigv4 &amp;lt;provider1[:prvdr2[:reg[:srv]]]&amp;gt;  AWS V4 signature auth&lt;br /&gt;
     --basic                                       HTTP Basic Authentication&lt;br /&gt;
     --ca-native                                   Load CA certs from the OS&lt;br /&gt;
     --cacert &amp;lt;file&amp;gt;                               CA certificate to verify peer against&lt;br /&gt;
     --capath &amp;lt;dir&amp;gt;                                CA directory to verify peer against&lt;br /&gt;
 -E, --cert &amp;lt;certificate[:password]&amp;gt;               Client certificate file and password&lt;br /&gt;
     --cert-status                                 Verify server cert status OCSP-staple&lt;br /&gt;
     --cert-type &amp;lt;type&amp;gt;                            Certificate type (DER/PEM/ENG/PROV/P12)&lt;br /&gt;
     --ciphers &amp;lt;list&amp;gt;                              TLS 1.2 (1.1, 1.0) ciphers to use&lt;br /&gt;
     --compressed                                  Request compressed response&lt;br /&gt;
     --compressed-ssh                              Enable SSH compression&lt;br /&gt;
 -K, --config &amp;lt;file&amp;gt;                               Read config from a file&lt;br /&gt;
     --connect-timeout &amp;lt;seconds&amp;gt;                   Maximum time allowed to connect&lt;br /&gt;
     --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;        Connect to host2 instead of host1&lt;br /&gt;
 -C, --continue-at &amp;lt;offset&amp;gt;                        Resumed transfer offset&lt;br /&gt;
 -b, --cookie &amp;lt;data|filename&amp;gt;                      Send cookies from string/load from file&lt;br /&gt;
 -c, --cookie-jar &amp;lt;filename&amp;gt;                       Save cookies to &amp;lt;filename&amp;gt; after operation&lt;br /&gt;
     --create-dirs                                 Create necessary local directory hierarchy&lt;br /&gt;
     --create-file-mode &amp;lt;mode&amp;gt;                     File mode for created files&lt;br /&gt;
     --crlf                                        Convert LF to CRLF in upload&lt;br /&gt;
     --crlfile &amp;lt;file&amp;gt;                              Certificate Revocation list&lt;br /&gt;
     --curves &amp;lt;list&amp;gt;                               (EC) TLS key exchange algorithms to request&lt;br /&gt;
 -d, --data &amp;lt;data&amp;gt;                                 HTTP POST data&lt;br /&gt;
     --data-ascii &amp;lt;data&amp;gt;                           HTTP POST ASCII data&lt;br /&gt;
     --data-binary &amp;lt;data&amp;gt;                          HTTP POST binary data&lt;br /&gt;
     --data-raw &amp;lt;data&amp;gt;                             HTTP POST data, &#039;@&#039; allowed&lt;br /&gt;
     --data-urlencode &amp;lt;data&amp;gt;                       HTTP POST data URL encoded&lt;br /&gt;
     --delegation &amp;lt;LEVEL&amp;gt;                          GSS-API delegation permission&lt;br /&gt;
     --digest                                      HTTP Digest Authentication&lt;br /&gt;
 -q, --disable                                     Disable .curlrc&lt;br /&gt;
     --disable-eprt                                Inhibit using EPRT or LPRT&lt;br /&gt;
     --disable-epsv                                Inhibit using EPSV&lt;br /&gt;
     --disallow-username-in-url                    Disallow username in URL&lt;br /&gt;
     --dns-interface &amp;lt;interface&amp;gt;                   Interface to use for DNS requests&lt;br /&gt;
     --dns-ipv4-addr &amp;lt;address&amp;gt;                     IPv4 address to use for DNS requests&lt;br /&gt;
     --dns-ipv6-addr &amp;lt;address&amp;gt;                     IPv6 address to use for DNS requests&lt;br /&gt;
     --dns-servers &amp;lt;addresses&amp;gt;                     DNS server addrs to use&lt;br /&gt;
     --doh-cert-status                             Verify DoH server cert status OCSP-staple&lt;br /&gt;
     --doh-insecure                                Allow insecure DoH server connections&lt;br /&gt;
     --doh-url &amp;lt;URL&amp;gt;                               Resolve hostnames over DoH&lt;br /&gt;
     --dump-ca-embed                               Write the embedded CA bundle to standard output&lt;br /&gt;
 -D, --dump-header &amp;lt;filename&amp;gt;                      Write the received headers to &amp;lt;filename&amp;gt;&lt;br /&gt;
     --ech &amp;lt;config&amp;gt;                                Configure ECH&lt;br /&gt;
     --egd-file &amp;lt;file&amp;gt;                             EGD socket path for random data&lt;br /&gt;
     --engine &amp;lt;name&amp;gt;                               Crypto engine to use&lt;br /&gt;
     --etag-compare &amp;lt;file&amp;gt;                         Load ETag from file&lt;br /&gt;
     --etag-save &amp;lt;file&amp;gt;                            Parse incoming ETag and save to a file&lt;br /&gt;
     --expect100-timeout &amp;lt;seconds&amp;gt;                 How long to wait for 100-continue&lt;br /&gt;
 -f, --fail                                        Fail fast with no output on HTTP errors&lt;br /&gt;
     --fail-early                                  Fail on first transfer error&lt;br /&gt;
     --fail-with-body                              Fail on HTTP errors but save the body&lt;br /&gt;
     --false-start                                 Enable TLS False Start&lt;br /&gt;
 -F, --form &amp;lt;name=content&amp;gt;                         Specify multipart MIME data&lt;br /&gt;
     --form-escape                                 Escape form fields using backslash&lt;br /&gt;
     --form-string &amp;lt;name=string&amp;gt;                   Specify multipart MIME data&lt;br /&gt;
     --ftp-account &amp;lt;data&amp;gt;                          Account data string&lt;br /&gt;
     --ftp-alternative-to-user &amp;lt;command&amp;gt;           String to replace USER [name]&lt;br /&gt;
     --ftp-create-dirs                             Create the remote dirs if not present&lt;br /&gt;
     --ftp-method &amp;lt;method&amp;gt;                         Control CWD usage&lt;br /&gt;
     --ftp-pasv                                    Send PASV/EPSV instead of PORT&lt;br /&gt;
 -P, --ftp-port &amp;lt;address&amp;gt;                          Send PORT instead of PASV&lt;br /&gt;
     --ftp-pret                                    Send PRET before PASV&lt;br /&gt;
     --ftp-skip-pasv-ip                            Skip the IP address for PASV&lt;br /&gt;
     --ftp-ssl-ccc                                 Send CCC after authenticating&lt;br /&gt;
     --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;           Set CCC mode&lt;br /&gt;
     --ftp-ssl-control                             Require TLS for login, clear for transfer&lt;br /&gt;
 -G, --get                                         Put the post data in the URL and use GET&lt;br /&gt;
 -g, --globoff                                     Disable URL globbing with {} and []&lt;br /&gt;
     --happy-eyeballs-timeout-ms &amp;lt;ms&amp;gt;              Time for IPv6 before IPv4&lt;br /&gt;
     --haproxy-clientip &amp;lt;ip&amp;gt;                       Set address in HAProxy PROXY&lt;br /&gt;
     --haproxy-protocol                            Send HAProxy PROXY protocol v1 header&lt;br /&gt;
 -I, --head                                        Show document info only&lt;br /&gt;
 -H, --header &amp;lt;header/@file&amp;gt;                       Pass custom header(s) to server&lt;br /&gt;
 -h, --help &amp;lt;subject&amp;gt;                              Get help for commands&lt;br /&gt;
     --hostpubmd5 &amp;lt;md5&amp;gt;                            Acceptable MD5 hash of host public key&lt;br /&gt;
     --hostpubsha256 &amp;lt;sha256&amp;gt;                      Acceptable SHA256 hash of host public key&lt;br /&gt;
     --hsts &amp;lt;filename&amp;gt;                             Enable HSTS with this cache file&lt;br /&gt;
     --http0.9                                     Allow HTTP/0.9 responses&lt;br /&gt;
 -0, --http1.0                                     Use HTTP/1.0&lt;br /&gt;
     --http1.1                                     Use HTTP/1.1&lt;br /&gt;
     --http2                                       Use HTTP/2&lt;br /&gt;
     --http2-prior-knowledge                       Use HTTP/2 without HTTP/1.1 Upgrade&lt;br /&gt;
     --http3                                       Use HTTP/3&lt;br /&gt;
     --http3-only                                  Use HTTP/3 only&lt;br /&gt;
     --ignore-content-length                       Ignore the size of the remote resource&lt;br /&gt;
 -k, --insecure                                    Allow insecure server connections&lt;br /&gt;
     --interface &amp;lt;name&amp;gt;                            Use network interface&lt;br /&gt;
     --ip-tos &amp;lt;string&amp;gt;                             Set IP Type of Service or Traffic Class&lt;br /&gt;
     --ipfs-gateway &amp;lt;URL&amp;gt;                          Gateway for IPFS&lt;br /&gt;
 -4, --ipv4                                        Resolve names to IPv4 addresses&lt;br /&gt;
 -6, --ipv6                                        Resolve names to IPv6 addresses&lt;br /&gt;
     --json &amp;lt;data&amp;gt;                                 HTTP POST JSON&lt;br /&gt;
 -j, --junk-session-cookies                        Ignore session cookies read from file&lt;br /&gt;
     --keepalive-cnt &amp;lt;integer&amp;gt;                     Maximum number of keepalive probes&lt;br /&gt;
     --keepalive-time &amp;lt;seconds&amp;gt;                    Interval time for keepalive probes&lt;br /&gt;
     --key &amp;lt;key&amp;gt;                                   Private key filename&lt;br /&gt;
     --key-type &amp;lt;type&amp;gt;                             Private key file type (DER/PEM/ENG)&lt;br /&gt;
     --krb &amp;lt;level&amp;gt;                                 Enable Kerberos with security &amp;lt;level&amp;gt;&lt;br /&gt;
     --libcurl &amp;lt;file&amp;gt;                              Generate libcurl code for this command line&lt;br /&gt;
     --limit-rate &amp;lt;speed&amp;gt;                          Limit transfer speed to RATE&lt;br /&gt;
 -l, --list-only                                   List only mode&lt;br /&gt;
     --local-port &amp;lt;range&amp;gt;                          Use a local port number within RANGE&lt;br /&gt;
 -L, --location                                    Follow redirects&lt;br /&gt;
     --location-trusted                            As --location, but send secrets to other hosts&lt;br /&gt;
     --login-options &amp;lt;options&amp;gt;                     Server login options&lt;br /&gt;
     --mail-auth &amp;lt;address&amp;gt;                         Originator address of the original email&lt;br /&gt;
     --mail-from &amp;lt;address&amp;gt;                         Mail from this address&lt;br /&gt;
     --mail-rcpt &amp;lt;address&amp;gt;                         Mail to this address&lt;br /&gt;
     --mail-rcpt-allowfails                        Allow RCPT TO command to fail&lt;br /&gt;
 -M, --manual                                      Display the full manual&lt;br /&gt;
     --max-filesize &amp;lt;bytes&amp;gt;                        Maximum file size to download&lt;br /&gt;
     --max-redirs &amp;lt;num&amp;gt;                            Maximum number of redirects allowed&lt;br /&gt;
 -m, --max-time &amp;lt;seconds&amp;gt;                          Maximum time allowed for transfer&lt;br /&gt;
     --metalink                                    Process given URLs as metalink XML file&lt;br /&gt;
     --mptcp                                       Enable Multipath TCP&lt;br /&gt;
     --negotiate                                   Use HTTP Negotiate (SPNEGO) authentication&lt;br /&gt;
 -n, --netrc                                       Must read .netrc for username and password&lt;br /&gt;
     --netrc-file &amp;lt;filename&amp;gt;                       Specify FILE for netrc&lt;br /&gt;
     --netrc-optional                              Use either .netrc or URL&lt;br /&gt;
 -:, --next                                        Make next URL use separate options&lt;br /&gt;
     --no-alpn                                     Disable the ALPN TLS extension&lt;br /&gt;
 -N, --no-buffer                                   Disable buffering of the output stream&lt;br /&gt;
     --no-clobber                                  Do not overwrite files that already exist&lt;br /&gt;
     --no-keepalive                                Disable TCP keepalive on the connection&lt;br /&gt;
     --no-npn                                      Disable the NPN TLS extension&lt;br /&gt;
     --no-progress-meter                           Do not show the progress meter&lt;br /&gt;
     --no-sessionid                                Disable SSL session-ID reusing&lt;br /&gt;
     --noproxy &amp;lt;no-proxy-list&amp;gt;                     List of hosts which do not use proxy&lt;br /&gt;
     --ntlm                                        HTTP NTLM authentication&lt;br /&gt;
     --ntlm-wb                                     HTTP NTLM authentication with winbind&lt;br /&gt;
     --oauth2-bearer &amp;lt;token&amp;gt;                       OAuth 2 Bearer Token&lt;br /&gt;
 -o, --output &amp;lt;file&amp;gt;                               Write to file instead of stdout&lt;br /&gt;
     --output-dir &amp;lt;dir&amp;gt;                            Directory to save files in&lt;br /&gt;
 -Z, --parallel                                    Perform transfers in parallel&lt;br /&gt;
     --parallel-immediate                          Do not wait for multiplexing&lt;br /&gt;
     --parallel-max &amp;lt;num&amp;gt;                          Maximum concurrency for parallel transfers&lt;br /&gt;
     --pass &amp;lt;phrase&amp;gt;                               Passphrase for the private key&lt;br /&gt;
     --path-as-is                                  Do not squash .. sequences in URL path&lt;br /&gt;
     --pinnedpubkey &amp;lt;hashes&amp;gt;                       Public key to verify peer against&lt;br /&gt;
     --post301                                     Do not switch to GET after a 301 redirect&lt;br /&gt;
     --post302                                     Do not switch to GET after a 302 redirect&lt;br /&gt;
     --post303                                     Do not switch to GET after a 303 redirect&lt;br /&gt;
     --preproxy &amp;lt;[protocol://]host[:port]&amp;gt;         Use this proxy first&lt;br /&gt;
 -#, --progress-bar                                Display transfer progress as a bar&lt;br /&gt;
     --proto &amp;lt;protocols&amp;gt;                           Enable/disable PROTOCOLS&lt;br /&gt;
     --proto-default &amp;lt;protocol&amp;gt;                    Use PROTOCOL for any URL missing a scheme&lt;br /&gt;
     --proto-redir &amp;lt;protocols&amp;gt;                     Enable/disable PROTOCOLS on redirect&lt;br /&gt;
 -x, --proxy &amp;lt;[protocol://]host[:port]&amp;gt;            Use this proxy&lt;br /&gt;
     --proxy-anyauth                               Pick any proxy authentication method&lt;br /&gt;
     --proxy-basic                                 Use Basic authentication on the proxy&lt;br /&gt;
     --proxy-ca-native                             Load CA certs from the OS to verify proxy&lt;br /&gt;
     --proxy-cacert &amp;lt;file&amp;gt;                         CA certificates to verify proxy against&lt;br /&gt;
     --proxy-capath &amp;lt;dir&amp;gt;                          CA directory to verify proxy against&lt;br /&gt;
     --proxy-cert &amp;lt;cert[:passwd]&amp;gt;                  Set client certificate for proxy&lt;br /&gt;
     --proxy-cert-type &amp;lt;type&amp;gt;                      Client certificate type for HTTPS proxy&lt;br /&gt;
     --proxy-ciphers &amp;lt;list&amp;gt;                        TLS 1.2 (1.1, 1.0) ciphers to use for proxy&lt;br /&gt;
     --proxy-crlfile &amp;lt;file&amp;gt;                        Set a CRL list for proxy&lt;br /&gt;
     --proxy-digest                                Digest auth with the proxy&lt;br /&gt;
     --proxy-header &amp;lt;header/@file&amp;gt;                 Pass custom header(s) to proxy&lt;br /&gt;
     --proxy-http2                                 Use HTTP/2 with HTTPS proxy&lt;br /&gt;
     --proxy-insecure                              Skip HTTPS proxy cert verification&lt;br /&gt;
     --proxy-key &amp;lt;key&amp;gt;                             Private key for HTTPS proxy&lt;br /&gt;
     --proxy-key-type &amp;lt;type&amp;gt;                       Private key file type for proxy&lt;br /&gt;
     --proxy-negotiate                             HTTP Negotiate (SPNEGO) auth with the proxy&lt;br /&gt;
     --proxy-ntlm                                  NTLM authentication with the proxy&lt;br /&gt;
     --proxy-pass &amp;lt;phrase&amp;gt;                         Passphrase for private key for HTTPS proxy&lt;br /&gt;
     --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;                 FILE/HASHES public key to verify proxy with&lt;br /&gt;
     --proxy-service-name &amp;lt;name&amp;gt;                   SPNEGO proxy service name&lt;br /&gt;
     --proxy-ssl-allow-beast                       Allow this security flaw for HTTPS proxy&lt;br /&gt;
     --proxy-ssl-auto-client-cert                  Auto client certificate for proxy&lt;br /&gt;
     --proxy-tls13-ciphers &amp;lt;list&amp;gt;                  TLS 1.3 proxy cipher suites&lt;br /&gt;
     --proxy-tlsauthtype &amp;lt;type&amp;gt;                    TLS authentication type for HTTPS proxy&lt;br /&gt;
     --proxy-tlspassword &amp;lt;string&amp;gt;                  TLS password for HTTPS proxy&lt;br /&gt;
     --proxy-tlsuser &amp;lt;name&amp;gt;                        TLS username for HTTPS proxy&lt;br /&gt;
     --proxy-tlsv1                                 TLSv1 for HTTPS proxy&lt;br /&gt;
 -U, --proxy-user &amp;lt;user:password&amp;gt;                  Proxy user and password&lt;br /&gt;
     --proxy1.0 &amp;lt;host[:port]&amp;gt;                      Use HTTP/1.0 proxy on given port&lt;br /&gt;
 -p, --proxytunnel                                 HTTP proxy tunnel (using CONNECT)&lt;br /&gt;
     --pubkey &amp;lt;key&amp;gt;                                SSH Public key filename&lt;br /&gt;
 -Q, --quote &amp;lt;command&amp;gt;                             Send command(s) to server before transfer&lt;br /&gt;
     --random-file &amp;lt;file&amp;gt;                          File for reading random data from&lt;br /&gt;
 -r, --range &amp;lt;range&amp;gt;                               Retrieve only the bytes within RANGE&lt;br /&gt;
     --rate &amp;lt;max request rate&amp;gt;                     Request rate for serial transfers&lt;br /&gt;
     --raw                                         Do HTTP raw; no transfer decoding&lt;br /&gt;
 -e, --referer &amp;lt;URL&amp;gt;                               Referrer URL&lt;br /&gt;
 -J, --remote-header-name                          Use the header-provided filename&lt;br /&gt;
 -O, --remote-name                                 Write output to file named as remote file&lt;br /&gt;
     --remote-name-all                             Use the remote filename for all URLs&lt;br /&gt;
 -R, --remote-time                                 Set remote file&#039;s time on local output&lt;br /&gt;
     --remove-on-error                             Remove output file on errors&lt;br /&gt;
 -X, --request &amp;lt;method&amp;gt;                            Specify request method to use&lt;br /&gt;
     --request-target &amp;lt;path&amp;gt;                       Specify the target for this request&lt;br /&gt;
     --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;       Resolve host+port to address&lt;br /&gt;
     --retry &amp;lt;num&amp;gt;                                 Retry request if transient problems occur&lt;br /&gt;
     --retry-all-errors                            Retry all errors (with --retry)&lt;br /&gt;
     --retry-connrefused                           Retry on connection refused (with --retry)&lt;br /&gt;
     --retry-delay &amp;lt;seconds&amp;gt;                       Wait time between retries&lt;br /&gt;
     --retry-max-time &amp;lt;seconds&amp;gt;                    Retry only within this period&lt;br /&gt;
     --sasl-authzid &amp;lt;identity&amp;gt;                     Identity for SASL PLAIN authentication&lt;br /&gt;
     --sasl-ir                                     Initial response in SASL authentication&lt;br /&gt;
     --service-name &amp;lt;name&amp;gt;                         SPNEGO service name&lt;br /&gt;
 -S, --show-error                                  Show error even when -s is used&lt;br /&gt;
 -i, --show-headers                                Show response headers in output&lt;br /&gt;
     --sigalgs &amp;lt;list&amp;gt;                              TLS signature algorithms to use&lt;br /&gt;
 -s, --silent                                      Silent mode&lt;br /&gt;
     --skip-existing                               Skip download if local file already exists&lt;br /&gt;
     --socks4 &amp;lt;host[:port]&amp;gt;                        SOCKS4 proxy on given host + port&lt;br /&gt;
     --socks4a &amp;lt;host[:port]&amp;gt;                       SOCKS4a proxy on given host + port&lt;br /&gt;
     --socks5 &amp;lt;host[:port]&amp;gt;                        SOCKS5 proxy on given host + port&lt;br /&gt;
     --socks5-basic                                Username/password auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi                               Enable GSS-API auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi-nec                           Compatibility with NEC SOCKS5 server&lt;br /&gt;
     --socks5-gssapi-service &amp;lt;name&amp;gt;                SOCKS5 proxy service name for GSS-API&lt;br /&gt;
     --socks5-hostname &amp;lt;host[:port]&amp;gt;               SOCKS5 proxy, pass hostname to proxy&lt;br /&gt;
 -Y, --speed-limit &amp;lt;speed&amp;gt;                         Stop transfers slower than this&lt;br /&gt;
 -y, --speed-time &amp;lt;seconds&amp;gt;                        Trigger &#039;speed-limit&#039; abort after this time&lt;br /&gt;
     --ssl                                         Try enabling TLS&lt;br /&gt;
     --ssl-allow-beast                             Allow security flaw to improve interop&lt;br /&gt;
     --ssl-auto-client-cert                        Use auto client certificate (Schannel)&lt;br /&gt;
     --ssl-no-revoke                               Disable cert revocation checks (Schannel)&lt;br /&gt;
     --ssl-reqd                                    Require SSL/TLS&lt;br /&gt;
     --ssl-revoke-best-effort                      Ignore missing cert CRL dist points&lt;br /&gt;
     --ssl-sessions &amp;lt;filename&amp;gt;                     Load/save SSL session tickets from/to this file&lt;br /&gt;
 -2, --sslv2                                       SSLv2&lt;br /&gt;
 -3, --sslv3                                       SSLv3&lt;br /&gt;
     --stderr &amp;lt;file&amp;gt;                               Where to redirect stderr&lt;br /&gt;
     --styled-output                               Enable styled output for HTTP headers&lt;br /&gt;
     --suppress-connect-headers                    Suppress proxy CONNECT response headers&lt;br /&gt;
     --tcp-fastopen                                Use TCP Fast Open&lt;br /&gt;
     --tcp-nodelay                                 Set TCP_NODELAY&lt;br /&gt;
 -t, --telnet-option &amp;lt;opt=val&amp;gt;                     Set telnet option&lt;br /&gt;
     --tftp-blksize &amp;lt;value&amp;gt;                        Set TFTP BLKSIZE option&lt;br /&gt;
     --tftp-no-options                             Do not send any TFTP options&lt;br /&gt;
 -z, --time-cond &amp;lt;time&amp;gt;                            Transfer based on a time condition&lt;br /&gt;
     --tls-earlydata                               Allow use of TLSv1.3 early data (0RTT)&lt;br /&gt;
     --tls-max &amp;lt;VERSION&amp;gt;                           Maximum allowed TLS version&lt;br /&gt;
     --tls13-ciphers &amp;lt;list&amp;gt;                        TLS 1.3 cipher suites to use&lt;br /&gt;
     --tlsauthtype &amp;lt;type&amp;gt;                          TLS authentication type&lt;br /&gt;
     --tlspassword &amp;lt;string&amp;gt;                        TLS password&lt;br /&gt;
     --tlsuser &amp;lt;name&amp;gt;                              TLS username&lt;br /&gt;
 -1, --tlsv1                                       TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.0                                     TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.1                                     TLSv1.1 or greater&lt;br /&gt;
     --tlsv1.2                                     TLSv1.2 or greater&lt;br /&gt;
     --tlsv1.3                                     TLSv1.3 or greater&lt;br /&gt;
     --tr-encoding                                 Request compressed transfer encoding&lt;br /&gt;
     --trace &amp;lt;file&amp;gt;                                Write a debug trace to FILE&lt;br /&gt;
     --trace-ascii &amp;lt;file&amp;gt;                          Like --trace, but without hex output&lt;br /&gt;
     --trace-config &amp;lt;string&amp;gt;                       Details to log in trace/verbose output&lt;br /&gt;
     --trace-ids                                   Transfer + connection ids in verbose output&lt;br /&gt;
     --trace-time                                  Add time stamps to trace/verbose output&lt;br /&gt;
     --unix-socket &amp;lt;path&amp;gt;                          Connect through this Unix domain socket&lt;br /&gt;
 -T, --upload-file &amp;lt;file&amp;gt;                          Transfer local FILE to destination&lt;br /&gt;
     --upload-flags &amp;lt;flags&amp;gt;                        IMAP upload behavior&lt;br /&gt;
     --url &amp;lt;url/file&amp;gt;                              URL(s) to work with&lt;br /&gt;
     --url-query &amp;lt;data&amp;gt;                            Add a URL query part&lt;br /&gt;
 -B, --use-ascii                                   Use ASCII/text transfer&lt;br /&gt;
 -u, --user &amp;lt;user:password&amp;gt;                        Server user and password&lt;br /&gt;
 -A, --user-agent &amp;lt;name&amp;gt;                           Send User-Agent &amp;lt;name&amp;gt; to server&lt;br /&gt;
     --variable &amp;lt;[%]name=text/@file&amp;gt;               Set variable&lt;br /&gt;
 -v, --verbose                                     Make the operation more talkative&lt;br /&gt;
 -V, --version                                     Show version number and quit&lt;br /&gt;
     --vlan-priority &amp;lt;priority&amp;gt;                    Set VLAN priority&lt;br /&gt;
 -w, --write-out &amp;lt;format&amp;gt;                          Output FORMAT after completion&lt;br /&gt;
     --xattr                                       Store metadata in extended file attributes&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl(1)                                                                                          curl Manual                                                                                          curl(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       curl - transfer a URL&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       curl [options / URLs]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       curl  is a tool for transferring data from or to a server. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS,&lt;br /&gt;
       RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. The command is designed to work without user interaction.&lt;br /&gt;
&lt;br /&gt;
       curl offers a busload of useful tricks like proxy support, user authentication, FTP upload, HTTP post, SSL connections, cookies, file transfer resume and more. As you will see below, the  number  of&lt;br /&gt;
       features will make your head spin.&lt;br /&gt;
&lt;br /&gt;
       curl is powered by libcurl for all transfer-related features. See libcurl(3) for details.&lt;br /&gt;
&lt;br /&gt;
URL&lt;br /&gt;
       The URL syntax is protocol-dependent. You find a detailed description in RFC 3986.&lt;br /&gt;
&lt;br /&gt;
       You can specify multiple URLs or parts of URLs by writing part sets within braces and quoting the URL as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://site.{one,two,three}.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       or you can get sequences of alphanumeric series by using [] as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[1-100].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[001-100].txt&amp;quot;    (with leading zeros)&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[a-z].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       Nested sequences are not supported, but you can use several ones next to each other:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       You  can  specify  any amount of URLs on the command line. They will be fetched in a sequential manner in the specified order. You can specify command line options and URLs mixed and in any order on&lt;br /&gt;
       the command line.&lt;br /&gt;
&lt;br /&gt;
       You can specify a step counter for the ranges to get every Nth number or letter:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[1-100:10].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[a-z:2].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       When using [] or {} sequences when invoked from a command line prompt, you probably have to put the full URL within double quotes to avoid the shell from interfering with  it.  This  also  goes  for&lt;br /&gt;
       other characters treated special, like for example &#039;&amp;amp;&#039;, &#039;?&#039; and &#039;*&#039;.&lt;br /&gt;
&lt;br /&gt;
       Provide the IPv6 zone index in the URL with an escaped percentage sign and the interface name. Like in&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://[fe80::3%25eth0]/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       If  you  specify URL without protocol:// prefix, curl will attempt to guess what protocol you might want. It will then default to HTTP but try other protocols based on often-used host name prefixes.&lt;br /&gt;
       For example, for host names starting with &amp;quot;ftp.&amp;quot; curl will assume you want to speak FTP.&lt;br /&gt;
&lt;br /&gt;
       curl will do its best to use what you pass to it as a URL. It is not trying to validate it as a syntactically correct URL by any means but is fairly liberal with what it accepts.&lt;br /&gt;
&lt;br /&gt;
       curl will attempt to re-use connections for multiple file transfers, so that getting many files from the same server will not do multiple connects / handshakes. This improves speed. Of  course  this&lt;br /&gt;
       is only done on files specified on a single command line and cannot be used between separate curl invocations.&lt;br /&gt;
&lt;br /&gt;
OUTPUT&lt;br /&gt;
       If  not  told  otherwise,  curl  writes the received data to stdout. It can be instructed to instead save that data into a local file, using the -o, --output or -O, --remote-name options. If curl is&lt;br /&gt;
       given multiple URLs to transfer on the command line, it similarly needs multiple options for where to save them.&lt;br /&gt;
&lt;br /&gt;
       curl does not parse or otherwise &amp;quot;understand&amp;quot; the content it gets or writes as output. It does no encoding or decoding, unless explicitly asked to with dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
PROTOCOLS&lt;br /&gt;
       curl supports numerous protocols, or put in URL terms: schemes. Your particular build may not support them all.&lt;br /&gt;
&lt;br /&gt;
       DICT   Lets you lookup words using online dictionaries.&lt;br /&gt;
&lt;br /&gt;
       FILE   Read or write local files. curl does not support accessing file:// URL remotely, but when running on Microsoft Windows using the native UNC approach will work.&lt;br /&gt;
&lt;br /&gt;
       FTP(S) curl supports the File Transfer Protocol with a lot of tweaks and levers. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       GOPHER(S)&lt;br /&gt;
              Retrieve files.&lt;br /&gt;
&lt;br /&gt;
       HTTP(S)&lt;br /&gt;
              curl supports HTTP with numerous options and variations. It can speak HTTP version 0.9, 1.0, 1.1, 2 and 3 depending on build options and the correct command line options.&lt;br /&gt;
&lt;br /&gt;
       IMAP(S)&lt;br /&gt;
              Using the mail reading protocol, curl can &amp;quot;download&amp;quot; emails for you. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       LDAP(S)&lt;br /&gt;
              curl can do directory lookups for you, with or without TLS.&lt;br /&gt;
&lt;br /&gt;
       MQTT   curl supports MQTT version 3. Downloading over MQTT equals &amp;quot;subscribe&amp;quot; to a topic while uploading/posting equals &amp;quot;publish&amp;quot; on a topic. MQTT over TLS is not supported (yet).&lt;br /&gt;
&lt;br /&gt;
       POP3(S)&lt;br /&gt;
              Downloading from a pop3 server means getting a mail. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       RTMP(S)&lt;br /&gt;
              The Realtime Messaging Protocol is primarily used to server streaming media and curl can download it.&lt;br /&gt;
&lt;br /&gt;
       RTSP   curl supports RTSP 1.0 downloads.&lt;br /&gt;
&lt;br /&gt;
       SCP    curl supports SSH version 2 scp transfers.&lt;br /&gt;
&lt;br /&gt;
       SFTP   curl supports SFTP (draft 5) done over SSH version 2.&lt;br /&gt;
&lt;br /&gt;
       SMB(S) curl supports SMB version 1 for upload and download.&lt;br /&gt;
&lt;br /&gt;
       SMTP(S)&lt;br /&gt;
              Uploading contents to an SMTP server means sending an email. With or without TLS.&lt;br /&gt;
&lt;br /&gt;
       TELNET Telling curl to fetch a telnet URL starts an interactive session where it sends what it reads on stdin and outputs what the server sends it.&lt;br /&gt;
&lt;br /&gt;
       TFTP   curl can do TFTP downloads and uploads.&lt;br /&gt;
&lt;br /&gt;
PROGRESS METER&lt;br /&gt;
       curl normally displays a progress meter during operations, indicating the amount of transferred data, transfer speeds and estimated time left, etc. The progress meter displays the transfer  rate  in&lt;br /&gt;
       bytes per second. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024 bytes. 1M is 1048576 bytes.&lt;br /&gt;
&lt;br /&gt;
       curl  displays this data to the terminal by default, so if you invoke curl to do an operation and it is about to write data to the terminal, it disables the progress meter as otherwise it would mess&lt;br /&gt;
       up the output mixing progress meter and response data.&lt;br /&gt;
&lt;br /&gt;
       If you want a progress meter for HTTP POST or PUT requests, you need to redirect the response output to a file, using shell redirect (&amp;gt;), -o, --output or similar.&lt;br /&gt;
&lt;br /&gt;
       This does not apply to FTP upload as that operation does not spit out any response data to the terminal.&lt;br /&gt;
&lt;br /&gt;
       If you prefer a progress &amp;quot;bar&amp;quot; instead of the regular meter, -#, --progress-bar is your friend. You can also disable the progress meter completely with the -s, --silent option.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       Options start with one or two dashes. Many of the options require an additional value next to them.&lt;br /&gt;
&lt;br /&gt;
       The short &amp;quot;single-dash&amp;quot; form of the options, -d for example, may be used with or without a space between it and its value, although a space is a recommended separator. The long  &amp;quot;double-dash&amp;quot;  form,&lt;br /&gt;
       -d, --data for example, requires a space between it and its value.&lt;br /&gt;
&lt;br /&gt;
       Short version options that do not need any additional values can be used immediately next to each other, like for example you can specify all the options -O, -L and -v at once as -OLv.&lt;br /&gt;
&lt;br /&gt;
       In  general,  all  boolean  options are enabled with --option and yet again disabled with --no-option. That is, you use the same option name but prefix it with &amp;quot;no-&amp;quot;. However, in this list we mostly&lt;br /&gt;
       only list and show the --option version of them.&lt;br /&gt;
&lt;br /&gt;
       --abstract-unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through an abstract Unix domain socket, instead of using the network.  Note: netstat shows the path of an abstract socket prefixed with &#039;@&#039;, however the &amp;lt;path&amp;gt; argument  should&lt;br /&gt;
              not have this leading character.&lt;br /&gt;
&lt;br /&gt;
              If --abstract-unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --abstract-unix-socket socketpath https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --unix-socket. Added in 7.53.0.&lt;br /&gt;
&lt;br /&gt;
       --alt-svc &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS)  This  option  enables the alt-svc parser in curl. If the file name points to an existing alt-svc cache file, that will be used. After a completed transfer, the cache will be saved to&lt;br /&gt;
              the file name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle the cache in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --alt-svc can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --alt-svc svc.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --connect-to. Added in 7.64.1.&lt;br /&gt;
&lt;br /&gt;
       --anyauth&lt;br /&gt;
              (HTTP) Tells curl to figure out authentication method by itself, and use the most secure one the remote site claims to support. This is done by first doing a  request  and  checking  the  re‐&lt;br /&gt;
              sponse-headers,  thus  possibly  inducing  an  extra network round-trip. This is used instead of setting a specific authentication method, which you can do with --basic, --digest, --ntlm, and&lt;br /&gt;
              --negotiate.&lt;br /&gt;
&lt;br /&gt;
              Using --anyauth is not recommended if you do uploads from stdin, since it may require data to be sent twice and then the client must be able to rewind. If the need should arise when uploading&lt;br /&gt;
              from stdin, the upload operation will fail.&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --anyauth --user me:pwd https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth, --basic and --digest.&lt;br /&gt;
&lt;br /&gt;
       -a, --append&lt;br /&gt;
              (FTP  SFTP)  When used in an upload, this makes curl append to the target file instead of overwriting it. If the remote file does not exist, it will be created. Note that this flag is ignored&lt;br /&gt;
              by some SFTP servers (including OpenSSH).&lt;br /&gt;
&lt;br /&gt;
              Providing -a, --append multiple times has no extra effect.  Disable it again with --no-append.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --upload-file local --append ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range and -C, --continue-at.&lt;br /&gt;
&lt;br /&gt;
       --aws-sigv4 &amp;lt;provider1[:provider2[:region[:service]]]&amp;gt;&lt;br /&gt;
              Use AWS V4 signature authentication in the transfer.&lt;br /&gt;
&lt;br /&gt;
              The provider argument is a string that is used by the algorithm when creating outgoing authentication headers.&lt;br /&gt;
&lt;br /&gt;
              The region argument is a string that points to a geographic area of a resources collection (region-code) when the region name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              The service argument is a string that points to a function provided by a cloud (service-code) when the service name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              If --aws-sigv4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --aws-sigv4 &amp;quot;aws:amz:east-2:es&amp;quot; --user &amp;quot;key:secret&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic and -u, --user. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --basic&lt;br /&gt;
              (HTTP) Tells curl to use HTTP Basic authentication with the remote host. This is the default and this option is usually pointless, unless you use it to override a previously set  option  that&lt;br /&gt;
              sets a different authentication method (such as --ntlm, --digest, or --negotiate).&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --basic https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate file to verify the peer. The file may contain multiple CA certificates. The certificate(s) must be in PEM format. Normally curl is built to&lt;br /&gt;
              use a default file for this, so this option is typically used to alter that default file.&lt;br /&gt;
&lt;br /&gt;
              curl recognizes the environment variable named &#039;CURL_CA_BUNDLE&#039; if it is set, and uses the given path as a path to a CA cert bundle. This option overrides that variable.&lt;br /&gt;
&lt;br /&gt;
              The windows version of curl will automatically look for a CA certs file named &#039;curl-ca-bundle.crt&#039;, either in the same directory as curl.exe, or in the Current Working Directory,  or  in  any&lt;br /&gt;
              folder along your PATH.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module (libnsspem.so) needs to be available for this option to work properly.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then this option is supported for backward compatibility with other SSL engines, but it should not be set. If the option is not&lt;br /&gt;
              set, then curl will use the certificates in the system and user Keychain to verify the peer, which is the preferred method of verifying the peer&#039;s certificate chain.&lt;br /&gt;
&lt;br /&gt;
              (Schannel only) This option is supported for Schannel in Windows 7 or later with libcurl 7.60 or later. This option is supported for backward compatibility with other SSL engines; instead  it&lt;br /&gt;
              is recommended to use Windows&#039; store of root certificates (the default for Schannel).&lt;br /&gt;
&lt;br /&gt;
              If --cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cacert CA-file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --capath and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate directory to verify the peer. Multiple paths can be provided by separating them with &amp;quot;:&amp;quot; (e.g.  &amp;quot;path1:path2:path3&amp;quot;). The certificates must&lt;br /&gt;
              be in PEM format, and if curl is built against OpenSSL, the directory must have been processed using the c_rehash utility supplied with OpenSSL. Using --capath can allow OpenSSL-powered  curl&lt;br /&gt;
              to make SSL-connections much more efficiently than using --cacert if the --cacert file contains many CA certificates.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default capath value will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --capath /local/directory https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --cert-status&lt;br /&gt;
              (TLS) Tells curl to verify the status of the server certificate by using the Certificate Status Request (aka. OCSP stapling) TLS extension.&lt;br /&gt;
&lt;br /&gt;
              If  this  option  is enabled and the server sends an invalid (e.g. expired) response, if the response suggests that the server certificate has been revoked, or no response at all is received,&lt;br /&gt;
              the verification fails.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --cert-status multiple times has no extra effect.  Disable it again with --no-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-status https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey. Added in 7.41.0.&lt;br /&gt;
&lt;br /&gt;
       --cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Tells curl what type the provided client certificate is using. PEM, DER, ENG and P12 are recognized types.&lt;br /&gt;
&lt;br /&gt;
              The default type depends on the TLS backend and is usually PEM, however for Secure Transport and Schannel it is P12. If -E, --cert is a pkcs11: URI then ENG is the default type.&lt;br /&gt;
&lt;br /&gt;
              If --cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-type PEM --cert file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -E, --cert, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       -E, --cert &amp;lt;certificate[:password]&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified client certificate file when getting a file with HTTPS, FTPS or another SSL-based protocol. The certificate must be in PKCS#12  format  if  using  Secure&lt;br /&gt;
              Transport, or PEM format if using any other engine. If the optional password is not specified, it will be queried for on the terminal. Note that this option assumes a certificate file that is&lt;br /&gt;
              the private key and the client certificate concatenated. See -E, --cert and --key to specify them independently.&lt;br /&gt;
&lt;br /&gt;
              In the &amp;lt;certificate&amp;gt; portion of the argument, you must escape the character &amp;quot;:&amp;quot; as &amp;quot;\:&amp;quot; so that it is not recognized as the password delimiter. Similarly, you must escape the character &amp;quot;\&amp;quot; as&lt;br /&gt;
              &amp;quot;\\&amp;quot; so that it is not recognized as an escape character.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against the NSS SSL library then this option can tell curl the nickname of the certificate to use within the NSS database defined by the environment variable SSL_DIR (or by&lt;br /&gt;
              default /etc/pki/nssdb). If the NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files may be loaded.&lt;br /&gt;
&lt;br /&gt;
              If you provide a path relative to the current directory, you must prefix the path with &amp;quot;./&amp;quot; in order to avoid confusion with an NSS database nickname.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a certificate located in a PKCS#11 device. A  string  begin‐&lt;br /&gt;
              ning  with  &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --cert-type option will&lt;br /&gt;
              be set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then the certificate string can either be the name of a certificate/private key in the system or user keychain, or the path  to&lt;br /&gt;
              a PKCS#12-encoded certificate and private key. If you want to use a file from the current directory, please precede it with &amp;quot;./&amp;quot; prefix, in order to avoid confusion with a nickname.&lt;br /&gt;
&lt;br /&gt;
              (Schannel  only) Client certificates must be specified by a path expression to a certificate store. (Loading PFX is not supported; you can import it to a store first). You can use &amp;quot;&amp;lt;store lo‐&lt;br /&gt;
              cation&amp;gt;\&amp;lt;store name&amp;gt;\&amp;lt;thumbprint&amp;gt;&amp;quot; to refer to a certificate in the system certificates store, for example, &amp;quot;CurrentUser\MY\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a&amp;quot;. Thumbprint is usually  a&lt;br /&gt;
              SHA-1  hex string which you can see in certificate details. Following store locations are supported: CurrentUser, LocalMachine, CurrentService, Services, CurrentUserGroupPolicy, LocalMachine‐&lt;br /&gt;
              GroupPolicy, LocalMachineEnterprise.&lt;br /&gt;
&lt;br /&gt;
              If -E, --cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certfile --key keyfile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cert-type, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       --ciphers &amp;lt;list of ciphers&amp;gt;&lt;br /&gt;
              (TLS) Specifies which ciphers to use in the connection. The list of ciphers must specify valid ciphers. Read up on SSL cipher list details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              If --ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --compressed-ssh&lt;br /&gt;
              (SCP SFTP) Enables built-in SSH compression.  This is a request, not an order; the server may or may not do it.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed-ssh multiple times has no extra effect.  Disable it again with --no-compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed-ssh sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --compressed. Added in 7.56.0.&lt;br /&gt;
&lt;br /&gt;
       --compressed&lt;br /&gt;
              (HTTP) Request a compressed response using one of the algorithms curl supports, and automatically decompress the content. Headers are not modified.&lt;br /&gt;
&lt;br /&gt;
              If this option is used and the server sends an unsupported encoding, curl will report an error. This is a request, not an order; the server may or may not deliver data compressed.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed multiple times has no extra effect.  Disable it again with --no-compressed.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
       -K, --config &amp;lt;file&amp;gt;&lt;br /&gt;
              Specify a text file to read curl arguments from. The command line arguments found in the text file will be used as if they were provided on the command line.&lt;br /&gt;
&lt;br /&gt;
              Options and their parameters must be specified on the same line in the file, separated by whitespace, colon, or the equals sign. Long option names can optionally be given in the  config  file&lt;br /&gt;
              without the initial double dashes and if so, the colon or equals characters can be used as separators. If the option is specified with one or two dashes, there can be no colon or equals char‐&lt;br /&gt;
              acter between the option and its parameter.&lt;br /&gt;
&lt;br /&gt;
              If the parameter contains whitespace (or starts with : or =), the parameter must be enclosed within quotes. Within double quotes, the following escape sequences are available: \\, \&amp;quot;, \t, \n,&lt;br /&gt;
              \r and \v. A backslash preceding any other letter is ignored.&lt;br /&gt;
&lt;br /&gt;
              If the first column of a config line is a &#039;#&#039; character, the rest of the line will be treated as a comment.&lt;br /&gt;
&lt;br /&gt;
              Only write one option per physical line in the config file.&lt;br /&gt;
&lt;br /&gt;
              Specify the filename to -K, --config as &#039;-&#039; to make curl read the file from stdin.&lt;br /&gt;
&lt;br /&gt;
              Note that to be able to specify a URL in the config file, you need to specify it using the --url option, and not by simply writing the URL on its own line. So, it could look similar to this:&lt;br /&gt;
&lt;br /&gt;
              url = &amp;quot;https://curl.se/docs/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # --- Example file ---&lt;br /&gt;
               # this is a comment&lt;br /&gt;
               url = &amp;quot;example.com&amp;quot;&lt;br /&gt;
               output = &amp;quot;curlhere.html&amp;quot;&lt;br /&gt;
               user-agent = &amp;quot;superagent/1.0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # and fetch another URL too&lt;br /&gt;
               url = &amp;quot;example.com/docs/manpage.html&amp;quot;&lt;br /&gt;
               -O&lt;br /&gt;
               referer = &amp;quot;http://nowhereatall.example.com/&amp;quot;&lt;br /&gt;
               # --- End of example file ---&lt;br /&gt;
&lt;br /&gt;
              When  curl  is  invoked, it (unless -q, --disable is used) checks for a default config file and uses it if found, even when -K, --config is used. The default config file is checked for in the&lt;br /&gt;
              following places in this order:&lt;br /&gt;
&lt;br /&gt;
              1) &amp;quot;$CURL_HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              2) &amp;quot;$XDG_CONFIG_HOME/.curlrc&amp;quot; (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              3) &amp;quot;$HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              4) Windows: &amp;quot;%USERPROFILE%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              5) Windows: &amp;quot;%APPDATA%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              6) Windows: &amp;quot;%USERPROFILE%\Application Data\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              7) Non-Windows: use getpwuid to find the home directory&lt;br /&gt;
&lt;br /&gt;
              8) On Windows, if it finds no .curlrc file in the sequence described above, it checks for one in the same dir the curl executable is placed.&lt;br /&gt;
&lt;br /&gt;
              On Windows two filenames are checked per location: .curlrc and _curlrc, preferring the former. Older versions on Windows checked for _curlrc only.&lt;br /&gt;
&lt;br /&gt;
              -K, --config can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --config file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --connect-timeout &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow curl&#039;s connection to take.  This only limits the connection phase, so if curl connects within the given period it will continue - if not it  will  exit.&lt;br /&gt;
              Since version 7.32.0, this option accepts decimal values.&lt;br /&gt;
&lt;br /&gt;
              The &amp;quot;connection phase&amp;quot; is considered complete when the requested TCP, TLS or QUIC handshakes are done.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --connect-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --connect-timeout 20 https://example.com&lt;br /&gt;
               curl --connect-timeout 3.14 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
              For  a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead.  This option is suitable to direct requests at a specific server, e.g. at a specific cluster node in a cluster of&lt;br /&gt;
              servers. This option is only used to establish the network connection. It does NOT affect the hostname/port that is used for TLS/SSL (e.g. SNI, certificate verification) or for  the  applica‐&lt;br /&gt;
              tion protocols. &amp;quot;HOST1&amp;quot; and &amp;quot;PORT1&amp;quot; may be the empty string, meaning &amp;quot;any host/port&amp;quot;. &amp;quot;HOST2&amp;quot; and &amp;quot;PORT2&amp;quot; may also be the empty string, meaning &amp;quot;use the request&#039;s original host/port&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              A &amp;quot;host&amp;quot; specified to this option is compared as a string, so it needs to match the name used in request URL. It can be either numerical such as &amp;quot;127.0.0.1&amp;quot; or the full host name such as &amp;quot;ex‐&lt;br /&gt;
              ample.org&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              --connect-to can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --connect-to example.com:443:example.net:8443 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and -H, --header. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       -C, --continue-at &amp;lt;offset&amp;gt;&lt;br /&gt;
              Continue/Resume a previous file transfer at the given offset. The given offset is the exact number of bytes that will be skipped, counting from the beginning of the source file before  it  is&lt;br /&gt;
              transferred to the destination. If used with uploads, the FTP server command SIZE will not be used by curl.&lt;br /&gt;
&lt;br /&gt;
              Use &amp;quot;-C -&amp;quot; to tell curl to automatically find out where/how to resume the transfer. It then uses the given output/input files to figure that out.&lt;br /&gt;
&lt;br /&gt;
              If -C, --continue-at is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -C - https://example.com&lt;br /&gt;
               curl -C 400 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range.&lt;br /&gt;
&lt;br /&gt;
       -c, --cookie-jar &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP)  Specify  to which file you want curl to write all cookies after a completed operation. Curl writes all cookies from its in-memory cookie storage to the given file at the end of opera‐&lt;br /&gt;
              tions. If no cookies are known, no data will be written. The file will be written using the Netscape cookie file format. If you set the file name to a single dash, &amp;quot;-&amp;quot;, the  cookies  will  be&lt;br /&gt;
              written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This command line option will activate the cookie engine that makes curl record and use cookies. Another way to activate it is to use the -b, --cookie option.&lt;br /&gt;
&lt;br /&gt;
              If  the  cookie  jar cannot be created or written to, the whole curl operation will not fail or even report an error clearly. Using -v, --verbose will get a warning displayed, but that is the&lt;br /&gt;
              only visible feedback you get about this possibly lethal situation.&lt;br /&gt;
&lt;br /&gt;
              If -c, --cookie-jar is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -c store-here.txt https://example.com&lt;br /&gt;
               curl -c store-here.txt -b read-these https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie.&lt;br /&gt;
&lt;br /&gt;
       -b, --cookie &amp;lt;data|filename&amp;gt;&lt;br /&gt;
              (HTTP) Pass the data to the HTTP server in the Cookie header. It is supposedly the data previously received from the server in  a  &amp;quot;Set-Cookie:&amp;quot;  line.  The  data  should  be  in  the  format&lt;br /&gt;
              &amp;quot;NAME1=VALUE1;  NAME2=VALUE2&amp;quot;.  This  makes  curl  use the cookie header with this content explicitly in all outgoing request(s). If multiple requests are done due to authentication, followed&lt;br /&gt;
              redirects or similar, they will all get this cookie passed on.&lt;br /&gt;
&lt;br /&gt;
              If no &#039;=&#039; symbol is used in the argument, it is instead treated as a filename to read previously stored cookie from. This option also activates the cookie engine which will make  curl  record&lt;br /&gt;
              incoming  cookies,  which may be handy if you are using this in combination with the -L, --location option or do multiple URL transfers on the same invoke. If the file name is exactly a minus&lt;br /&gt;
              (&amp;quot;-&amp;quot;), curl will instead read the contents from stdin.&lt;br /&gt;
&lt;br /&gt;
              The file format of the file to read cookies from should be plain HTTP headers (Set-Cookie style) or the Netscape/Mozilla cookie file format.&lt;br /&gt;
&lt;br /&gt;
              The file specified with -b, --cookie is only used as input. No cookies will be written to the file. To store cookies, use the -c, --cookie-jar option.&lt;br /&gt;
&lt;br /&gt;
              If you use the Set-Cookie file format and do not specify a domain then the cookie is not sent since the domain will never match. To address this, set a domain in Set-Cookie line  (doing  that&lt;br /&gt;
              will include sub-domains) or preferably: use the Netscape format.&lt;br /&gt;
&lt;br /&gt;
              Users often want to both read cookies from a file and write updated cookies back to a file, so using both -b, --cookie and -c, --cookie-jar in the same command line is common.&lt;br /&gt;
&lt;br /&gt;
              -b, --cookie can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -b cookiefile https://example.com&lt;br /&gt;
               curl -b cookiefile -c cookiefile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -c, --cookie-jar and -j, --junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
       --create-dirs&lt;br /&gt;
              When  used in conjunction with the -o, --output option, curl will create the necessary local directory hierarchy as needed. This option creates the directories mentioned with the -o, --output&lt;br /&gt;
              option, nothing else. If the -o, --output file name uses no directory, or if the directories it mentions already exist, no directories will be created.&lt;br /&gt;
&lt;br /&gt;
              Created dirs are made with mode 0750 on unix style file systems.&lt;br /&gt;
&lt;br /&gt;
              To create remote directories when using FTP or SFTP, try --ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Providing --create-dirs multiple times has no extra effect.  Disable it again with --no-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-dirs --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs and --output-dir.&lt;br /&gt;
&lt;br /&gt;
       --create-file-mode &amp;lt;mode&amp;gt;&lt;br /&gt;
              (SFTP SCP FILE) When curl is used to create files remotely using one of the supported protocols, this option allows the user to set which &#039;mode&#039; to set on the file at creation  time,  instead&lt;br /&gt;
              of the default 0644.&lt;br /&gt;
&lt;br /&gt;
              This option takes an octal number as argument.&lt;br /&gt;
&lt;br /&gt;
              If --create-file-mode is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-file-mode 0777 -T localfile sftp://example.com/new&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --crlf (FTP SMTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).&lt;br /&gt;
&lt;br /&gt;
              (SMTP added in 7.40.0)&lt;br /&gt;
&lt;br /&gt;
              Providing --crlf multiple times has no extra effect.  Disable it again with --no-crlf.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlf -T file ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -B, --use-ascii.&lt;br /&gt;
&lt;br /&gt;
       --crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Provide a file using PEM format with a Certificate Revocation List that may specify peer certificates that are to be considered revoked.&lt;br /&gt;
&lt;br /&gt;
              If --crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlfile rejects.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --curves &amp;lt;algorithm list&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl  to  request  specific  curves  to  use  during SSL session establishment according to RFC 8422, 5.1.  Multiple algorithms can be provided by separating them with &amp;quot;:&amp;quot; (e.g.&lt;br /&gt;
              &amp;quot;X25519:P-521&amp;quot;).  The parameter is available identically in the &amp;quot;openssl s_client/s_server&amp;quot; utilities.&lt;br /&gt;
&lt;br /&gt;
              --curves allows a OpenSSL powered curl to make SSL-connections with exactly the (EC) curve requested by the client, avoiding nontransparent client/server negotiations.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default curves list built into openssl will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --curves is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --curves X25519 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       --data-ascii &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This is just an alias for -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-ascii can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-ascii @file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-raw and --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
       --data-binary &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data exactly as specified with no extra processing whatsoever.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a filename. Data is posted in a similar manner as -d, --data does, except that newlines and carriage returns are preserved and con‐&lt;br /&gt;
              versions are never done.&lt;br /&gt;
&lt;br /&gt;
              Like  -d,  --data the default content-type sent to the server is application/x-www-form-urlencoded. If you want the data to be treated as arbitrary binary data by the server then set the con‐&lt;br /&gt;
              tent-type to octet-stream: -H &amp;quot;Content-Type: application/octet-stream&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, the ones following the first will append data as described in -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-binary can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-binary @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       --data-raw &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data similarly to -d, --data but without the special interpretation of the @ character.&lt;br /&gt;
&lt;br /&gt;
              --data-raw can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --data-raw &amp;quot;hello&amp;quot; https://example.com&lt;br /&gt;
               curl --data-raw &amp;quot;@at@at@&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data, similar to the other -d, --data options with the exception that this performs URL-encoding.&lt;br /&gt;
&lt;br /&gt;
              To be CGI-compliant, the &amp;lt;data&amp;gt; part should begin with a name followed by a separator and a content specification. The &amp;lt;data&amp;gt; part can be passed to curl using one of the following syntaxes:&lt;br /&gt;
&lt;br /&gt;
              content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. Just be careful so that the content does not contain any = or @ symbols, as that will then make the syntax match one of the&lt;br /&gt;
                     other cases below!&lt;br /&gt;
&lt;br /&gt;
              =content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. The preceding = symbol is not included in the data.&lt;br /&gt;
&lt;br /&gt;
              name=content&lt;br /&gt;
                     This will make curl URL-encode the content part and pass that on. Note that the name part is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
              @filename&lt;br /&gt;
                     This will make curl load data from the given file (including any newlines), URL-encode that data and pass it on in the POST.&lt;br /&gt;
&lt;br /&gt;
              name@filename&lt;br /&gt;
                     This  will  make  curl  load data from the given file (including any newlines), URL-encode that data and pass it on in the POST. The name part gets an equal sign appended, resulting in&lt;br /&gt;
                     name=urlencoded-file-content. Note that the name is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --data-urlencode name=val https://example.com&lt;br /&gt;
        curl --data-urlencode =encodethis https://example.com&lt;br /&gt;
        curl --data-urlencode name@file https://example.com&lt;br /&gt;
        curl --data-urlencode @fileonly https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -d, --data and --data-raw.&lt;br /&gt;
&lt;br /&gt;
       -d, --data &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP MQTT) Sends the specified data in a POST request to the HTTP server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button. This  will&lt;br /&gt;
              cause curl to pass the data to the server using the content-type application/x-www-form-urlencoded. Compare to -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --data-raw  is  almost  the  same but does not have a special interpretation of the @ character. To post data purely binary, you should instead use the --data-binary option. To URL-encode the&lt;br /&gt;
              value of a form field you may use --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
              If any of these options is used more than once on the same command line, the data pieces specified will be merged with a separating &amp;amp;-symbol. Thus, using &#039;-d name=daniel -d skill=lousy&#039; would&lt;br /&gt;
              generate a post chunk that looks like &#039;name=daniel&amp;amp;skill=lousy&#039;.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or - if you want curl to read the data from stdin. Posting data from a file named &#039;foobar&#039; would&lt;br /&gt;
              thus be done with -d, --data @foobar. When -d, --data is told to read from a file like that, carriage returns and newlines will be stripped out. If you do not want the @ character to  have  a&lt;br /&gt;
              special interpretation use --data-raw instead.&lt;br /&gt;
&lt;br /&gt;
              -d, --data can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; https://example.com&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; -d &amp;quot;tool=cmdline&amp;quot; https://example.com&lt;br /&gt;
               curl -d @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-urlencode and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --delegation &amp;lt;LEVEL&amp;gt;&lt;br /&gt;
              (GSS/kerberos) Set LEVEL to tell the server what it is allowed to delegate when it comes to user credentials.&lt;br /&gt;
&lt;br /&gt;
              none   Do not allow any delegation.&lt;br /&gt;
&lt;br /&gt;
              policy Delegates if and only if the OK-AS-DELEGATE flag is set in the Kerberos service ticket, which is a matter of realm policy.&lt;br /&gt;
&lt;br /&gt;
              always Unconditionally allow the server to delegate.&lt;br /&gt;
&lt;br /&gt;
       If --delegation is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --delegation &amp;quot;none&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -k, --insecure and --ssl.&lt;br /&gt;
&lt;br /&gt;
       --digest&lt;br /&gt;
              (HTTP) Enables HTTP Digest authentication. This is an authentication scheme that prevents the password from being sent over the wire in clear text. Use this in combination with the normal -u,&lt;br /&gt;
              --user option to set user name and password.&lt;br /&gt;
&lt;br /&gt;
              Providing --digest multiple times has no extra effect.  Disable it again with --no-digest.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --digest https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user, --proxy-digest and --anyauth. This option is mutually exclusive to --basic and --ntlm and --negotiate.&lt;br /&gt;
&lt;br /&gt;
       --disable-eprt&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPRT and LPRT commands when doing active FTP transfers. Curl will normally always first attempt to use EPRT, then LPRT before using  PORT,  but  with&lt;br /&gt;
              this  option,  it will use PORT right away. EPRT and LPRT are extensions to the original FTP protocol, and may not work on all servers, but they enable more functionality in a better way than&lt;br /&gt;
              the traditional PORT command.&lt;br /&gt;
&lt;br /&gt;
              --eprt can be used to explicitly enable EPRT again and --no-eprt is an alias for --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              If the server is accessed using IPv6, this option will have no effect as EPRT is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPRT only changes the active behavior. If you want to switch to passive mode you need to not use -P, --ftp-port or force it with --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-eprt multiple times has no extra effect.  Disable it again with --no-disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-eprt ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       --disable-epsv&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPSV command when doing passive FTP transfers. Curl will normally always first attempt to use EPSV before PASV, but with this option, it will not try&lt;br /&gt;
              using EPSV.&lt;br /&gt;
&lt;br /&gt;
              --epsv can be used to explicitly enable EPSV again and --no-epsv is an alias for --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              If the server is an IPv6 host, this option will have no effect as EPSV is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPSV only changes the passive behavior. If you want to switch to active mode you need to use -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-epsv multiple times has no extra effect.  Disable it again with --no-disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-epsv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-eprt and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       -q, --disable&lt;br /&gt;
              If used as the first parameter on the command line, the curlrc config file will not be read and used. See the -K, --config for details on the default config file search path.&lt;br /&gt;
&lt;br /&gt;
              Providing -q, --disable multiple times has no extra effect.  Disable it again with --no-disable.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -q https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --disallow-username-in-url&lt;br /&gt;
              (HTTP) This tells curl to exit if passed a URL containing a username. This is probably most useful when the URL is being provided at runtime or similar.&lt;br /&gt;
&lt;br /&gt;
              Providing --disallow-username-in-url multiple times has no extra effect.  Disable it again with --no-disallow-username-in-url.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disallow-username-in-url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-interface &amp;lt;interface&amp;gt;&lt;br /&gt;
              (DNS)  Tell curl to send outgoing DNS requests through &amp;lt;interface&amp;gt;. This option is a counterpart to --interface (which does not affect DNS). The supplied string must be an interface name (not&lt;br /&gt;
              an address).&lt;br /&gt;
&lt;br /&gt;
              If --dns-interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-ipv4-addr and --dns-ipv6-addr. --dns-interface requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv4-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv4 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv4 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv4-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv4-addr 10.1.2.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv6-addr. --dns-ipv4-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv6-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv6 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv6 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv6-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv6-addr 2a04:4e42::561 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-ipv6-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-servers &amp;lt;addresses&amp;gt;&lt;br /&gt;
              Set the list of DNS servers to be used instead of the system default.  The list of IP addresses should be separated with commas. Port numbers may also optionally be  given  as  :&amp;lt;port-number&amp;gt;&lt;br /&gt;
              after each IP address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-servers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-servers requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-cert-status&lt;br /&gt;
              Same as --cert-status but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-cert-status multiple times has no extra effect.  Disable it again with --no-doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-cert-status --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-insecure&lt;br /&gt;
              Same as -k, --insecure but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-insecure multiple times has no extra effect.  Disable it again with --no-doh-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-insecure --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-url. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-url &amp;lt;URL&amp;gt;&lt;br /&gt;
              Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames, instead of using the default name resolver mechanism. The URL must be HTTPS.&lt;br /&gt;
&lt;br /&gt;
              Some  SSL options that you set for your transfer will apply to DoH since the name lookups take place over SSL. However, the certificate verification settings are not inherited and can be con‐&lt;br /&gt;
              trolled separately via --doh-insecure and --doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              This option is unset if an empty string &amp;quot;&amp;quot; is used as the URL. (Added in 7.85.0)&lt;br /&gt;
&lt;br /&gt;
              If --doh-url is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.62.0.&lt;br /&gt;
&lt;br /&gt;
       -D, --dump-header &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP FTP) Write the received protocol headers to the specified file. If no headers are received, the use of this option will create an empty file.&lt;br /&gt;
&lt;br /&gt;
              When used in FTP, the FTP server response lines are considered being &amp;quot;headers&amp;quot; and thus are saved there.&lt;br /&gt;
&lt;br /&gt;
              Having multiple transfers in one set of operations (i.e. the URLs in one -:, --next clause), will append them to the same file, separated by a blank line.&lt;br /&gt;
&lt;br /&gt;
              If -D, --dump-header is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dump-header store.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output.&lt;br /&gt;
&lt;br /&gt;
       --egd-file &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to the Entropy Gathering Daemon socket. The socket is used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --egd-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --egd-file /random/here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --random-file.&lt;br /&gt;
&lt;br /&gt;
       --engine &amp;lt;name&amp;gt;&lt;br /&gt;
              (TLS) Select the OpenSSL crypto engine to use for cipher operations. Use --engine list to print a list of build-time supported engines. Note that not all (and possibly none)  of  the  engines&lt;br /&gt;
              may be available at runtime.&lt;br /&gt;
&lt;br /&gt;
              If --engine is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --engine flavor https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves.&lt;br /&gt;
&lt;br /&gt;
       --etag-compare &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option makes a conditional HTTP request for the specific ETag read from the given file by sending a custom If-None-Match header using the stored ETag.&lt;br /&gt;
&lt;br /&gt;
              For correct results, make sure that the specified file contains only a single line with the desired ETag. An empty file is parsed as an empty ETag.&lt;br /&gt;
&lt;br /&gt;
              Use the option --etag-save to first save the ETag from a response, and then use this option to compare against the saved ETag in a subsequent request.&lt;br /&gt;
&lt;br /&gt;
              If --etag-compare is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-compare etag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-save and -z, --time-cond. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --etag-save &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option saves an HTTP ETag to the specified file. An ETag is a caching related header, usually returned in a response.&lt;br /&gt;
&lt;br /&gt;
              If no ETag is sent by the server, an empty file is created.&lt;br /&gt;
&lt;br /&gt;
              If --etag-save is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-save storetag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --expect100-timeout &amp;lt;seconds&amp;gt;&lt;br /&gt;
              (HTTP)  Maximum  time  in seconds that you allow curl to wait for a 100-continue response when curl emits an Expects: 100-continue header in its request. By default curl will wait one second.&lt;br /&gt;
              This option accepts decimal values! When curl stops waiting, it will continue as if the response has been received.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --expect100-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --expect100-timeout 2.5 -T file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout. Added in 7.47.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-early&lt;br /&gt;
              Fail and exit on the first detected transfer error.&lt;br /&gt;
&lt;br /&gt;
              When curl is used to do multiple transfers on the command line, it will attempt to operate on each given URL, one by one. By default, it will ignore errors if there are more  URLs  given  and&lt;br /&gt;
              the last URL&#039;s success will determine the error code curl returns. So early failures will be &amp;quot;hidden&amp;quot; by subsequent successful transfers.&lt;br /&gt;
&lt;br /&gt;
              Using  this option, curl will instead return an error on the first transfer that fails, independent of the amount of URLs that are given on the command line. This way, no transfer failures go&lt;br /&gt;
              undetected by scripts and similar.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              This option does not imply -f, --fail, which causes transfers to fail due to the server&#039;s HTTP status code. You can combine the two options, however note -f,  --fail  is  not  global  and  is&lt;br /&gt;
              therefore contained by -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-early multiple times has no extra effect.  Disable it again with --no-fail-early.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-early https://example.com https://two.example&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail and --fail-with-body. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-with-body&lt;br /&gt;
              (HTTP)  Return  an error on server errors where the HTTP response code is 400 or greater). In normal cases when an HTTP server fails to deliver a document, it returns an HTML document stating&lt;br /&gt;
              so (which often also describes why and more). This flag will still allow curl to output and save that content but also to return error 22.&lt;br /&gt;
&lt;br /&gt;
              This is an alternative option to -f, --fail which makes curl fail for the same circumstances but without saving the content.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-with-body multiple times has no extra effect.  Disable it again with --no-fail-with-body.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-with-body https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. This option is mutually exclusive to -f, --fail. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       -f, --fail&lt;br /&gt;
              (HTTP) Fail fast with no output at all on server errors. This is useful to enable scripts and users to better deal with failed attempts. In normal cases when an HTTP server fails to deliver a&lt;br /&gt;
              document, it returns an HTML document stating so (which often also describes why and more). This flag will prevent curl from outputting that and return error 22.&lt;br /&gt;
&lt;br /&gt;
              This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).&lt;br /&gt;
&lt;br /&gt;
              Providing -f, --fail multiple times has no extra effect.  Disable it again with --no-fail.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --fail-with-body. This option is mutually exclusive to --fail-with-body.&lt;br /&gt;
&lt;br /&gt;
       --false-start&lt;br /&gt;
              (TLS) Tells curl to use false start during the TLS handshake. False start is a mode where a TLS client will start sending application data before verifying the server&#039;s Finished message, thus&lt;br /&gt;
              saving a round trip when performing a full handshake.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the NSS and Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --false-start multiple times has no extra effect.  Disable it again with --no-false-start.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --false-start https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tcp-fastopen. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --form-escape&lt;br /&gt;
              (HTTP) Tells curl to pass on names of multipart form fields and files using backslash-escaping instead of percent-encoding.&lt;br /&gt;
&lt;br /&gt;
              If --form-escape is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-escape -F &#039;field\name=curl&#039; -F &#039;file=@load&amp;quot;this&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form. Added in 7.81.0.&lt;br /&gt;
&lt;br /&gt;
       --form-string &amp;lt;name=string&amp;gt;&lt;br /&gt;
              (HTTP SMTP IMAP) Similar to -F, --form except that the value string for the named parameter is used literally. Leading &#039;@&#039; and &#039;&amp;lt;&#039; characters, and the &#039;;type=&#039; string in  the  value  have  no&lt;br /&gt;
              special meaning. Use this in preference to -F, --form if there&#039;s any possibility that the string value may accidentally trigger the &#039;@&#039; or &#039;&amp;lt;&#039; features of -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --form-string can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-string &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form.&lt;br /&gt;
&lt;br /&gt;
       -F, --form &amp;lt;name=content&amp;gt;&lt;br /&gt;
              (HTTP  SMTP  IMAP) For HTTP protocol family, this lets curl emulate a filled-in form in which a user has pressed the submit button. This causes curl to POST data using the Content-Type multi‐&lt;br /&gt;
              part/form-data according to RFC 2388.&lt;br /&gt;
&lt;br /&gt;
              For SMTP and IMAP protocols, this is the means to compose a multipart mail message to transmit.&lt;br /&gt;
&lt;br /&gt;
              This enables uploading of binary files etc. To force the &#039;content&#039; part to be a file, prefix the file name with an @ sign. To just get the content part from a file, prefix the file name  with&lt;br /&gt;
              the  symbol  &amp;lt;.  The  difference  between @ and &amp;lt; is then that @ makes a file get attached in the post as a file upload, while the &amp;lt; makes a text field and just get the contents for that text&lt;br /&gt;
              field from a file.&lt;br /&gt;
&lt;br /&gt;
              Tell curl to read content from stdin instead of a file by using - as filename. This goes for both @ and &amp;lt; constructs. When stdin is used, the contents is buffered in memory first by  curl  to&lt;br /&gt;
              determine  its  size  and allow a possible resend. Defining a part&#039;s data from a named non-regular file (such as a named pipe or similar) is unfortunately not subject to buffering and will be&lt;br /&gt;
              effectively read at transmission time; since the full size is unknown before the transfer starts, such data is sent as chunks by HTTP and rejected by IMAP.&lt;br /&gt;
&lt;br /&gt;
              Example: send an image to an HTTP server, where &#039;profile&#039; is the name of the form-field to which the file portrait.jpg will be the input:&lt;br /&gt;
&lt;br /&gt;
               curl -F profile=@portrait.jpg https://example.com/upload.cgi&lt;br /&gt;
&lt;br /&gt;
              Example: send your name and shoe size in two text fields to the server:&lt;br /&gt;
&lt;br /&gt;
               curl -F name=John -F shoesize=11 https://example.com/&lt;br /&gt;
&lt;br /&gt;
              Example: send your essay in a text field to the server. Send it as a plain text field, but get the contents for it from a local file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;story=&amp;lt;hugefile.txt&amp;quot; https://example.com/&lt;br /&gt;
&lt;br /&gt;
              You can also tell curl what Content-Type to use by using &#039;type=&#039;, in a manner similar to:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;web=@index.html;type=text/html&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;name=daniel;type=text/foo&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              You can also explicitly change the name field of a file upload part by setting filename=, like this:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@localfile;filename=nameinpost&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              If filename/path contains &#039;,&#039; or &#039;;&#039;, it must be quoted by double-quotes like:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@\&amp;quot;local,file\&amp;quot;;filename=\&amp;quot;name;in;post\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;file=@&amp;quot;local,file&amp;quot;;filename=&amp;quot;name;in;post&amp;quot;&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              Note that if a filename/path is quoted by double-quotes, any double-quote or backslash within the filename must be escaped by backslash.&lt;br /&gt;
&lt;br /&gt;
              Quoting must also be applied to non-file data if it contains semicolons, leading/trailing spaces or leading double quotes:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;colors=&amp;quot;red; green; blue&amp;quot;;type=text/x-myapp&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              You can add custom headers to the field by setting headers=, like&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=\&amp;quot;X-submit-type: OK\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=@headerfile&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              The headers= keyword may appear more that once and above notes about quoting apply. When headers are read from a file, Empty lines and lines starting with &#039;#&#039; are comments and  ignored;  each&lt;br /&gt;
              header  can  be  folded  by  splitting  between two words and starting the continuation line with a space; embedded carriage-returns and trailing spaces are stripped.  Here is an example of a&lt;br /&gt;
              header file contents:&lt;br /&gt;
&lt;br /&gt;
                # This file contain two headers.&lt;br /&gt;
                X-header-1: this is a header&lt;br /&gt;
&lt;br /&gt;
                # The following header is folded.&lt;br /&gt;
                X-header-2: this is&lt;br /&gt;
                 another header&lt;br /&gt;
&lt;br /&gt;
              To support sending multipart mail messages, the syntax is extended as follows:&lt;br /&gt;
              - name can be omitted: the equal sign is the first character of the argument,&lt;br /&gt;
              - if data starts with &#039;(&#039;, this signals to start a new multipart: it can be followed by a content type specification.&lt;br /&gt;
              - a multipart can be terminated with a &#039;=)&#039; argument.&lt;br /&gt;
&lt;br /&gt;
              Example: the following command sends an SMTP mime email consisting in an inline part in two alternative formats: plain text and HTML. It attaches a text file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=(;type=multipart/alternative&#039; \&lt;br /&gt;
                    -F &#039;=plain text message&#039; \&lt;br /&gt;
                    -F &#039;= &amp;lt;body&amp;gt;HTML message&amp;lt;/body&amp;gt;;type=text/html&#039; \&lt;br /&gt;
                    -F &#039;=)&#039; -F &#039;=@textfile.txt&#039; ...  smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              Data can be encoded for transfer using encoder=. Available encodings are binary and 8bit that do nothing else than adding the corresponding Content-Transfer-Encoding header,  7bit  that  only&lt;br /&gt;
              rejects 8-bit characters with a transfer error, quoted-printable and base64 that encodes data according to the corresponding schemes, limiting lines length to 76 characters.&lt;br /&gt;
&lt;br /&gt;
              Example: send multipart mail with a quoted-printable text message and a base64 attached file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=text message;encoder=quoted-printable&#039; \&lt;br /&gt;
                    -F &#039;=@localfile;encoder=base64&#039; ... smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See further examples and details in the MANUAL.&lt;br /&gt;
&lt;br /&gt;
              -F, --form can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form &amp;quot;name=curl&amp;quot; --form &amp;quot;file=@loadthis&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data, --form-string and --form-escape. This option is mutually exclusive to -d, --data and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --ftp-account &amp;lt;data&amp;gt;&lt;br /&gt;
              (FTP) When an FTP server asks for &amp;quot;account data&amp;quot; after user name and password has been provided, this data is sent off using the ACCT command.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-account is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-account &amp;quot;mr.robot&amp;quot; ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-alternative-to-user &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP)  If  authenticating  with the USER and PASS commands fails, send this command.  When connecting to Tumbleweed&#039;s Secure Transport server over FTPS using a client certificate, using &amp;quot;SITE&lt;br /&gt;
              AUTH&amp;quot; will tell the server to retrieve the username from the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-alternative-to-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-alternative-to-user &amp;quot;U53r&amp;quot; ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-account and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-create-dirs&lt;br /&gt;
              (FTP SFTP) When an FTP or SFTP URL/operation uses a path that does not currently exist on the server, the standard behavior of curl is to fail. Using this option, curl will instead attempt to&lt;br /&gt;
              create missing directories.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-create-dirs multiple times has no extra effect.  Disable it again with --no-ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-create-dirs -T file ftp://example.com/remote/path/file&lt;br /&gt;
&lt;br /&gt;
              See also --create-dirs.&lt;br /&gt;
&lt;br /&gt;
       --ftp-method &amp;lt;method&amp;gt;&lt;br /&gt;
              (FTP) Control what method curl should use to reach a file on an FTP(S) server. The method argument should be one of the following alternatives:&lt;br /&gt;
&lt;br /&gt;
              multicwd&lt;br /&gt;
                     curl  does  a  single CWD operation for each path part in the given URL. For deep hierarchies this means many commands. This is how RFC 1738 says it should be done. This is the default&lt;br /&gt;
                     but the slowest behavior.&lt;br /&gt;
&lt;br /&gt;
              nocwd  curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full path to the server for all these commands. This is the fastest behavior.&lt;br /&gt;
&lt;br /&gt;
              singlecwd&lt;br /&gt;
                     curl does one CWD with the full target directory and then operates on the file &amp;quot;normally&amp;quot; (like in the multicwd case). This is somewhat more standards compliant than &#039;nocwd&#039; but  with‐&lt;br /&gt;
                     out the full penalty of &#039;multicwd&#039;.&lt;br /&gt;
&lt;br /&gt;
       If --ftp-method is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --ftp-method multicwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method nocwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method singlecwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
&lt;br /&gt;
       See also -l, --list-only.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pasv&lt;br /&gt;
              (FTP) Use passive mode for the data connection. Passive is the internal default behavior, but using this option can be used to override a previous -P, --ftp-port option.&lt;br /&gt;
&lt;br /&gt;
              Reversing an enforced passive really is not doable but you must then instead enforce the correct -P, --ftp-port again.&lt;br /&gt;
&lt;br /&gt;
              Passive mode means that curl will try the EPSV command first and then PASV, unless --disable-epsv is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pasv multiple times has no extra effect.  Disable it again with --no-ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pasv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
       -P, --ftp-port &amp;lt;address&amp;gt;&lt;br /&gt;
              (FTP)  Reverses the default initiator/listener roles when connecting with FTP. This option makes curl use active mode. curl then tells the server to connect back to the client&#039;s specified ad‐&lt;br /&gt;
              dress and port, while passive mode asks the server to setup an IP address and port for it to connect to. &amp;lt;address&amp;gt; should be one of:&lt;br /&gt;
&lt;br /&gt;
              interface&lt;br /&gt;
                     e.g. &amp;quot;eth0&amp;quot; to specify which interface&#039;s IP address you want to use (Unix only)&lt;br /&gt;
&lt;br /&gt;
              IP address&lt;br /&gt;
                     e.g. &amp;quot;192.168.10.1&amp;quot; to specify the exact IP address&lt;br /&gt;
&lt;br /&gt;
              host name&lt;br /&gt;
                     e.g. &amp;quot;my.host.domain&amp;quot; to specify the machine&lt;br /&gt;
&lt;br /&gt;
              -      make curl pick the same IP address that is already used for the control connection&lt;br /&gt;
&lt;br /&gt;
       Disable the use of PORT with --ftp-pasv. Disable the attempt to use the EPRT command instead of PORT by using --disable-eprt. EPRT is really PORT++.&lt;br /&gt;
&lt;br /&gt;
       You can also append &amp;quot;:[start]-[end]&amp;quot; to the right of the address, to tell curl what TCP port range to use. That means you specify a port range, from a lower to a higher number. A single number works&lt;br /&gt;
       as well, but do note that it increases the risk of failure since the port may not be available.&lt;br /&gt;
&lt;br /&gt;
       If -P, --ftp-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl -P - ftp:/example.com&lt;br /&gt;
        curl -P eth0 ftp:/example.com&lt;br /&gt;
        curl -P 192.168.0.2 ftp:/example.com&lt;br /&gt;
&lt;br /&gt;
       See also --ftp-pasv and --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pret&lt;br /&gt;
              (FTP) Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers, mainly drftpd, require this non-standard command for directory listings as well as up and downloads in PASV&lt;br /&gt;
              mode.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pret multiple times has no extra effect.  Disable it again with --no-ftp-pret.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pret ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -P, --ftp-port and --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-skip-pasv-ip&lt;br /&gt;
              (FTP) Tell curl to not use the IP address the server suggests in its response to curl&#039;s PASV command when curl connects the data connection. Instead curl will re-use the same  IP  address  it&lt;br /&gt;
              already uses for the control connection.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.74.0 this option is enabled by default.&lt;br /&gt;
&lt;br /&gt;
              This option has no effect if PORT, EPRT or EPSV is used instead of PASV.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-skip-pasv-ip multiple times has no extra effect.  Disable it again with --no-ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-skip-pasv-ip ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;&lt;br /&gt;
              (FTP)  Sets the CCC mode. The passive mode will not initiate the shutdown, but instead wait for the server to do it, and will not reply to the shutdown from the server. The active mode initi‐&lt;br /&gt;
              ates the shutdown and waits for a reply from the server.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc-mode multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc&lt;br /&gt;
              (FTP) Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after authenticating. The rest of the control channel communication will be unencrypted. This allows NAT routers  to  follow&lt;br /&gt;
              the FTP transaction. The default mode is passive.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and --ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-control&lt;br /&gt;
              (FTP) Require SSL/TLS for the FTP login, clear for transfer.  Allows secure authentication, but non-encrypted data transfers for efficiency.  Fails the transfer if the server does not support&lt;br /&gt;
              SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-control multiple times has no extra effect.  Disable it again with --no-ftp-ssl-control.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-control ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl.&lt;br /&gt;
&lt;br /&gt;
       -G, --get&lt;br /&gt;
              When used, this option will make all data specified with -d, --data, --data-binary or --data-urlencode to be used in an HTTP GET request instead of the POST request that  otherwise  would  be&lt;br /&gt;
              used. The data will be appended to the URL with a &#039;?&#039; separator.&lt;br /&gt;
&lt;br /&gt;
              If used in combination with -I, --head, the POST data will instead be appended to the URL with a HEAD request.&lt;br /&gt;
&lt;br /&gt;
              Providing -G, --get multiple times has no extra effect.  Disable it again with --no-get.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --get https://example.com&lt;br /&gt;
               curl --get -d &amp;quot;tool=curl&amp;quot; -d &amp;quot;age=old&amp;quot; https://example.com&lt;br /&gt;
               curl --get -I -d &amp;quot;tool=curl&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       -g, --globoff&lt;br /&gt;
              This  option  switches  off  the &amp;quot;URL globbing parser&amp;quot;. When you set this option, you can specify URLs that contain the letters {}[] without having curl itself interpret them. Note that these&lt;br /&gt;
              letters are not normal legal URL contents but they should be encoded according to the URI standard.&lt;br /&gt;
&lt;br /&gt;
              Providing -g, --globoff multiple times has no extra effect.  Disable it again with --no-globoff.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -g &amp;quot;https://example.com/{[]}}}}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config and -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --happy-eyeballs-timeout-ms &amp;lt;milliseconds&amp;gt;&lt;br /&gt;
              Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6 addresses for dual-stack hosts, giving IPv6 a head-start of the specified number of milliseconds. If the IPv6 ad‐&lt;br /&gt;
              dress cannot be connected to within that time, then a connection attempt is made to the IPv4 address in parallel. The first connection to be established is the one that is used.&lt;br /&gt;
&lt;br /&gt;
              The  range  of  suggested useful values is limited. Happy Eyeballs RFC 6555 says &amp;quot;It is RECOMMENDED that connection attempts be paced 150-250 ms apart to balance human factors against network&lt;br /&gt;
              load.&amp;quot; libcurl currently defaults to 200 ms. Firefox and Chrome currently default to 300 ms.&lt;br /&gt;
&lt;br /&gt;
              If --happy-eyeballs-timeout-ms is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --happy-eyeballs-timeout-ms 500 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time and --connect-timeout. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --haproxy-protocol&lt;br /&gt;
              (HTTP) Send a HAProxy PROXY protocol v1 header at the beginning of the connection. This is used by some load balancers and reverse proxies to indicate the client&#039;s true IP address and port.&lt;br /&gt;
&lt;br /&gt;
              This option is primarily useful when sending test requests to a service that expects this header.&lt;br /&gt;
&lt;br /&gt;
              Providing --haproxy-protocol multiple times has no extra effect.  Disable it again with --no-haproxy-protocol.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --haproxy-protocol https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.60.0.&lt;br /&gt;
&lt;br /&gt;
       -I, --head&lt;br /&gt;
              (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the command HEAD which this uses to get nothing but the header of a document. When used on an FTP or FILE file, curl displays  the&lt;br /&gt;
              file size and last modification time only.&lt;br /&gt;
&lt;br /&gt;
              Providing -I, --head multiple times has no extra effect.  Disable it again with --no-head.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get, -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -H, --header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP IMAP SMTP) Extra header to include in information sent. When used within an HTTP request, it is added to the regular request headers.&lt;br /&gt;
&lt;br /&gt;
              For an IMAP or SMTP MIME uploaded mail built with -F, --form options, it is prepended to the resulting MIME document, effectively including it at the mail global level. It does not affect raw&lt;br /&gt;
              uploaded mails (Added in 7.56.0).&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of extra headers. Note that if you should add a custom header that has the same name as one of the internal ones curl would use, your externally set header will  be&lt;br /&gt;
              used  instead  of the internal one.  This allows you to make even trickier stuff than curl would normally do. You should not replace internally set headers without knowing perfectly well what&lt;br /&gt;
              you are doing. Remove an internal header by giving a replacement without content on the right side of the colon, as in: -H &amp;quot;Host:&amp;quot;. If you send the custom header with no-value then its header&lt;br /&gt;
              must be terminated with a semicolon, such as -H &amp;quot;X-Custom-Header;&amp;quot; to send &amp;quot;X-Custom-Header:&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              curl  will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              This option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
              Please note that most anti-spam utilities check the presence and value of several MIME mail headers: these are &amp;quot;From:&amp;quot;, &amp;quot;To:&amp;quot;, &amp;quot;Date:&amp;quot; and &amp;quot;Subject:&amp;quot; among others and  should  be  added  with&lt;br /&gt;
              this option.&lt;br /&gt;
&lt;br /&gt;
              You need --proxy-header to send custom headers intended for an HTTP proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
              Passing on a &amp;quot;Transfer-Encoding: chunked&amp;quot; header when doing an HTTP request with a request body, will make curl send the data using chunked encoding.&lt;br /&gt;
&lt;br /&gt;
              WARNING: headers set with this option will be set in all HTTP requests - even after redirects are followed, like when told with -L, --location. This can lead to the header being sent to other&lt;br /&gt;
              hosts than the original host, so sensitive headers should be used with caution combined with following redirects.&lt;br /&gt;
&lt;br /&gt;
              -H, --header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -H &amp;quot;X-First-Name: Joe&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;User-Agent: yes-please/2000&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;Host:&amp;quot; https://example.com&lt;br /&gt;
               curl -H @headers.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -e, --referer.&lt;br /&gt;
&lt;br /&gt;
       -h, --help &amp;lt;category&amp;gt;&lt;br /&gt;
              Usage help. This lists all commands of the &amp;lt;category&amp;gt;.  If no arg was provided, curl will display the most important command line arguments.  If the argument &amp;quot;all&amp;quot;  was  provided,  curl  will&lt;br /&gt;
              display all options available.  If the argument &amp;quot;category&amp;quot; was provided, curl will display all categories and their meanings.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --help all&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --hostpubmd5 &amp;lt;md5&amp;gt;&lt;br /&gt;
              (SFTP  SCP) Pass a string containing 32 hexadecimal digits. The string should be the 128 bit MD5 checksum of the remote host&#039;s public key, curl will refuse the connection with the host unless&lt;br /&gt;
              the md5sums match.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubmd5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256.&lt;br /&gt;
&lt;br /&gt;
       --hostpubsha256 &amp;lt;sha256&amp;gt;&lt;br /&gt;
              (SFTP SCP) Pass a string containing a Base64-encoded SHA256 hash of the remote host&#039;s public key. Curl will refuse the connection with the host unless the hashes match.&lt;br /&gt;
&lt;br /&gt;
              This feature requires libcurl to be built with libssh2 and does not work with other SSH backends.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubsha256 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubmd5. Added in 7.80.0.&lt;br /&gt;
&lt;br /&gt;
       --hsts &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS) This option enables HSTS for the transfer. If the file name points to an existing HSTS cache file, that will be used. After a completed transfer, the cache will be saved to  the  file&lt;br /&gt;
              name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to use HTTP:// for a transfer involving a host name that exists in the HSTS cache, it upgrades the transfer to use HTTPS. Each HSTS cache entry has an individual life time af‐&lt;br /&gt;
              ter which the upgrade is no longer performed.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle HSTS in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --hsts can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hsts cache.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.74.0.&lt;br /&gt;
&lt;br /&gt;
       --http0.9&lt;br /&gt;
              (HTTP) Tells curl to be fine with HTTP version 0.9 response.&lt;br /&gt;
&lt;br /&gt;
              HTTP/0.9 is a completely headerless response and therefore you can also connect with this to non-HTTP servers and still get a response since curl will simply transparently downgrade - if  al‐&lt;br /&gt;
              lowed.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, HTTP/0.9 is disabled by default.&lt;br /&gt;
&lt;br /&gt;
              Providing --http0.9 multiple times has no extra effect.  Disable it again with --no-http0.9.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http0.9 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1, --http2 and --http3. Added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
       -0, --http1.0&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.0 instead of using its internally preferred HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Providing -0, --http1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http0.9 and --http1.1. This option is mutually exclusive to --http1.1 and --http2 and --http2-prior-knowledge and --http3.&lt;br /&gt;
&lt;br /&gt;
       --http1.1&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --http1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -0, --http1.0 and --http0.9. This option is mutually exclusive to -0, --http1.0 and --http2 and --http2-prior-knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http2-prior-knowledge&lt;br /&gt;
              (HTTP)  Tells  curl  to  issue  its non-TLS HTTP requests using HTTP/2 without HTTP/1.1 Upgrade. It requires prior knowledge that the server supports HTTP/2 straight away. HTTPS requests will&lt;br /&gt;
              still do HTTP/2 the standard way with negotiated protocol version in the TLS handshake.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2-prior-knowledge multiple times has no extra effect.  Disable it again with --no-http2-prior-knowledge.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2-prior-knowledge https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http2 and --http3. --http2-prior-knowledge requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and  -0,  --http1.0  and&lt;br /&gt;
              --http2 and --http3. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --http2&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 2.&lt;br /&gt;
&lt;br /&gt;
              For HTTPS, this means curl will attempt to negotiate HTTP/2 in the TLS handshake. curl does this by default.&lt;br /&gt;
&lt;br /&gt;
              For HTTP, this means curl will attempt to upgrade the request to HTTP/2 using the Upgrade: request header.&lt;br /&gt;
&lt;br /&gt;
              When curl uses HTTP/2 over HTTPS, it does not itself insist on TLS 1.2 or higher even though that is required by the specification. A user can add this version requirement with --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http3. --http2 requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2-prior-&lt;br /&gt;
              knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http3-only&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Instructs curl to use HTTP/3 to the host in the URL, with no fallback to earlier HTTP versions. HTTP/3 can only be used for HTTPS and not for HTTP URLs. For HTTP, this option will trigger  an&lt;br /&gt;
              error.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              This option will make curl fail if a QUIC connection cannot be established, it will not attempt any other HTTP version on its own. Use --http3 for similar functionality with a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3-only multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3-only https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1,  --http2 and --http3. --http3-only requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and&lt;br /&gt;
              --http2 and --http2-prior-knowledge and --http3. Added in 7.88.0.&lt;br /&gt;
&lt;br /&gt;
       --http3&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Tells curl to try HTTP/3 to the host in the URL, but fallback to earlier HTTP versions if the HTTP/3 connection establishment fails. HTTP/3 is only available for HTTPS and not for HTTP URLs.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              When asked to use HTTP/3, curl will issue a separate attempt to use older HTTP versions with a slight delay, so if the HTTP/3 transfer fails or is very slow, curl will still  try  to  proceed&lt;br /&gt;
              with an older HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Use --http3-only for similar functionality without a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1  and  --http2.  --http3 requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2 and&lt;br /&gt;
              --http2-prior-knowledge and --http3-only. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --ignore-content-length&lt;br /&gt;
              (FTP HTTP) For HTTP, Ignore the Content-Length header. This is particularly useful for servers running Apache 1.x, which will report incorrect Content-Length for files  larger  than  2  giga‐&lt;br /&gt;
              bytes.&lt;br /&gt;
&lt;br /&gt;
              For FTP (since 7.46.0), skip the RETR command to figure out the size before downloading a file.&lt;br /&gt;
&lt;br /&gt;
              This option does not work for HTTP if libcurl was built to use hyper.&lt;br /&gt;
&lt;br /&gt;
              Providing --ignore-content-length multiple times has no extra effect.  Disable it again with --no-ignore-content-length.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ignore-content-length https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
       -i, --include&lt;br /&gt;
              Include the HTTP response headers in the output. The HTTP response headers can include things like server name, cookies, date of the document, HTTP version and more...&lt;br /&gt;
&lt;br /&gt;
              To view the request headers, consider the -v, --verbose option.&lt;br /&gt;
&lt;br /&gt;
              Providing -i, --include multiple times has no extra effect.  Disable it again with --no-include.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -i https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       -k, --insecure&lt;br /&gt;
              (TLS  SFTP  SCP) By default, every secure connection curl makes is verified to be secure before the transfer takes place. This option makes curl skip the verification step and proceed without&lt;br /&gt;
              checking.&lt;br /&gt;
&lt;br /&gt;
              When this option is not used for protocols using TLS, curl verifies the server&#039;s TLS certificate before it continues: that the certificate contains the right name which matches the host  name&lt;br /&gt;
              used in the URL and that the certificate has been signed by a CA certificate present in the cert store.  See this online resource for further details:&lt;br /&gt;
               https://curl.se/docs/sslcerts.html&lt;br /&gt;
&lt;br /&gt;
              For SFTP and SCP, this option makes curl skip the known_hosts verification.  known_hosts is a file normally stored in the user&#039;s home directory in the &amp;quot;.ssh&amp;quot; subdirectory, which contains host&lt;br /&gt;
              names and their public keys.&lt;br /&gt;
&lt;br /&gt;
              WARNING: using this option makes the transfer insecure.&lt;br /&gt;
&lt;br /&gt;
              When curl uses secure protocols it trusts responses and allows for example HSTS and Alt-Svc information to be stored and used subsequently. Using -k, --insecure can make curl  trust  and  use&lt;br /&gt;
              such information from malicious servers.&lt;br /&gt;
&lt;br /&gt;
              Providing -k, --insecure multiple times has no extra effect.  Disable it again with --no-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --insecure https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-insecure, --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --interface &amp;lt;name&amp;gt;&lt;br /&gt;
              Perform an operation using a specified interface. You can enter interface name, IP address or host name. An example could look like:&lt;br /&gt;
&lt;br /&gt;
               curl --interface eth0:1 https://www.example.com/&lt;br /&gt;
&lt;br /&gt;
              On Linux it can be used to specify a VRF, but the binary needs to either have CAP_NET_RAW or to be run as root. More information about Linux VRF: https://www.kernel.org/doc/Documentation/net‐&lt;br /&gt;
              working/vrf.txt&lt;br /&gt;
&lt;br /&gt;
              If --interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface.&lt;br /&gt;
&lt;br /&gt;
       -4, --ipv4&lt;br /&gt;
              This option tells curl to use IPv4 addresses only, and not for example try IPv6.&lt;br /&gt;
&lt;br /&gt;
              Providing -4, --ipv4 multiple times has no extra effect.  Disable it again with --no-ipv4.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv4 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -6, --ipv6.&lt;br /&gt;
&lt;br /&gt;
       -6, --ipv6&lt;br /&gt;
              This option tells curl to use IPv6 addresses only, and not for example try IPv4.&lt;br /&gt;
&lt;br /&gt;
              Providing -6, --ipv6 multiple times has no extra effect.  Disable it again with --no-ipv6.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv6 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -4, --ipv4.&lt;br /&gt;
&lt;br /&gt;
       --json &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) Sends the specified JSON data in a POST request to the HTTP server. --json works as a shortcut for passing on these three options:&lt;br /&gt;
&lt;br /&gt;
               --data [arg]&lt;br /&gt;
               --header &amp;quot;Content-Type: application/json&amp;quot;&lt;br /&gt;
               --header &amp;quot;Accept: application/json&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              There is no verification that the passed in data is actual JSON or that the syntax is correct.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or a single dash (-) if you want curl to read the data from stdin.  Posting  data  from  a  file&lt;br /&gt;
              named &#039;foobar&#039; would thus be done with --json @foobar and to instead read the data from stdin, use --json @-.&lt;br /&gt;
&lt;br /&gt;
              If this option is used more than once on the same command line, the additional data pieces will be concatenated to the previous before sending.&lt;br /&gt;
&lt;br /&gt;
              The headers this option sets can be overridden with -H, --header as usual.&lt;br /&gt;
&lt;br /&gt;
              --json can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;: &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;:&#039; --json &#039; &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json @prepared https://example.com&lt;br /&gt;
               curl --json @- https://example.com &amp;lt; json.txt&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file. Added in 7.82.0.&lt;br /&gt;
&lt;br /&gt;
       -j, --junk-session-cookies&lt;br /&gt;
              (HTTP)  When  curl  is told to read cookies from a given file, this option will make it discard all &amp;quot;session cookies&amp;quot;. This will basically have the same effect as if a new session is started.&lt;br /&gt;
              Typical browsers always discard session cookies when they are closed down.&lt;br /&gt;
&lt;br /&gt;
              Providing -j, --junk-session-cookies multiple times has no extra effect.  Disable it again with --no-junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --junk-session-cookies -b cookies.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie and -c, --cookie-jar.&lt;br /&gt;
&lt;br /&gt;
       --keepalive-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              This option sets the time a connection needs to remain idle before sending keepalive probes and the time between individual keepalive probes. It is currently effective  on  operating  systems&lt;br /&gt;
              offering  the  TCP_KEEPIDLE  and TCP_KEEPINTVL socket options (meaning Linux, recent AIX, HP-UX and more).  Keepalives are used by the TCP stack to detect broken networks on idle connections.&lt;br /&gt;
              The number of missed keepalive probes before declaring the connection down is OS dependent and is commonly 9 or 10. This option has no effect if --no-keepalive is used.&lt;br /&gt;
&lt;br /&gt;
              If unspecified, the option defaults to 60 seconds.&lt;br /&gt;
&lt;br /&gt;
              If --keepalive-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --keepalive-time 20 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-keepalive and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Private key file type. Specify which type your --key provided private key is. DER, PEM, and ENG are supported. If not specified, PEM is assumed.&lt;br /&gt;
&lt;br /&gt;
              If --key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --key-type DER --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key.&lt;br /&gt;
&lt;br /&gt;
       --key &amp;lt;key&amp;gt;&lt;br /&gt;
              (TLS SSH) Private key file name. Allows you to provide your private key in this separate file. For SSH, if not specified, curl  tries  the  following  candidates  in  order:  &#039;~/.ssh/id_rsa&#039;,&lt;br /&gt;
              &#039;~/.ssh/id_dsa&#039;, &#039;./id_rsa&#039;, &#039;./id_dsa&#039;.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a private key located in a PKCS#11 device. A string begin‐&lt;br /&gt;
              ning with &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --key-type option will be&lt;br /&gt;
              set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against Secure Transport or Schannel then this option is ignored for TLS protocols (HTTPS, etc). Those backends expect the private key to be already present in the keychain&lt;br /&gt;
              or PKCS#12 file containing the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certificate --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key-type and -E, --cert.&lt;br /&gt;
&lt;br /&gt;
       --krb &amp;lt;level&amp;gt;&lt;br /&gt;
              (FTP) Enable Kerberos authentication and use. The level must be entered and should be one of &#039;clear&#039;, &#039;safe&#039;, &#039;confidential&#039;, or &#039;private&#039;. Should you use a level that is not  one  of  these,&lt;br /&gt;
              &#039;private&#039; will instead be used.&lt;br /&gt;
&lt;br /&gt;
              If --krb is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --krb clear ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --delegation and --ssl. --krb requires that the underlying libcurl was built to support Kerberos.&lt;br /&gt;
&lt;br /&gt;
       --libcurl &amp;lt;file&amp;gt;&lt;br /&gt;
              Append this option to any ordinary curl command line, and you will get libcurl-using C source code written to the file that does the equivalent of what your command-line operation does!&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --libcurl is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --libcurl client.c https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --limit-rate &amp;lt;speed&amp;gt;&lt;br /&gt;
              Specify the maximum transfer rate you want curl to use - for both downloads and uploads. This feature is useful if you have a limited pipe and you would like your transfer not to use your en‐&lt;br /&gt;
              tire bandwidth. To make it slower than it otherwise would be.&lt;br /&gt;
&lt;br /&gt;
              The given speed is measured in bytes/second, unless a suffix is appended.  Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or  &#039;G&#039;  makes  it&lt;br /&gt;
              gigabytes. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024. Examples: 200K, 3m and 1G.&lt;br /&gt;
&lt;br /&gt;
              The rate limiting logic works on averaging the transfer speed to no more than the set threshold over a period of multiple seconds.&lt;br /&gt;
&lt;br /&gt;
              If you also use the -Y, --speed-limit option, that option will take precedence and might cripple the rate-limiting slightly, to help keeping the speed-limit logic working.&lt;br /&gt;
&lt;br /&gt;
              If --limit-rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --limit-rate 100K https://example.com&lt;br /&gt;
               curl --limit-rate 1000 https://example.com&lt;br /&gt;
               curl --limit-rate 10M https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --rate, -Y, --speed-limit and -y, --speed-time.&lt;br /&gt;
&lt;br /&gt;
       -l, --list-only&lt;br /&gt;
              (FTP  POP3)  (FTP)  When listing an FTP directory, this switch forces a name-only view. This is especially useful if the user wants to machine-parse the contents of an FTP directory since the&lt;br /&gt;
              normal directory view does not use a standard look or format. When used like this, the option causes an NLST command to be sent to the server instead of LIST.&lt;br /&gt;
&lt;br /&gt;
              Note: Some FTP servers list only files in their response to NLST; they do not include sub-directories and symbolic links.&lt;br /&gt;
&lt;br /&gt;
              (POP3) When retrieving a specific email from POP3, this switch forces a LIST command to be performed instead of RETR. This is particularly useful if the user wants to see if a  specific  mes‐&lt;br /&gt;
              sage-id exists on the server and what size it is.&lt;br /&gt;
&lt;br /&gt;
              Note:  When  combined  with -X, --request, this option can be used to send a UIDL command instead, so the user may use the email&#039;s unique identifier rather than its message-id to make the re‐&lt;br /&gt;
              quest.&lt;br /&gt;
&lt;br /&gt;
              Providing -l, --list-only multiple times has no extra effect.  Disable it again with --no-list-only.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --list-only ftp://example.com/dir/&lt;br /&gt;
&lt;br /&gt;
              See also -Q, --quote and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --local-port &amp;lt;num/range&amp;gt;&lt;br /&gt;
              Set a preferred single number or range (FROM-TO) of local port numbers to use for the connection(s).  Note that port numbers by nature are a scarce resource that will be busy at times so set‐&lt;br /&gt;
              ting this range to something too narrow might cause unnecessary connection setup failures.&lt;br /&gt;
&lt;br /&gt;
              If --local-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --local-port 1000-3000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -g, --globoff.&lt;br /&gt;
&lt;br /&gt;
       --location-trusted&lt;br /&gt;
              (HTTP) Like -L, --location, but will allow sending the name + password to all hosts that the site may redirect to. This may or may not introduce a security breach if the site redirects you to&lt;br /&gt;
              a site to which you will send your authentication info (which is plaintext in the case of HTTP Basic authentication).&lt;br /&gt;
&lt;br /&gt;
              Providing --location-trusted multiple times has no extra effect.  Disable it again with --no-location-trusted.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --location-trusted -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       -L, --location&lt;br /&gt;
              (HTTP) If the server reports that the requested page has moved to a different location (indicated with a Location: header and a 3XX response code), this option will make curl redo the request&lt;br /&gt;
              on  the  new place. If used together with -i, --include or -I, --head, headers from all requested pages will be shown. When authentication is used, curl only sends its credentials to the ini‐&lt;br /&gt;
              tial host. If a redirect takes curl to a different host, it will not be able to intercept the user+password. See also --location-trusted on how to change this. You can  limit  the  amount  of&lt;br /&gt;
              redirects to follow by using the --max-redirs option.&lt;br /&gt;
&lt;br /&gt;
              When  curl  follows  a  redirect  and if the request is a POST, it will send the following request with a GET if the HTTP response was 301, 302, or 303. If the response code was any other 3xx&lt;br /&gt;
              code, curl will re-send the following request using the same unmodified method.&lt;br /&gt;
&lt;br /&gt;
              You can tell curl to not change POST requests to GET after a 30x response by using the dedicated options for that: --post301, --post302 and --post303.&lt;br /&gt;
&lt;br /&gt;
              The method set with -X, --request overrides the method curl would otherwise select to use.&lt;br /&gt;
&lt;br /&gt;
              Providing -L, --location multiple times has no extra effect.  Disable it again with --no-location.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --login-options &amp;lt;options&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP) Specify the login options to use during server authentication.&lt;br /&gt;
&lt;br /&gt;
              You can use login options to specify protocol specific options that may be used during authentication. At present only IMAP, POP3 and SMTP support login options. For  more  information  about&lt;br /&gt;
              login options please see RFC 2384, RFC 5092 and IETF draft draft-earhart-url-smtp-00.txt&lt;br /&gt;
&lt;br /&gt;
              If --login-options is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --login-options &#039;AUTH=*&#039; imap://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-auth &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address. This will be used to specify the authentication address (identity) of a submitted message that is being relayed to another server.&lt;br /&gt;
&lt;br /&gt;
              If --mail-auth is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-auth user@example.come -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-from.&lt;br /&gt;
&lt;br /&gt;
       --mail-from &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address that the given mail should get sent from.&lt;br /&gt;
&lt;br /&gt;
              If --mail-from is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-from user@example.com -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-auth.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt-allowfails&lt;br /&gt;
              (SMTP) When sending data to multiple recipients, by default curl will abort SMTP conversation if at least one of the recipients causes RCPT TO command to return an error.&lt;br /&gt;
&lt;br /&gt;
              The default behavior can be changed by passing --mail-rcpt-allowfails command-line option which will make curl ignore errors and proceed with the remaining valid recipients.&lt;br /&gt;
&lt;br /&gt;
              If all recipients trigger RCPT TO failures and this flag is specified, curl will still abort the SMTP conversation and return the error received from to the last RCPT TO command.&lt;br /&gt;
&lt;br /&gt;
              Providing --mail-rcpt-allowfails multiple times has no extra effect.  Disable it again with --no-mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt. Added in 7.69.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single email address, user name or mailing list name. Repeat this option several times to send to multiple recipients.&lt;br /&gt;
&lt;br /&gt;
              When performing an address verification (VRFY command), the recipient should be specified as the user name or user name and domain (as per Section 3.5 of RFC5321). (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              When performing a mailing list expand (EXPN command), the recipient should be specified using the mailing list name, such as &amp;quot;Friends&amp;quot; or &amp;quot;London-Office&amp;quot;.  (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              --mail-rcpt can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt user@example.net smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
       -M, --manual&lt;br /&gt;
              Manual. Display the huge help text.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --manual&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --libcurl and --trace.&lt;br /&gt;
&lt;br /&gt;
       --max-filesize &amp;lt;bytes&amp;gt;&lt;br /&gt;
              (FTP HTTP MQTT) Specify the maximum size (in bytes) of a file to download. If the file requested is larger than this value, the transfer will not start and curl will return with exit code 63.&lt;br /&gt;
&lt;br /&gt;
              A  size  modifier may be used. For example, Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or &#039;G&#039; makes it gigabytes. Examples: 200K, 3m and&lt;br /&gt;
              1G. (Added in 7.58.0)&lt;br /&gt;
&lt;br /&gt;
              NOTE: The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit.   If  --max-file‐&lt;br /&gt;
              size is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-filesize 100K https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --max-redirs &amp;lt;num&amp;gt;&lt;br /&gt;
              (HTTP) Set maximum number of redirections to follow. When -L, --location is used, to prevent curl from following too many redirects, by default, the limit is set to 50 redirects. Set this op‐&lt;br /&gt;
              tion to -1 to make it unlimited.&lt;br /&gt;
&lt;br /&gt;
              If --max-redirs is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-redirs 3 --location https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -L, --location.&lt;br /&gt;
&lt;br /&gt;
       -m, --max-time &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow each transfer to take.  This is useful for preventing your batch jobs from hanging for hours due to slow networks or links going  down.   Since  7.32.0,&lt;br /&gt;
              this option accepts decimal values, but the actual timeout will decrease in accuracy as the specified timeout increases in decimal precision.&lt;br /&gt;
&lt;br /&gt;
              If you enable retrying the transfer (--retry) then the maximum time counter is reset each time the transfer is retried. You can use --retry-max-time to limit the retry time.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If -m, --max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --max-time 10 https://example.com&lt;br /&gt;
               curl --max-time 2.92 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout and --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --metalink&lt;br /&gt;
              This option was previously used to specify a metalink resource. Metalink support has been disabled in curl since 7.78.0 for security reasons.&lt;br /&gt;
&lt;br /&gt;
              If --metalink is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --metalink file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel.&lt;br /&gt;
&lt;br /&gt;
       --negotiate&lt;br /&gt;
              (HTTP) Enables Negotiate (SPNEGO) authentication.&lt;br /&gt;
&lt;br /&gt;
              This option requires a library built with GSS-API or SSPI support. Use -V, --version to see if your curl supports GSS-API/SSPI or SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              When  using  this  option,  you  must also provide a fake -u, --user option to activate the authentication code properly. Sending a &#039;-u :&#039; is enough as the user name and password from the -u,&lt;br /&gt;
              --user option are not actually used.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --negotiate -u : https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm, --anyauth and --proxy-negotiate.&lt;br /&gt;
&lt;br /&gt;
       --netrc-file &amp;lt;filename&amp;gt;&lt;br /&gt;
              This option is similar to -n, --netrc, except that you provide the path (absolute or relative) to the netrc file that curl should use. You can only specify one netrc file per invocation.&lt;br /&gt;
&lt;br /&gt;
              It will abide by --netrc-optional if specified.&lt;br /&gt;
&lt;br /&gt;
              If --netrc-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-file netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc, -u, --user and -K, --config. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       --netrc-optional&lt;br /&gt;
              Similar to -n, --netrc, but this option makes the .netrc usage optional and not mandatory as the -n, --netrc option does.&lt;br /&gt;
&lt;br /&gt;
              Providing --netrc-optional multiple times has no extra effect.  Disable it again with --no-netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-optional https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       -n, --netrc&lt;br /&gt;
              Makes curl scan the .netrc (_netrc on Windows) file in the user&#039;s home directory for login name and password. This is typically used for FTP on Unix. If used with HTTP, curl will enable  user&lt;br /&gt;
              authentication.  See  netrc(5)  and ftp(1) for details on the file format. Curl will not complain if that file does not have the right permissions (it should be neither world- nor group-read‐&lt;br /&gt;
              able). The environment variable &amp;quot;HOME&amp;quot; is used to find the home directory.&lt;br /&gt;
&lt;br /&gt;
              A quick and simple example of how to setup a .netrc to allow curl to FTP to the machine host.domain.com with user name &#039;myself&#039; and password &#039;secret&#039; could look similar to:&lt;br /&gt;
&lt;br /&gt;
               machine host.domain.com&lt;br /&gt;
               login myself&lt;br /&gt;
               password secret&lt;br /&gt;
&lt;br /&gt;
              Providing -n, --netrc multiple times has no extra effect.  Disable it again with --no-netrc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file, -K, --config and -u, --user. This option is mutually exclusive to --netrc-file and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
       -:, --next&lt;br /&gt;
              Tells curl to use a separate operation for the following URL and associated options. This allows you to send several URL requests, each with their own specific options, for example,  such  as&lt;br /&gt;
              different user names or custom requests for each.&lt;br /&gt;
&lt;br /&gt;
              -:,  --next  will reset all local options and only global ones will have their values survive over to the operation following the -:, --next instruction. Global options include -v, --verbose,&lt;br /&gt;
              --trace, --trace-ascii and --fail-early.&lt;br /&gt;
&lt;br /&gt;
              For example, you can do both a GET and a POST in a single command line:&lt;br /&gt;
&lt;br /&gt;
               curl www1.example.com --next -d postthis www2.example.com&lt;br /&gt;
&lt;br /&gt;
              -:, --next can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl https://example.com --next -d postthis www2.example.com&lt;br /&gt;
               curl -I https://example.com --next https://example.net/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and -K, --config. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-alpn&lt;br /&gt;
              (HTTPS) Disable the ALPN TLS extension. ALPN is enabled by default if libcurl was built with an SSL library that supports ALPN. ALPN is used by a libcurl that  supports  HTTP/2  to  negotiate&lt;br /&gt;
              HTTP/2 support with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-alpn multiple times has no extra effect.  Disable it again with --alpn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-alpn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-npn and --http2. --no-alpn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       -N, --no-buffer&lt;br /&gt;
              Disables  the  buffering of the output stream. In normal work situations, curl will use a standard buffered output stream that will have the effect that it will output the data in chunks, not&lt;br /&gt;
              necessarily exactly when the data arrives.  Using this option will disable that buffering.&lt;br /&gt;
&lt;br /&gt;
              Providing -N, --no-buffer multiple times has no extra effect.  Disable it again with --buffer.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-buffer https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -#, --progress-bar.&lt;br /&gt;
&lt;br /&gt;
       --no-clobber&lt;br /&gt;
              When used in conjunction with the -o, --output, -J, --remote-header-name, -O, --remote-name, or --remote-name-all options, curl avoids overwriting files that already exist. Instead, a dot and&lt;br /&gt;
              a number gets appended to the name of the file that would be created, up to filename.100 after which it will not create any file.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented.  You can thus use --clobber to enforce the clobbering, even if -J, --remote-header-name is specified.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-clobber multiple times has no extra effect.  Disable it again with --clobber.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-clobber --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output and -O, --remote-name. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --no-keepalive&lt;br /&gt;
              Disables the use of keepalive messages on the TCP connection. curl otherwise enables them by default.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --keepalive to enforce keepalive.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-keepalive multiple times has no extra effect.  Disable it again with --keepalive.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-keepalive https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --keepalive-time.&lt;br /&gt;
&lt;br /&gt;
       --no-npn&lt;br /&gt;
              (HTTPS) In curl 7.86.0 and later, curl never uses NPN.&lt;br /&gt;
&lt;br /&gt;
              Disable  the NPN TLS extension. NPN is enabled by default if libcurl was built with an SSL library that supports NPN. NPN is used by a libcurl that supports HTTP/2 to negotiate HTTP/2 support&lt;br /&gt;
              with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-npn multiple times has no extra effect.  Disable it again with --npn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-npn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-alpn and --http2. --no-npn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-progress-meter&lt;br /&gt;
              Option to switch off the progress meter output without muting or otherwise affecting warning and informational messages like -s, --silent does.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --progress-meter to enable the progress meter again.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-progress-meter multiple times has no extra effect.  Disable it again with --progress-meter.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-progress-meter -o store https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent. Added in 7.67.0.&lt;br /&gt;
&lt;br /&gt;
       --no-sessionid&lt;br /&gt;
              (TLS) Disable curl&#039;s use of SSL session-ID caching. By default all transfers are done using the cache. Note that while nothing should ever get hurt by attempting  to  reuse  SSL  session-IDs,&lt;br /&gt;
              there seem to be broken SSL implementations in the wild that may require you to disable this in order for you to succeed.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --sessionid to enforce session-ID caching.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-sessionid multiple times has no extra effect.  Disable it again with --sessionid.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-sessionid https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --noproxy &amp;lt;no-proxy-list&amp;gt;&lt;br /&gt;
              Comma-separated  list  of hosts for which not to use a proxy, if one is specified. The only wildcard is a single * character, which matches all hosts, and effectively disables the proxy. Each&lt;br /&gt;
              name in this list is matched as either a domain which contains the hostname, or the hostname itself. For example, local.com would match local.com, local.com:80,  and  www.local.com,  but  not&lt;br /&gt;
              www.notlocal.com.&lt;br /&gt;
&lt;br /&gt;
              Since 7.53.0, This option overrides the environment variables that disable the proxy (&#039;no_proxy&#039; and &#039;NO_PROXY&#039;). If there&#039;s an environment variable disabling a proxy, you can set the noproxy&lt;br /&gt;
              list to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses specified to this option can be provided using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use  in  the&lt;br /&gt;
              comparison. For example &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --noproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --noproxy &amp;quot;www.example&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --ntlm-wb&lt;br /&gt;
              (HTTP) Enables NTLM much in the style --ntlm does, but hand over the authentication to the separate binary ntlmauth application that is executed when needed.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm-wb multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm-wb -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ntlm and --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
       --ntlm (HTTP)  Enables NTLM authentication. The NTLM authentication method was designed by Microsoft and is used by IIS web servers. It is a proprietary protocol, reverse-engineered by clever people&lt;br /&gt;
              and implemented in curl based on their efforts. This kind of behavior should not be endorsed, you should encourage everyone who uses NTLM to switch to a public and  documented  authentication&lt;br /&gt;
              method instead, such as Digest.&lt;br /&gt;
&lt;br /&gt;
              If you want to enable NTLM for your proxy authentication, then use --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ntlm. --ntlm requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --basic and --negotiate and --digest and --anyauth.&lt;br /&gt;
&lt;br /&gt;
       --oauth2-bearer &amp;lt;token&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP HTTP) Specify the Bearer Token for OAUTH 2.0 server authentication. The Bearer Token is used in conjunction with the user name which can be specified as part of the --url&lt;br /&gt;
              or -u, --user options.&lt;br /&gt;
&lt;br /&gt;
              The Bearer Token and user name are formatted according to RFC 6750.&lt;br /&gt;
&lt;br /&gt;
              If --oauth2-bearer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --oauth2-bearer &amp;quot;mF_9.B5f-4.1JqM&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm and --digest. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --output-dir &amp;lt;dir&amp;gt;&lt;br /&gt;
              This option specifies the directory in which files should be stored, when -O, --remote-name or -o, --output are used.&lt;br /&gt;
&lt;br /&gt;
              The given output directory is used for all URLs and output options on the command line, up until the first -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If the specified target directory does not exist, the operation will fail unless --create-dirs is also used.&lt;br /&gt;
&lt;br /&gt;
              If --output-dir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --output-dir &amp;quot;tmp&amp;quot; -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -J, --remote-header-name. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       -o, --output &amp;lt;file&amp;gt;&lt;br /&gt;
              Write output to &amp;lt;file&amp;gt; instead of stdout. If you are using {} or [] to fetch multiple documents, you should quote the URL and you can use &#039;#&#039; followed by a number  in  the  &amp;lt;file&amp;gt;  specifier.&lt;br /&gt;
              That variable will be replaced with the current string for the URL being fetched. Like in:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              or use several variables like:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have. For example, if you specify two URLs on the same command line, you can use it like this:&lt;br /&gt;
&lt;br /&gt;
                curl -o aa example.com -o bb example.net&lt;br /&gt;
&lt;br /&gt;
              and the order of the -o options and the URLs does not matter, just that the first -o is for the first URL and so on, so the above command line can also be written as&lt;br /&gt;
&lt;br /&gt;
                curl example.com example.net -o aa -o bb&lt;br /&gt;
&lt;br /&gt;
              See also the --create-dirs option to create the local directories dynamically. Specifying the output as &#039;-&#039; (a single dash) will force the output to be done to stdout.&lt;br /&gt;
&lt;br /&gt;
              To suppress response bodies, you can redirect output to /dev/null:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o /dev/null&lt;br /&gt;
&lt;br /&gt;
              Or for Windows use nul:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o nul&lt;br /&gt;
&lt;br /&gt;
              -o, --output can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -o file https://example.com&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
               curl -o file https://example.com -o file2 https://example.net&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name, --remote-name-all and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       --parallel-immediate&lt;br /&gt;
              When  doing  parallel transfers, this option will instruct curl that it should rather prefer opening up more connections in parallel at once rather than waiting to see if new transfers can be&lt;br /&gt;
              added as multiplexed streams on another connection.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --parallel-immediate multiple times has no extra effect.  Disable it again with --no-parallel-immediate.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and --parallel-max. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --parallel-max &amp;lt;num&amp;gt;&lt;br /&gt;
              When asked to do parallel transfers, using -Z, --parallel, this option controls the maximum amount of transfers to do simultaneously.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              The default is 50.&lt;br /&gt;
&lt;br /&gt;
              If --parallel-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-max 100 -Z https://example.com ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       -Z, --parallel&lt;br /&gt;
              Makes curl perform its transfers in parallel as compared to the regular serial manner.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -Z, --parallel multiple times has no extra effect.  Disable it again with --no-parallel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -v, --verbose. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              (SSH TLS) Passphrase for the private key.&lt;br /&gt;
&lt;br /&gt;
              If --pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pass secret --key file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --path-as-is&lt;br /&gt;
              Tell curl to not handle sequences of /../ or /./ in the given URL path. Normally curl will squash or merge them according to standards but with this option set you tell it not to do that.&lt;br /&gt;
&lt;br /&gt;
              Providing --path-as-is multiple times has no extra effect.  Disable it again with --no-path-as-is.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --path-as-is https://example.com/../../etc/passwd&lt;br /&gt;
&lt;br /&gt;
              See also --request-target. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified public key file (or hashes) to verify the peer. This can be a path to a file which contains a single public key in PEM or DER format, or  any  number  of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When  negotiating  a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match the public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              PEM/DER support:&lt;br /&gt;
&lt;br /&gt;
              7.39.0: OpenSSL, GnuTLS and GSKit&lt;br /&gt;
&lt;br /&gt;
              7.43.0: NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              sha256 support:&lt;br /&gt;
&lt;br /&gt;
              7.44.0: OpenSSL, GnuTLS, NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              Other SSL backends not supported.&lt;br /&gt;
&lt;br /&gt;
              If --pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256. Added in 7.39.0.&lt;br /&gt;
&lt;br /&gt;
       --post301&lt;br /&gt;
              (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST requests into GET requests when following a 301 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl  does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post301 multiple times has no extra effect.  Disable it again with --no-post301.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post301 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post302&lt;br /&gt;
              (HTTP)  Tells curl to respect RFC 7231/6.4.3 and not convert POST requests into GET requests when following a 302 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post302 multiple times has no extra effect.  Disable it again with --no-post302.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post302 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post301, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post303&lt;br /&gt;
              (HTTP) Tells curl to violate RFC 7231/6.4.4 and not convert POST requests into GET requests when following 303 redirections. A server may require a POST to remain a POST after a 303 redirect‐&lt;br /&gt;
              ion. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post303 multiple times has no extra effect.  Disable it again with --no-post303.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post303 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post301 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --preproxy [protocol://]host[:port]&lt;br /&gt;
              Use  the  specified SOCKS proxy before connecting to an HTTP or HTTPS -x, --proxy. In such a case curl first connects to the SOCKS proxy and then connects (through SOCKS) to the HTTP or HTTPS&lt;br /&gt;
              proxy. Hence pre proxy.&lt;br /&gt;
&lt;br /&gt;
              The pre proxy string should be specified with a protocol:// prefix to specify alternative proxy protocols. Use socks4://, socks4a://, socks5:// or socks5h:// to  request  the  specific  SOCKS&lt;br /&gt;
              version to be used. No protocol specified will make curl default to SOCKS4.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              If --preproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --preproxy socks5://proxy.example -x http://http.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --socks5. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -#, --progress-bar&lt;br /&gt;
              Make curl display transfer progress as a simple progress bar instead of the standard, more informational, meter.&lt;br /&gt;
&lt;br /&gt;
              This  progress  bar  draws a single line of &#039;#&#039; characters across the screen and shows a percentage if the transfer size is known. For transfers without a known size, there will be space ship&lt;br /&gt;
              (-=o=-) that moves back and forth but only while data is being transferred, with a set of flying hash sign symbols on top.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -#, --progress-bar multiple times has no extra effect.  Disable it again with --no-progress-bar.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -# -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --styled-output.&lt;br /&gt;
&lt;br /&gt;
       --proto-default &amp;lt;protocol&amp;gt;&lt;br /&gt;
              Tells curl to use protocol for any URL missing a scheme name.&lt;br /&gt;
&lt;br /&gt;
              An unknown or unsupported protocol causes error CURLE_UNSUPPORTED_PROTOCOL (1).&lt;br /&gt;
&lt;br /&gt;
              This option does not change the default proxy protocol (http).&lt;br /&gt;
&lt;br /&gt;
              Without this option set, curl guesses protocol based on the host name, see --url for details.&lt;br /&gt;
&lt;br /&gt;
              If --proto-default is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-default https ftp.example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto and --proto-redir. Added in 7.45.0.&lt;br /&gt;
&lt;br /&gt;
       --proto-redir &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use on redirect. Protocols denied by --proto are not overridden by this option. See --proto for how protocols are represented.&lt;br /&gt;
&lt;br /&gt;
              Example, allow only HTTP and HTTPS on redirect:&lt;br /&gt;
&lt;br /&gt;
               curl --proto-redir -all,http,https http://example.com&lt;br /&gt;
&lt;br /&gt;
              By default curl will only allow HTTP, HTTPS, FTP and FTPS on redirect (since 7.65.2). Specifying all or +all enables all protocols on redirects, which is not good for security.&lt;br /&gt;
&lt;br /&gt;
              If --proto-redir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-redir =http,https https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto.&lt;br /&gt;
&lt;br /&gt;
       --proto &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use for transfers. Protocols are evaluated left to right, are comma separated, and are each a protocol name or &#039;all&#039;, optionally prefixed by zero  or&lt;br /&gt;
              more modifiers. Available modifiers are:&lt;br /&gt;
&lt;br /&gt;
              +  Permit this protocol in addition to protocols already permitted (this is the default if no modifier is used).&lt;br /&gt;
&lt;br /&gt;
              -  Deny this protocol, removing it from the list of protocols already permitted.&lt;br /&gt;
&lt;br /&gt;
              =  Permit only this protocol (ignoring the list already permitted), though subject to later modification by subsequent entries in the comma separated list.&lt;br /&gt;
&lt;br /&gt;
              For example:&lt;br /&gt;
&lt;br /&gt;
              --proto -ftps  uses the default protocols, but disables ftps&lt;br /&gt;
&lt;br /&gt;
              --proto -all,https,+http&lt;br /&gt;
                             only enables http and https&lt;br /&gt;
&lt;br /&gt;
              --proto =http,https&lt;br /&gt;
                             also only enables http and https&lt;br /&gt;
&lt;br /&gt;
              Unknown  and  disabled protocols produce a warning. This allows scripts to safely rely on being able to disable potentially dangerous protocols, without relying upon support for that protocol&lt;br /&gt;
              being built into curl to avoid an error.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times, in which case the effect is the same as concatenating the protocols into one instance of the option.&lt;br /&gt;
&lt;br /&gt;
              If --proto is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto =http,https,sftp https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto-redir and --proto-default.&lt;br /&gt;
&lt;br /&gt;
       --proxy-anyauth&lt;br /&gt;
              Tells curl to pick a suitable authentication method when communicating with the given HTTP proxy. This might cause an extra request/response round-trip.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-basic and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-basic&lt;br /&gt;
              Tells curl to use HTTP Basic authentication when communicating with the given proxy. Use --basic for enabling HTTP Basic with a remote host. Basic is the default  authentication  method  curl&lt;br /&gt;
              uses with proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --cacert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cacert CA-file.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-capath, --cacert, --capath and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              Same as --capath but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-capath /local/directory -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cacert, -x, --proxy and --capath. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --cert-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert &amp;lt;cert[:passwd]&amp;gt;&lt;br /&gt;
              Same as -E, --cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert-type. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ciphers &amp;lt;list&amp;gt;&lt;br /&gt;
              Same as --ciphers but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers, --curves and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --crlfile but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-crlfile rejects.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-digest&lt;br /&gt;
              Tells curl to use HTTP Digest authentication when communicating with the given proxy. Use --digest for enabling HTTP Digest with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-digest multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP)  Extra header to include in the request when sending HTTP to a proxy. You may specify any number of extra headers. This is the equivalent option to -H, --header but is for proxy commu‐&lt;br /&gt;
              nication only like in CONNECT requests when you want a separate header sent to the proxy to what is sent to the actual remote host.&lt;br /&gt;
&lt;br /&gt;
              curl will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or  carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              Headers specified with this option will not be included in requests that curl knows will not be sent to a proxy.&lt;br /&gt;
&lt;br /&gt;
              Starting in 7.55.0, this option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times to add/replace/remove multiple headers.&lt;br /&gt;
&lt;br /&gt;
              --proxy-header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-header &amp;quot;X-First-Name: Joe&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;User-Agent: surprise&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;Host:&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-insecure&lt;br /&gt;
              Same as -k, --insecure but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-insecure multiple times has no extra effect.  Disable it again with --no-proxy-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-insecure -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and -k, --insecure. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --key-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key &amp;lt;key&amp;gt;&lt;br /&gt;
              Same as --key but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key-type and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-negotiate&lt;br /&gt;
              Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating with the given proxy. Use --negotiate for enabling HTTP Negotiate (SPNEGO) with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ntlm&lt;br /&gt;
              Tells curl to use HTTP NTLM authentication when communicating with the given proxy. Use --ntlm for enabling NTLM with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-negotiate and --proxy-anyauth.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              Same as --pass but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-key. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified public key file (or hashes) to verify the proxy. This can be a path to a file which contains a single public key in PEM or DER format, or any number of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When negotiating a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match  the  public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --proxy-pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey and -x, --proxy. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for proxy negotiation.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-service-name &amp;quot;shrubbery&amp;quot; -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --service-name and -x, --proxy. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-allow-beast&lt;br /&gt;
              Same as --ssl-allow-beast but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-proxy-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-allow-beast -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-allow-beast and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-auto-client-cert&lt;br /&gt;
              Same as --ssl-auto-client-cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-proxy-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-auto-client-cert and -x, --proxy. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS)  Specifies  which cipher suites to use in the connection to your HTTPS proxy when it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher&lt;br /&gt;
              suite details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using  the  --proxy-&lt;br /&gt;
              ciphers option.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tls13-ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --tlsauthtype but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsauthtype SRP -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Same as --tlspassword but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlspassword passwd -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Same as --tlsuser but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsuser smith -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlspassword. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsv1&lt;br /&gt;
              Same as -1, --tlsv1 but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsv1 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -U, --proxy-user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for proxy authentication.&lt;br /&gt;
&lt;br /&gt;
              If  you use a Windows SSPI-enabled curl binary and do either Negotiate or NTLM authentication then you can tell curl to select the user name and password from your environment by specifying a&lt;br /&gt;
              single colon with this option: &amp;quot;-U :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              If -U, --proxy-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-user name:pwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-pass.&lt;br /&gt;
&lt;br /&gt;
       -x, --proxy [protocol://]host[:port]&lt;br /&gt;
              Use the specified proxy.&lt;br /&gt;
&lt;br /&gt;
              The  proxy  string  can be specified with a protocol:// prefix. No protocol specified or http:// will be treated as HTTP proxy. Use socks4://, socks4a://, socks5:// or socks5h:// to request a&lt;br /&gt;
              specific SOCKS version to be used.&lt;br /&gt;
&lt;br /&gt;
              Unix domain sockets are supported for socks proxy. Set localhost for the host part. e.g. socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              HTTPS proxy support via https:// protocol prefix was added in 7.52.0 for OpenSSL, GnuTLS and NSS.&lt;br /&gt;
&lt;br /&gt;
              Unrecognized and unsupported proxy protocols cause an error since 7.52.0.  Prior versions may ignore the protocol and use http:// instead.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              This option overrides existing environment variables that set the proxy to use. If there&#039;s an environment variable setting a proxy, you can set proxy to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              All operations that are performed over an HTTP proxy will transparently be converted to HTTP. It means that certain protocol specific operations might not be available. This is not  the  case&lt;br /&gt;
              if you can tunnel through the proxy, as one with the -p, --proxytunnel option.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              The proxy host can be specified the same way as the proxy environment variables, including the protocol prefix (http://) and the embedded user + password.&lt;br /&gt;
&lt;br /&gt;
              When a proxy is used, the active FTP mode as set with -P, --ftp-port, cannot be used.&lt;br /&gt;
&lt;br /&gt;
              If -x, --proxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy http://proxy.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy1.0 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified HTTP 1.0 proxy. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              The only difference between this and the HTTP proxy option -x, --proxy, is that attempts to use CONNECT through the proxy will specify an HTTP 1.0 protocol instead of the default HTTP 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy1.0 -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --socks5 and --preproxy.&lt;br /&gt;
&lt;br /&gt;
       -p, --proxytunnel&lt;br /&gt;
              When an HTTP proxy is used -x, --proxy, this option will make curl tunnel through the proxy. The tunnel approach is made with the HTTP proxy CONNECT request and requires that the proxy allows&lt;br /&gt;
              direct connect to the remote port number curl wants to tunnel through to.&lt;br /&gt;
&lt;br /&gt;
              To suppress proxy CONNECT response headers when curl is set to output headers use --suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Providing -p, --proxytunnel multiple times has no extra effect.  Disable it again with --no-proxytunnel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxytunnel -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --pubkey &amp;lt;key&amp;gt;&lt;br /&gt;
              (SFTP SCP) Public key file name. Allows you to provide your public key in this separate file.&lt;br /&gt;
&lt;br /&gt;
              (As of 7.39.0, curl attempts to automatically extract the public key from the private key file, so passing this option is generally not required. Note that this public key extraction requires&lt;br /&gt;
              libcurl to be linked against a copy of libssh2 1.2.8 or higher that is itself linked against OpenSSL.)&lt;br /&gt;
&lt;br /&gt;
              If --pubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pubkey file.pub sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --pass.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP  SFTP)  Send  an arbitrary command to the remote FTP or SFTP server. Quote commands are sent BEFORE the transfer takes place (just after the initial PWD command in an FTP transfer, to be&lt;br /&gt;
              exact). To make commands take place after a successful transfer, prefix them with a dash &#039;-&#039;.&lt;br /&gt;
&lt;br /&gt;
              (FTP only) To make commands be sent after curl has changed the working directory, just before the file transfer command(s), prefix the command with a &#039;+&#039;. This is not performed when a  direc‐&lt;br /&gt;
              tory listing is performed.&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of commands.&lt;br /&gt;
&lt;br /&gt;
              By  default  curl will stop at first failure. To make curl continue even if the command fails, prefix the command with an asterisk (*). Otherwise, if the server returns failure for one of the&lt;br /&gt;
              commands, the entire operation will be aborted.&lt;br /&gt;
&lt;br /&gt;
              You must send syntactically correct FTP commands as RFC 959 defines to FTP servers, or one of the commands listed below to SFTP servers.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times.&lt;br /&gt;
&lt;br /&gt;
              SFTP is a binary protocol. Unlike for FTP, curl interprets SFTP quote commands itself before sending them to the server. File names may be quoted shell-style to embed spaces or special  char‐&lt;br /&gt;
              acters. Following is the list of all supported SFTP quote commands:&lt;br /&gt;
&lt;br /&gt;
              atime date file&lt;br /&gt;
                     The atime command sets the last access time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3) man page for date ex‐&lt;br /&gt;
                     pression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              chgrp group file&lt;br /&gt;
                     The chgrp command sets the group ID of the file named by the file operand to the group ID specified by the group operand. The group operand is a decimal integer group ID.&lt;br /&gt;
&lt;br /&gt;
              chmod mode file&lt;br /&gt;
                     The chmod command modifies the file mode bits of the specified file. The mode operand is an octal integer mode number.&lt;br /&gt;
&lt;br /&gt;
              chown user file&lt;br /&gt;
                     The chown command sets the owner of the file named by the file operand to the user ID specified by the user operand. The user operand is a decimal integer user ID.&lt;br /&gt;
&lt;br /&gt;
              ln source_file target_file&lt;br /&gt;
                     The ln and symlink commands create a symbolic link at the target_file location pointing to the source_file location.&lt;br /&gt;
&lt;br /&gt;
              mkdir directory_name&lt;br /&gt;
                     The mkdir command creates the directory named by the directory_name operand.&lt;br /&gt;
&lt;br /&gt;
              mtime date file&lt;br /&gt;
                     The mtime command sets the last modification time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3)  man  page  for&lt;br /&gt;
                     date expression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              pwd    The pwd command returns the absolute pathname of the current working directory.&lt;br /&gt;
&lt;br /&gt;
              rename source target&lt;br /&gt;
                     The rename command renames the file or directory named by the source operand to the destination path named by the target operand.&lt;br /&gt;
&lt;br /&gt;
              rm file&lt;br /&gt;
                     The rm command removes the file specified by the file operand.&lt;br /&gt;
&lt;br /&gt;
              rmdir directory&lt;br /&gt;
                     The rmdir command removes the directory entry specified by the directory operand, provided it is empty.&lt;br /&gt;
&lt;br /&gt;
              symlink source_file target_file&lt;br /&gt;
                     See ln.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --quote &amp;quot;DELE file&amp;quot; ftp://example.com/foo&lt;br /&gt;
&lt;br /&gt;
       See also -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --random-file &amp;lt;file&amp;gt;&lt;br /&gt;
              Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to file containing what will be considered as random data. The data may be used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --random-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --random-file rubbish https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --egd-file.&lt;br /&gt;
&lt;br /&gt;
       -r, --range &amp;lt;range&amp;gt;&lt;br /&gt;
              (HTTP FTP SFTP FILE) Retrieve a byte range (i.e. a partial document) from an HTTP/1.1, FTP or SFTP server or a local FILE. Ranges can be specified in a number of ways.&lt;br /&gt;
&lt;br /&gt;
              0-499     specifies the first 500 bytes&lt;br /&gt;
&lt;br /&gt;
              500-999   specifies the second 500 bytes&lt;br /&gt;
&lt;br /&gt;
              -500      specifies the last 500 bytes&lt;br /&gt;
&lt;br /&gt;
              9500-     specifies the bytes from offset 9500 and forward&lt;br /&gt;
&lt;br /&gt;
              0-0,-1    specifies the first and last byte only(*)(HTTP)&lt;br /&gt;
&lt;br /&gt;
              100-199,500-599&lt;br /&gt;
                        specifies two separate 100-byte ranges(*) (HTTP)&lt;br /&gt;
&lt;br /&gt;
              (*)  =  NOTE that this will cause the server to reply with a multipart response, which will be returned as-is by curl! Parsing or otherwise transforming this response is the responsibility of&lt;br /&gt;
              the caller.&lt;br /&gt;
&lt;br /&gt;
              Only digit characters (0-9) are valid in the &#039;start&#039; and &#039;stop&#039; fields of the &#039;start-stop&#039; range syntax. If a non-digit character is given in the range, the server&#039;s response will be unspeci‐&lt;br /&gt;
              fied, depending on the server&#039;s configuration.&lt;br /&gt;
&lt;br /&gt;
              You should also be aware that many HTTP/1.1 servers do not have this feature enabled, so that when you attempt to get a range, you will instead get the whole document.&lt;br /&gt;
&lt;br /&gt;
              FTP and SFTP range downloads only support the simple &#039;start-stop&#039; syntax (optionally with one of the numbers omitted). FTP use depends on the extended FTP command SIZE.&lt;br /&gt;
&lt;br /&gt;
              If -r, --range is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --range 22-44 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -C, --continue-at and -a, --append.&lt;br /&gt;
&lt;br /&gt;
       --rate &amp;lt;max request rate&amp;gt;&lt;br /&gt;
              Specify the maximum transfer frequency you allow curl to use - in number of transfer starts per time unit (sometimes called request rate). Without this option, curl will start the next trans‐&lt;br /&gt;
              fer as fast as possible.&lt;br /&gt;
&lt;br /&gt;
              If given several URLs and a transfer completes faster than the allowed rate, curl will wait until the next transfer is started to maintain the requested rate. This option has no  effect  when&lt;br /&gt;
              -Z, --parallel is used.&lt;br /&gt;
&lt;br /&gt;
              The  request  rate is provided as &amp;quot;N/U&amp;quot; where N is an integer number and U is a time unit. Supported units are &#039;s&#039; (second), &#039;m&#039; (minute), &#039;h&#039; (hour) and &#039;d&#039; /(day, as in a 24 hour unit). The&lt;br /&gt;
              default time unit, if no &amp;quot;/U&amp;quot; is provided, is number of transfers per hour.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to allow 10 requests per minute, it will not start the next request until 6 seconds have elapsed since the previous transfer was started.&lt;br /&gt;
&lt;br /&gt;
              This function uses millisecond resolution. If the allowed frequency is set more than 1000 per second, it will instead run unrestricted.&lt;br /&gt;
&lt;br /&gt;
              When retrying transfers, enabled with --retry, the separate retry delay logic is used and not this setting.&lt;br /&gt;
&lt;br /&gt;
              If --rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --rate 2/s https://example.com&lt;br /&gt;
               curl --rate 3/h https://example.com&lt;br /&gt;
               curl --rate 14/m https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate and --retry-delay. Added in 7.84.0.&lt;br /&gt;
&lt;br /&gt;
       --raw  (HTTP) When used, it disables all internal HTTP decoding of content or transfer encodings and instead makes them passed on unaltered, raw.&lt;br /&gt;
&lt;br /&gt;
              Providing --raw multiple times has no extra effect.  Disable it again with --no-raw.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --raw https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tr-encoding.&lt;br /&gt;
&lt;br /&gt;
       -e, --referer &amp;lt;URL&amp;gt;&lt;br /&gt;
              (HTTP) Sends the &amp;quot;Referrer Page&amp;quot; information to the HTTP server. This can also be set with the -H, --header flag of course. When used with -L, --location you can append  &amp;quot;;auto&amp;quot;  to  the  -e,&lt;br /&gt;
              --referer URL to make curl automatically set the previous URL when it follows a Location: header. The &amp;quot;;auto&amp;quot; string can be used alone, even if you do not set an initial -e, --referer.&lt;br /&gt;
&lt;br /&gt;
              If -e, --referer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example&amp;quot; https://example.com&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example;auto&amp;quot; -L https://example.com&lt;br /&gt;
               curl --referer &amp;quot;;auto&amp;quot; -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -H, --header.&lt;br /&gt;
&lt;br /&gt;
       -J, --remote-header-name&lt;br /&gt;
              (HTTP)  This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL. If the server-provided file name&lt;br /&gt;
              contains a path, that will be stripped off before the file name is used.&lt;br /&gt;
&lt;br /&gt;
              The file is saved in the current directory, or in the directory specified with --output-dir.&lt;br /&gt;
&lt;br /&gt;
              If the server specifies a file name and a file with that name already exists in the destination directory, it will not be overwritten and an error will occur - unless you allow  it  by  using&lt;br /&gt;
              the --clobber option. If the server does not specify a file name then this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              There&#039;s no attempt to decode %-sequences (yet) in the provided file name, so this option may provide you with rather unexpected file names.&lt;br /&gt;
&lt;br /&gt;
              This feature uses the name from the &amp;quot;filename&amp;quot; field, it does not yet support the &amp;quot;filename*&amp;quot; field (filenames with explicit character sets).&lt;br /&gt;
&lt;br /&gt;
              WARNING:  Exercise  judicious  use  of  this option, especially on Windows. A rogue server could send you the name of a DLL or other file that could be loaded automatically by Windows or some&lt;br /&gt;
              third party software.&lt;br /&gt;
&lt;br /&gt;
              Providing -J, --remote-header-name multiple times has no extra effect.  Disable it again with --no-remote-header-name.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -OJ https://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       --remote-name-all&lt;br /&gt;
              This option changes the default action for all given URLs to be dealt with as if -O, --remote-name were used for each one. So if you want to disable that for a specific  URL  after  --remote-&lt;br /&gt;
              name-all has been used, you must use &amp;quot;-o -&amp;quot; or --no-remote-name.&lt;br /&gt;
&lt;br /&gt;
              Providing --remote-name-all multiple times has no extra effect.  Disable it again with --no-remote-name-all.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       -O, --remote-name&lt;br /&gt;
              Write output to a local file named like the remote file we get. (Only the file part of the remote file is used, the path is cut off.)&lt;br /&gt;
&lt;br /&gt;
              The file will be saved in the current working directory. If you want the file saved in a different directory, make sure you change the current working directory before invoking curl with this&lt;br /&gt;
              option or use --output-dir.&lt;br /&gt;
&lt;br /&gt;
              The remote file name to use for saving is extracted from the given URL, nothing else, and if it already exists it will be overwritten. If you want the server to be able  to  choose  the  file&lt;br /&gt;
              name refer to -J, --remote-header-name which can be used in addition to this option. If the server chooses a file name and that name already exists it will not be overwritten.&lt;br /&gt;
&lt;br /&gt;
              There is no URL decoding done on the file name. If it has %20 or other URL encoded parts of the name, they will end up as-is as file name.&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have.&lt;br /&gt;
&lt;br /&gt;
              -O, --remote-name can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -O https://example.com/filename&lt;br /&gt;
&lt;br /&gt;
              See also --remote-name-all, --output-dir and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       -R, --remote-time&lt;br /&gt;
              When used, this will make curl attempt to figure out the timestamp of the remote file, and if that is available make the local file get that same timestamp.&lt;br /&gt;
&lt;br /&gt;
              Providing -R, --remote-time multiple times has no extra effect.  Disable it again with --no-remote-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-time -o foo https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -z, --time-cond.&lt;br /&gt;
&lt;br /&gt;
       --remove-on-error&lt;br /&gt;
              When curl returns an error when told to save output in a local file, this option removes that saved file before exiting. This prevents curl from leaving a partial file in the case of an error&lt;br /&gt;
              during transfer.&lt;br /&gt;
&lt;br /&gt;
              If the output is not a file, this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              Providing --remove-on-error multiple times has no extra effect.  Disable it again with --no-remove-on-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remove-on-error -o output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --request-target &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Tells curl to use an alternative &amp;quot;target&amp;quot; (path) instead of using the path as provided in the URL. Particularly useful when wanting to issue HTTP  requests  without  leading  slash  or&lt;br /&gt;
              other data that does not follow the regular URL pattern, like &amp;quot;OPTIONS *&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --request-target is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --request-target &amp;quot;*&amp;quot; -X OPTIONS https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -X, --request. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       -X, --request &amp;lt;method&amp;gt;&lt;br /&gt;
              (HTTP)  Specifies  a  custom  request  method to use when communicating with the HTTP server. The specified request method will be used instead of the method otherwise used (which defaults to&lt;br /&gt;
              GET). Read the HTTP 1.1 specification for details and explanations. Common additional HTTP requests include PUT and DELETE, but related technologies like WebDAV offers  PROPFIND,  COPY,  MOVE&lt;br /&gt;
              and more.&lt;br /&gt;
&lt;br /&gt;
              Normally you do not need this option. All sorts of GET, HEAD, POST and PUT requests are rather invoked by using dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
              This  option  only  changes  the actual word used in the HTTP request, it does not alter the way curl behaves. So for example if you want to make a proper HEAD request, using -X HEAD will not&lt;br /&gt;
              suffice. You need to use the -I, --head option.&lt;br /&gt;
&lt;br /&gt;
              The method string you set with -X, --request will be used for all requests, which if you for example use -L, --location may cause unintended side-effects when curl  does  not  change  request&lt;br /&gt;
              method according to the HTTP 30x response codes - and similar.&lt;br /&gt;
&lt;br /&gt;
              (FTP) Specifies a custom FTP command to use instead of LIST when doing file lists with FTP.&lt;br /&gt;
&lt;br /&gt;
              (POP3) Specifies a custom POP3 command to use instead of LIST or RETR.&lt;br /&gt;
&lt;br /&gt;
              (IMAP) Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)&lt;br /&gt;
&lt;br /&gt;
              (SMTP) Specifies a custom SMTP command to use instead of HELP or VRFY. (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              If -X, --request is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -X &amp;quot;DELETE&amp;quot; https://example.com&lt;br /&gt;
               curl -X NLST ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --request-target.&lt;br /&gt;
&lt;br /&gt;
       --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;&lt;br /&gt;
              Provide  a  custom  address  for a specific host and port pair. Using this, you can make the curl requests(s) use a specified address and prevent the otherwise normally resolved address to be&lt;br /&gt;
              used. Consider it a sort of /etc/hosts alternative provided on the command line. The port number should be the number used for the specific protocol the host will be used for.  It  means  you&lt;br /&gt;
              need several entries if you want to provide address for the same host but different ports.&lt;br /&gt;
&lt;br /&gt;
              By  specifying &#039;*&#039; as host you can tell curl to resolve any host and specific port pair to the specified address. Wildcard is resolved last so any --resolve with a specific host and port will&lt;br /&gt;
              be used first.&lt;br /&gt;
&lt;br /&gt;
              The provided address set by this option will be used even if -4, --ipv4 or -6, --ipv6 is set to make curl use another IP version.&lt;br /&gt;
&lt;br /&gt;
              By prefixing the host with a &#039;+&#039; you can make the entry time out after curl&#039;s default timeout (1 minute). Note that this will only make sense for long running parallel transfers with a lot of&lt;br /&gt;
              files. In such cases, if this option is used curl will try to resolve the host as it normally would once the timeout has expired.&lt;br /&gt;
&lt;br /&gt;
              Support for providing the IP address within [brackets] was added in 7.57.0.&lt;br /&gt;
&lt;br /&gt;
              Support for providing multiple IP addresses per entry was added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
              Support for resolving with wildcard was added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
              Support for the &#039;+&#039; prefix was was added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
              This option can be used many times to add many host names to resolve.&lt;br /&gt;
&lt;br /&gt;
              --resolve can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --resolve example.com:443:127.0.0.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-to and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --retry-all-errors&lt;br /&gt;
              Retry on any error. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              This  option  is the &amp;quot;sledgehammer&amp;quot; of retrying. Do not use this option by default (eg in curlrc), there may be unintended consequences such as sending or receiving duplicate data. Do not use&lt;br /&gt;
              with redirected input or output. You&#039;d be much better off handling your unique problems in shell script. Please read the example below.&lt;br /&gt;
&lt;br /&gt;
              WARNING: For server compatibility curl attempts to retry failed flaky transfers as close as possible to how they were started, but this is not possible with redirected input  or  output.  For&lt;br /&gt;
              example, before retrying it removes output data from a failed partial transfer that was written to an output file. However this is not true of data redirected to a | pipe or &amp;gt; file, which are&lt;br /&gt;
              not reset. We strongly suggest you do not parse or record output via redirect in combination with this option, since you may receive duplicate data.&lt;br /&gt;
&lt;br /&gt;
              By default curl will not error on an HTTP response code that indicates an HTTP error, if the transfer was successful. For example, if a server replies 404 Not Found and the reply is fully re‐&lt;br /&gt;
              ceived  then that is not an error. When --retry is used then curl will retry on some HTTP response codes that indicate transient HTTP errors, but that does not include most 4xx response codes&lt;br /&gt;
              such as 404. If you want to retry on all response codes that indicate HTTP errors (4xx and 5xx) then combine with -f, --fail.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-all-errors multiple times has no extra effect.  Disable it again with --no-retry-all-errors.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 5 --retry-all-errors https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry. Added in 7.71.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-connrefused&lt;br /&gt;
              In addition to the other conditions, consider ECONNREFUSED as a transient error too for --retry. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-connrefused multiple times has no extra effect.  Disable it again with --no-retry-connrefused.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-connrefused --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry and --retry-all-errors. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-delay &amp;lt;seconds&amp;gt;&lt;br /&gt;
              Make curl sleep this amount of time before each retry when a transfer has failed with a transient error (it changes the default backoff time algorithm between retries). This  option  is  only&lt;br /&gt;
              interesting if --retry is also used. Setting this delay to zero will make curl use the default backoff time.&lt;br /&gt;
&lt;br /&gt;
              If --retry-delay is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-delay 5 --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry-max-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              The retry timer is reset before the first transfer attempt. Retries will be done as usual (see --retry) as long as the timer has not reached this given limit. Notice that if the timer has not&lt;br /&gt;
              reached the limit, the request will be made and while performing, it may take longer than this given time period. To limit a single request&#039;s maximum time, use -m, --max-time. Set this option&lt;br /&gt;
              to zero to not timeout retries.&lt;br /&gt;
&lt;br /&gt;
              If --retry-max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-max-time 30 --retry 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry &amp;lt;num&amp;gt;&lt;br /&gt;
              If a transient error is returned when curl tries to perform a transfer, it will retry this number of times before giving up. Setting the number to 0 makes curl do no retries (which is the de‐&lt;br /&gt;
              fault). Transient error means either: a timeout, an FTP 4xx response code or an HTTP 408, 429, 500, 502, 503 or 504 response code.&lt;br /&gt;
&lt;br /&gt;
              When curl is about to retry a transfer, it will first wait one second and then for all forthcoming retries it will double the waiting time until it reaches 10 minutes which then will  be  the&lt;br /&gt;
              delay between the rest of the retries. By using --retry-delay you disable this exponential backoff algorithm. See also --retry-max-time to limit the total time allowed for retries.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, curl will comply with the Retry-After: response header if one was present to know when to issue the next retry.&lt;br /&gt;
&lt;br /&gt;
              If --retry is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --sasl-authzid &amp;lt;identity&amp;gt;&lt;br /&gt;
              Use this authorization identity (authzid), during SASL PLAIN authentication, in addition to the authentication identity (authcid) as specified by -u, --user.&lt;br /&gt;
&lt;br /&gt;
              If  the option is not specified, the server will derive the authzid from the authcid, but if specified, and depending on the server implementation, it may be used to access another user&#039;s in‐&lt;br /&gt;
              box, that the user has been granted access to, or a shared mailbox for example.&lt;br /&gt;
&lt;br /&gt;
              If --sasl-authzid is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-authzid zid imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --login-options. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --sasl-ir&lt;br /&gt;
              Enable initial response in SASL authentication.&lt;br /&gt;
&lt;br /&gt;
              Providing --sasl-ir multiple times has no extra effect.  Disable it again with --no-sasl-ir.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-ir imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --sasl-authzid. Added in 7.31.0.&lt;br /&gt;
&lt;br /&gt;
       --service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              Examples: --negotiate --service-name sockd would use sockd/server-name.&lt;br /&gt;
&lt;br /&gt;
              If --service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --service-name sockd/server https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --negotiate and --proxy-service-name. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       -S, --show-error&lt;br /&gt;
              When used with -s, --silent, it makes curl show an error message if it fails.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -S, --show-error multiple times has no extra effect.  Disable it again with --no-show-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --show-error --silent https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       -s, --silent&lt;br /&gt;
              Silent or quiet mode. Do not show progress meter or error messages. Makes Curl mute. It will still output the data you ask for, potentially even to the terminal/stdout unless you redirect it.&lt;br /&gt;
&lt;br /&gt;
              Use -S, --show-error in addition to this option to disable progress meter but still show error messages.&lt;br /&gt;
&lt;br /&gt;
              Providing -s, --silent multiple times has no extra effect.  Disable it again with --no-silent.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -s https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --stderr and --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       --socks4 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4 proxy. If the port number is not specified, it is assumed at port 1080. Using this socket type make curl resolve the host name and  passing  the  address  on  to  the&lt;br /&gt;
              proxy.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4 proxy with -x, --proxy using a socks4:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4a, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks4a &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4a proxy. If the port number is not specified, it is assumed at port 1080. This asks the proxy to resolve the host name.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4a://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4a proxy with -x, --proxy using a socks4a:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4a is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4a hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks5-basic&lt;br /&gt;
              Tells  curl  to  use username/password authentication when connecting to a SOCKS5 proxy.  The username/password authentication is enabled by default.  Use --socks5-gssapi to force GSS-API au‐&lt;br /&gt;
              thentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-basic --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-nec&lt;br /&gt;
              As part of the GSS-API negotiation a protection mode is negotiated. RFC 1961 says in section 4.3/4.4 it should be protected,  but  the  NEC  reference  implementation  does  not.  The  option&lt;br /&gt;
              --socks5-gssapi-nec allows the unprotected exchange of the protection mode negotiation.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi-nec multiple times has no extra effect.  Disable it again with --no-socks5-gssapi-nec.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-service &amp;lt;name&amp;gt;&lt;br /&gt;
              The default service name for a socks server is rcmd/server-fqdn. This option allows you to change it.&lt;br /&gt;
&lt;br /&gt;
              Examples:  --socks5  proxy-name  --socks5-gssapi-service sockd would use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-service sockd/real-name would use sockd/real-name for cases where&lt;br /&gt;
              the proxy-name does not match the principal name.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-gssapi-service is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi&lt;br /&gt;
              Tells curl to use GSS-API authentication when connecting to a SOCKS5 proxy.  The GSS-API authentication is enabled by default (if curl is compiled with GSS-API support).   Use  --socks5-basic&lt;br /&gt;
              to force username/password authentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi multiple times has no extra effect.  Disable it again with --no-socks5-gssapi.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-hostname &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 hostname proxy with -x, --proxy using a socks5h:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-hostname is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-hostname proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       --socks5 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy - but resolve the host name locally. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 proxy with -x, --proxy using a socks5:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              This option (as well as --socks4) does not work with IPV6, FTPS or LDAP.&lt;br /&gt;
&lt;br /&gt;
              If --socks5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5 proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5-hostname and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       -Y, --speed-limit &amp;lt;speed&amp;gt;&lt;br /&gt;
              If a transfer is slower than this given speed (in bytes per second) for speed-time seconds it gets aborted. speed-time is set with -y, --speed-time and is 30 if not set.&lt;br /&gt;
&lt;br /&gt;
              If -Y, --speed-limit is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -y, --speed-time, --limit-rate and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       -y, --speed-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              If  a  transfer runs slower than speed-limit bytes per second during a speed-time period, the transfer is aborted. If speed-time is used, the default speed-limit will be 1 unless set with -Y,&lt;br /&gt;
              --speed-limit.&lt;br /&gt;
&lt;br /&gt;
              This option controls transfers (in both directions) but will not affect slow connects etc. If this is a concern for you, try the --connect-timeout option.&lt;br /&gt;
&lt;br /&gt;
              If -y, --speed-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Y, --speed-limit and --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --ssl-allow-beast&lt;br /&gt;
              This option tells curl to not work around a security flaw in the SSL3 and TLS1.0 protocols known as BEAST.  If this option is not used, the SSL layer may use workarounds known to cause inter‐&lt;br /&gt;
              operability problems with some older SSL implementations.&lt;br /&gt;
&lt;br /&gt;
              WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-allow-beast https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-allow-beast and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-auto-client-cert&lt;br /&gt;
              Tell  libcurl  to  automatically  locate  and use a client certificate for authentication, when requested by the server. This option is only supported for Schannel (the native Windows SSL li‐&lt;br /&gt;
              brary). Prior to 7.77.0 this was the default behavior in libcurl with Schannel. Since the server can request any certificate that supports client authentication in the OS certificate store it&lt;br /&gt;
              could be a privacy violation and unexpected.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-auto-client-cert https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-auto-client-cert. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-no-revoke&lt;br /&gt;
              (Schannel) This option tells curl to disable certificate revocation checks.  WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-no-revoke multiple times has no extra effect.  Disable it again with --no-ssl-no-revoke.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-no-revoke https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile. Added in 7.44.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-reqd&lt;br /&gt;
              (FTP IMAP POP3 SMTP LDAP) Require SSL/TLS for the connection. Terminates the connection if the transfer cannot be upgraded to use SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and rejected by the generic ldap backend if explicit TLS is required.&lt;br /&gt;
&lt;br /&gt;
              This  option  is unnecessary if you use a URL scheme that in itself implies immediate and implicit use of TLS, like for FTPS, IMAPS, POP3S, SMTPS and LDAPS. Such transfers will always fail if&lt;br /&gt;
              the TLS handshake does not work.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-reqd multiple times has no extra effect.  Disable it again with --no-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-reqd ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-revoke-best-effort&lt;br /&gt;
              (Schannel) This option tells curl to ignore certificate revocation checks when they failed due to missing/offline distribution points for the revocation check lists.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-revoke-best-effort multiple times has no extra effect.  Disable it again with --no-ssl-revoke-best-effort.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-revoke-best-effort https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -k, --insecure. Added in 7.70.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl  (FTP IMAP POP3 SMTP LDAP) Warning: this is considered an insecure option. Consider using --ssl-reqd instead to be sure curl upgrades to a secure connection.&lt;br /&gt;
&lt;br /&gt;
              Try to use SSL/TLS for the connection. Reverts to a non-secure connection if the server does not support SSL/TLS. See also --ftp-ssl-control and --ssl-reqd for different levels of  encryption&lt;br /&gt;
              required.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and ignored by the generic ldap backend.&lt;br /&gt;
&lt;br /&gt;
              Please note that a server may close the connection if the negotiation does not succeed.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl. That option name can still be used but will be removed in a future version.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl multiple times has no extra effect.  Disable it again with --no-ssl.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl pop3://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-reqd, -k, --insecure and --ciphers.&lt;br /&gt;
&lt;br /&gt;
       -2, --sslv2&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv2, but starting in curl 7.77.0 this instruction is ignored. SSLv2 is widely considered insecure (see RFC 6176).&lt;br /&gt;
&lt;br /&gt;
              Providing -2, --sslv2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http2. -2, --sslv2 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       -3, --sslv3&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv3, but starting in curl 7.77.0 this instruction is ignored. SSLv3 is widely considered insecure (see RFC 7568).&lt;br /&gt;
&lt;br /&gt;
              Providing -3, --sslv3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -3, --sslv3 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -2, --sslv2 and -1, --tlsv1 and  --tlsv1.1  and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       --stderr &amp;lt;file&amp;gt;&lt;br /&gt;
              Redirect all writes to stderr to the specified file instead. If the file name is a plain &#039;-&#039;, it is instead written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --stderr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --stderr output.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent.&lt;br /&gt;
&lt;br /&gt;
       --styled-output&lt;br /&gt;
              Enables the automatic use of bold font styles when writing HTTP headers to the terminal. Use --no-styled-output to switch them off.&lt;br /&gt;
&lt;br /&gt;
              Styled output requires a terminal that supports bold fonts. This feature is not present on curl for Windows due to lack of this capability.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --styled-output multiple times has no extra effect.  Disable it again with --no-styled-output.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --styled-output -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -I, --head and -v, --verbose. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --suppress-connect-headers&lt;br /&gt;
              When  -p,  --proxytunnel  is used and a CONNECT request is made do not output proxy CONNECT response headers. This option is meant to be used with -D, --dump-header or -i, --include which are&lt;br /&gt;
              used to show protocol headers in the output. It has no effect on debug options such as -v, --verbose or --trace, or any statistics.&lt;br /&gt;
&lt;br /&gt;
              Providing --suppress-connect-headers multiple times has no extra effect.  Disable it again with --no-suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --suppress-connect-headers --include -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -D, --dump-header, -i, --include and -p, --proxytunnel. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-fastopen&lt;br /&gt;
              Enable use of TCP Fast Open (RFC7413).&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-fastopen multiple times has no extra effect.  Disable it again with --no-tcp-fastopen.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-fastopen https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --false-start. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-nodelay&lt;br /&gt;
              Turn on the TCP_NODELAY option. See the curl_easy_setopt(3) man page for details about this option.&lt;br /&gt;
&lt;br /&gt;
              Since 7.50.2, curl sets this option by default and you need to explicitly switch it off if you do not want it on.&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-nodelay multiple times has no extra effect.  Disable it again with --no-tcp-nodelay.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-nodelay https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -N, --no-buffer.&lt;br /&gt;
&lt;br /&gt;
       -t, --telnet-option &amp;lt;opt=val&amp;gt;&lt;br /&gt;
              Pass options to the telnet protocol. Supported options are:&lt;br /&gt;
&lt;br /&gt;
              TTYPE=&amp;lt;term&amp;gt; Sets the terminal type.&lt;br /&gt;
&lt;br /&gt;
              XDISPLOC=&amp;lt;X display&amp;gt; Sets the X display location.&lt;br /&gt;
&lt;br /&gt;
              NEW_ENV=&amp;lt;var,val&amp;gt; Sets an environment variable.&lt;br /&gt;
&lt;br /&gt;
              -t, --telnet-option can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -t TTYPE=vt100 telnet://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --tftp-blksize &amp;lt;value&amp;gt;&lt;br /&gt;
              (TFTP) Set TFTP BLKSIZE option (must be &amp;gt;512). This is the block size that curl will try to use when transferring data to or from a TFTP server. By default 512 bytes will be used.&lt;br /&gt;
&lt;br /&gt;
              If --tftp-blksize is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-blksize 1024 tftp://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
       --tftp-no-options&lt;br /&gt;
              (TFTP) Tells curl not to send TFTP options requests.&lt;br /&gt;
&lt;br /&gt;
              This option improves interop with some legacy servers that do not acknowledge or properly implement TFTP options. When this option is used --tftp-blksize is ignored.&lt;br /&gt;
&lt;br /&gt;
              Providing --tftp-no-options multiple times has no extra effect.  Disable it again with --no-tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-no-options tftp://192.168.0.1/&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-blksize. Added in 7.48.0.&lt;br /&gt;
&lt;br /&gt;
       -z, --time-cond &amp;lt;time&amp;gt;&lt;br /&gt;
              (HTTP FTP) Request a file that has been modified later than the given time and date, or one that has been modified before that time. The &amp;lt;date expression&amp;gt; can be all sorts of date strings  or&lt;br /&gt;
              if it does not match any internal ones, it is taken as a filename and tries to get the modification date (mtime) from &amp;lt;file&amp;gt; instead. See the curl_getdate(3) man pages for date expression de‐&lt;br /&gt;
              tails.&lt;br /&gt;
&lt;br /&gt;
              Start the date expression with a dash (-) to make it request for a document that is older than the given date/time, default is a document that is newer than the specified date/time.&lt;br /&gt;
&lt;br /&gt;
              If -z, --time-cond is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -z &amp;quot;Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z &amp;quot;-Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare and -R, --remote-time.&lt;br /&gt;
&lt;br /&gt;
       --tls-max &amp;lt;VERSION&amp;gt;&lt;br /&gt;
              (SSL) VERSION defines maximum supported TLS version. The minimum acceptable version is set by tlsv1.0, tlsv1.1, tlsv1.2 or tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              default&lt;br /&gt;
                     Use up to recommended TLS version.&lt;br /&gt;
&lt;br /&gt;
              1.0    Use up to TLSv1.0.&lt;br /&gt;
&lt;br /&gt;
              1.1    Use up to TLSv1.1.&lt;br /&gt;
&lt;br /&gt;
              1.2    Use up to TLSv1.2.&lt;br /&gt;
&lt;br /&gt;
              1.3    Use up to TLSv1.3.&lt;br /&gt;
&lt;br /&gt;
       If --tls-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --tls-max 1.2 https://example.com&lt;br /&gt;
        curl --tls-max 1.3 --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also --tlsv1.0, --tlsv1.1, --tlsv1.2 and --tlsv1.3. --tls-max requires that the underlying libcurl was built to support TLS. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS) Specifies which cipher suites to use in the connection if it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher suite details  on  this&lt;br /&gt;
              URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This  option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the --ciphers&lt;br /&gt;
              option.&lt;br /&gt;
&lt;br /&gt;
              If --tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Set TLS authentication type. Currently, the only supported option is &amp;quot;SRP&amp;quot;, for TLS-SRP (RFC 5054). If --tlsuser and --tlspassword are specified but --tlsauthtype is not, then this option de‐&lt;br /&gt;
              faults to &amp;quot;SRP&amp;quot;. This option works only if the underlying libcurl is built with TLS-SRP support, which requires OpenSSL or GnuTLS with TLS-SRP support.&lt;br /&gt;
&lt;br /&gt;
              If --tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsauthtype SRP https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Set password for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlsuser also be set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Set username for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlspassword also is set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlspassword.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.0&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.0.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.1&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.1 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In old versions of curl this option was documented to allow _only_ TLS 1.1.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum  TLS  ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.2&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.2 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.2.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.3&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.3 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              Note that TLS 1.3 is not supported by all TLS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.2 and --tls-max. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -1, --tlsv1&lt;br /&gt;
              (SSL) Tells curl to use at least TLS version 1.x when negotiating with a remote TLS server. That means TLS version 1.0 or higher&lt;br /&gt;
&lt;br /&gt;
              Providing -1, --tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -1, --tlsv1 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --tlsv1.1 and --tlsv1.2 and --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --tr-encoding&lt;br /&gt;
              (HTTP) Request a compressed Transfer-Encoding response using one of the algorithms curl supports, and uncompress the data while receiving it.&lt;br /&gt;
&lt;br /&gt;
              Providing --tr-encoding multiple times has no extra effect.  Disable it again with --no-tr-encoding.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tr-encoding https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed.&lt;br /&gt;
&lt;br /&gt;
       --trace-ascii &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to stdout.&lt;br /&gt;
&lt;br /&gt;
              This is similar to --trace, but leaves out the hex part and only shows the ASCII part of the dump. It makes smaller output that might be easier to read for untrained humans.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace-ascii is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-ascii log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and --trace. This option is mutually exclusive to --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace-time&lt;br /&gt;
              Prepends a time stamp to each trace or verbose line that curl displays.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --trace-time multiple times has no extra effect.  Disable it again with --no-trace-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-time --trace-ascii output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to  stdout.  Use  &amp;quot;%&amp;quot;  as&lt;br /&gt;
              filename to have the output sent to stderr.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace-ascii and --trace-time. This option is mutually exclusive to -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       --unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through this Unix domain socket, instead of using the network.&lt;br /&gt;
&lt;br /&gt;
              If --unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --unix-socket socket-path https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --abstract-unix-socket. Added in 7.40.0.&lt;br /&gt;
&lt;br /&gt;
       -T, --upload-file &amp;lt;file&amp;gt;&lt;br /&gt;
              This transfers the specified local file to the remote URL. If there is no file part in the specified URL, curl will append the local file name. NOTE that you must use a trailing / on the last&lt;br /&gt;
              directory to really prove to Curl that there is no file name or curl will think that your last directory name is the remote file name to use. That will most likely cause the upload  operation&lt;br /&gt;
              to fail. If this is used on an HTTP(S) server, the PUT command will be used.&lt;br /&gt;
&lt;br /&gt;
              Use the file name &amp;quot;-&amp;quot; (a single dash) to use stdin instead of a given file.  Alternately, the file name &amp;quot;.&amp;quot; (a single period) may be specified instead of &amp;quot;-&amp;quot; to use stdin in non-blocking mode&lt;br /&gt;
              to allow reading server output while stdin is being uploaded.&lt;br /&gt;
&lt;br /&gt;
              You can specify one -T, --upload-file for each URL on the command line. Each -T, --upload-file + URL pair specifies what to upload and to where. curl also supports &amp;quot;globbing&amp;quot; of the -T, --up‐&lt;br /&gt;
              load-file argument, meaning that you can upload multiple files to a single URL by using the same URL globbing style supported in the URL.&lt;br /&gt;
&lt;br /&gt;
              When  uploading  to an SMTP server: the uploaded data is assumed to be RFC 5322 formatted. It has to feature the necessary set of headers and mail body formatted correctly by the user as curl&lt;br /&gt;
              will not transcode nor encode it further in any way.&lt;br /&gt;
&lt;br /&gt;
              -T, --upload-file can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -T file https://example.com&lt;br /&gt;
               curl -T &amp;quot;img[1-1000].png&amp;quot; ftp://ftp.example.com/&lt;br /&gt;
               curl --upload-file &amp;quot;{file1,file2}&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --url-query &amp;lt;data&amp;gt;&lt;br /&gt;
              (all) This option adds a piece of data, usually a name + value pair, to the end of the URL query part. The syntax is identical to that used for --data-urlencode with one extension:&lt;br /&gt;
&lt;br /&gt;
              If the argument starts with a &#039;+&#039; (plus), the rest of the string is provided as-is unencoded.&lt;br /&gt;
&lt;br /&gt;
              The query part of a URL is the one following the question mark on the right end.&lt;br /&gt;
&lt;br /&gt;
              --url-query can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --url-query name=val https://example.com&lt;br /&gt;
               curl --url-query =encodethis http://example.net/foo&lt;br /&gt;
               curl --url-query name@file https://example.com&lt;br /&gt;
               curl --url-query @fileonly https://example.com&lt;br /&gt;
               curl --url-query &amp;quot;+name=%20foo&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-urlencode and -G, --get. Added in 7.87.0.&lt;br /&gt;
&lt;br /&gt;
       --url &amp;lt;url&amp;gt;&lt;br /&gt;
              Specify a URL to fetch. This option is mostly handy when you want to specify URL(s) in a config file.&lt;br /&gt;
&lt;br /&gt;
              If the given URL is missing a scheme name (such as &amp;quot;http://&amp;quot; or &amp;quot;ftp://&amp;quot; etc) then curl will make a guess based on the host. If the outermost sub-domain name matches DICT,  FTP,  IMAP,  LDAP,&lt;br /&gt;
              POP3 or SMTP then that protocol will be used, otherwise HTTP will be used. Since 7.45.0 guessing can be disabled by setting a default protocol, see --proto-default for details.&lt;br /&gt;
&lt;br /&gt;
              To control where this URL is written, use the -o, --output or the -O, --remote-name options.&lt;br /&gt;
&lt;br /&gt;
              WARNING: On Windows, particular file:// accesses can be converted to network accesses by the operating system. Beware!&lt;br /&gt;
&lt;br /&gt;
              --url can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -B, --use-ascii&lt;br /&gt;
              (FTP LDAP) Enable ASCII transfer. For FTP, this can also be enforced by using a URL that ends with &amp;quot;;type=A&amp;quot;. This option causes data sent to stdout to be in text mode for win32 systems.&lt;br /&gt;
&lt;br /&gt;
              Providing -B, --use-ascii multiple times has no extra effect.  Disable it again with --no-use-ascii.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -B ftp://example.com/README&lt;br /&gt;
&lt;br /&gt;
              See also --crlf and --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       -A, --user-agent &amp;lt;name&amp;gt;&lt;br /&gt;
              (HTTP) Specify the User-Agent string to send to the HTTP server. To encode blanks in the string, surround the string with single quote marks. This header can also be set with the -H, --header&lt;br /&gt;
              or the --proxy-header options.&lt;br /&gt;
&lt;br /&gt;
              If you give an empty argument to -A, --user-agent (&amp;quot;&amp;quot;), it will remove the header completely from the request. If you prefer a blank header, you can set it to a single space (&amp;quot; &amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              If -A, --user-agent is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -A &amp;quot;Agent 007&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -H, --header and --proxy-header.&lt;br /&gt;
&lt;br /&gt;
       -u, --user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for server authentication. Overrides -n, --netrc and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              If you simply specify the user name, curl will prompt for a password.&lt;br /&gt;
&lt;br /&gt;
              The user name and passwords are split up on the first colon, which makes it impossible to use a colon in the user name with this option. The password can, still.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              When  using  Kerberos  V5  with a Windows based server you should include the Windows domain name in the user name, in order for the server to successfully obtain a Kerberos Ticket. If you do&lt;br /&gt;
              not, then the initial authentication handshake may fail.&lt;br /&gt;
&lt;br /&gt;
              When using NTLM, the user name can be specified simply as the user name, without the domain, if there is a single domain and forest in your setup for example.&lt;br /&gt;
&lt;br /&gt;
              To specify the domain name use either Down-Level Logon Name or UPN (User Principal Name) formats. For example, EXAMPLE\user and user@example.com respectively.&lt;br /&gt;
&lt;br /&gt;
              If you use a Windows SSPI-enabled curl binary and perform Kerberos V5, Negotiate, NTLM or Digest authentication then you can tell curl to select the user name and password from your  environ‐&lt;br /&gt;
              ment by specifying a single colon with this option: &amp;quot;-u :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If -u, --user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u user:secret https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -v, --verbose&lt;br /&gt;
              Makes  curl  verbose during the operation. Useful for debugging and seeing what&#039;s going on &amp;quot;under the hood&amp;quot;. A line starting with &#039;&amp;gt;&#039; means &amp;quot;header data&amp;quot; sent by curl, &#039;&amp;lt;&#039; means &amp;quot;header data&amp;quot;&lt;br /&gt;
              received by curl that is hidden in normal cases, and a line starting with &#039;*&#039; means additional info provided by curl.&lt;br /&gt;
&lt;br /&gt;
              If you only want HTTP headers in the output, -i, --include might be the option you are looking for.&lt;br /&gt;
&lt;br /&gt;
              If you think this option still does not give you enough details, consider using --trace or --trace-ascii instead.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Use -s, --silent to make curl really quiet.&lt;br /&gt;
&lt;br /&gt;
              Providing -v, --verbose multiple times has no extra effect.  Disable it again with --no-verbose.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --verbose https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -i, --include. This option is mutually exclusive to --trace and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -V, --version&lt;br /&gt;
              Displays information about curl and the libcurl version it uses.&lt;br /&gt;
&lt;br /&gt;
              The first line includes the full version of curl, libcurl and other 3rd party libraries linked with the executable.&lt;br /&gt;
&lt;br /&gt;
              The second line (starts with &amp;quot;Protocols:&amp;quot;) shows all protocols that libcurl reports to support.&lt;br /&gt;
&lt;br /&gt;
              The third line (starts with &amp;quot;Features:&amp;quot;) shows specific features libcurl reports to offer. Available features include:&lt;br /&gt;
&lt;br /&gt;
              alt-svc&lt;br /&gt;
                     Support for the Alt-Svc: header is provided.&lt;br /&gt;
&lt;br /&gt;
              AsynchDNS&lt;br /&gt;
                     This curl uses asynchronous name resolves. Asynchronous name resolves can be done using either the c-ares or the threaded resolver backends.&lt;br /&gt;
&lt;br /&gt;
              brotli Support for automatic brotli compression over HTTP(S).&lt;br /&gt;
&lt;br /&gt;
              CharConv&lt;br /&gt;
                     curl was built with support for character set conversions (like EBCDIC)&lt;br /&gt;
&lt;br /&gt;
              Debug  This curl uses a libcurl built with Debug. This enables more error-tracking and memory debugging etc. For curl-developers only!&lt;br /&gt;
&lt;br /&gt;
              gsasl  The built-in SASL authentication includes extensions to support SCRAM because libcurl was built with libgsasl.&lt;br /&gt;
&lt;br /&gt;
              GSS-API&lt;br /&gt;
                     GSS-API is supported.&lt;br /&gt;
&lt;br /&gt;
              HSTS   HSTS support is present.&lt;br /&gt;
&lt;br /&gt;
              HTTP2  HTTP/2 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTP3  HTTP/3 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTPS-proxy&lt;br /&gt;
                     This curl is built to support HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              IDN    This curl supports IDN - international domain names.&lt;br /&gt;
&lt;br /&gt;
              IPv6   You can use IPv6 with this.&lt;br /&gt;
&lt;br /&gt;
              Kerberos&lt;br /&gt;
                     Kerberos V5 authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              Largefile&lt;br /&gt;
                     This curl supports transfers of large files, files larger than 2GB.&lt;br /&gt;
&lt;br /&gt;
              libz   Automatic decompression (via gzip, deflate) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
              MultiSSL&lt;br /&gt;
                     This curl supports multiple TLS backends.&lt;br /&gt;
&lt;br /&gt;
              NTLM   NTLM authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              NTLM_WB&lt;br /&gt;
                     NTLM delegation to winbind helper is supported.&lt;br /&gt;
&lt;br /&gt;
              PSL    PSL is short for Public Suffix List and means that this curl has been built with knowledge about &amp;quot;public suffixes&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              SPNEGO SPNEGO authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              SSL    SSL versions of various protocols are supported, such as HTTPS, FTPS, POP3S and so on.&lt;br /&gt;
&lt;br /&gt;
              SSPI   SSPI is supported.&lt;br /&gt;
&lt;br /&gt;
              TLS-SRP&lt;br /&gt;
                     SRP (Secure Remote Password) authentication is supported for TLS.&lt;br /&gt;
&lt;br /&gt;
              TrackMemory&lt;br /&gt;
                     Debug memory tracking is supported.&lt;br /&gt;
&lt;br /&gt;
              Unicode&lt;br /&gt;
                     Unicode support on Windows.&lt;br /&gt;
&lt;br /&gt;
              UnixSockets&lt;br /&gt;
                     Unix sockets support is provided.&lt;br /&gt;
&lt;br /&gt;
              zstd   Automatic decompression (via zstd) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --version&lt;br /&gt;
&lt;br /&gt;
       See also -h, --help and -M, --manual.&lt;br /&gt;
&lt;br /&gt;
       -w, --write-out &amp;lt;format&amp;gt;&lt;br /&gt;
              Make curl display information on stdout after a completed transfer. The format is a string that may contain plain text mixed with any number of variables. The format can  be  specified  as  a&lt;br /&gt;
              literal &amp;quot;string&amp;quot;, or you can have curl read the format from a file with &amp;quot;@filename&amp;quot; and to tell curl to read the format from stdin you write &amp;quot;@-&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              The  variables  present in the output format will be substituted by the value or text that curl thinks fit, as described below. All variables are specified as %{variable_name} and to output a&lt;br /&gt;
              normal % you just write them as %%. You can output a newline by using \n, a carriage return with \r and a tab space with \t.&lt;br /&gt;
&lt;br /&gt;
              The output will be written to standard output, but this can be switched to standard error by using %{stderr}.&lt;br /&gt;
&lt;br /&gt;
              Output HTTP headers from the most recent request by using %header{name} where name is the case insensitive name of the header (without the trailing colon). The header contents are exactly  as&lt;br /&gt;
              sent over the network, with leading and trailing whitespace trimmed. Added in curl 7.84.0.&lt;br /&gt;
&lt;br /&gt;
              NOTE:  In Windows the %-symbol is a special symbol used to expand environment variables. In batch files all occurrences of % must be doubled when using this option to properly escape. If this&lt;br /&gt;
              option is used at the command prompt then the % cannot be escaped and unintended expansion is possible.&lt;br /&gt;
&lt;br /&gt;
              The variables available are:&lt;br /&gt;
&lt;br /&gt;
              certs          Output the certificate chain with details. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              content_type   The Content-Type of the requested document, if there was any.&lt;br /&gt;
&lt;br /&gt;
              errormsg       The error message. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              exitcode       The numerical exitcode of the transfer. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              filename_effective&lt;br /&gt;
                             The ultimate filename that curl writes out to. This is only meaningful if curl is told to write to a file with the -O, --remote-name or -o, --output option. It&#039;s most useful in&lt;br /&gt;
                             combination with the -J, --remote-header-name option.&lt;br /&gt;
&lt;br /&gt;
              ftp_entry_path The initial path curl ended up in when logging on to the remote FTP server.&lt;br /&gt;
&lt;br /&gt;
              header_json    A JSON object with all HTTP response headers from the recent transfer. Values are provided as arrays, since in the case of multiple headers there can be multiple values. (Added&lt;br /&gt;
                             in 7.83.0)&lt;br /&gt;
&lt;br /&gt;
                             The header names provided in lowercase, listed in order of appearance over the wire. Except for duplicated headers. They are grouped on the first  occurrence  of  that  header,&lt;br /&gt;
                             each value is presented in the JSON array.&lt;br /&gt;
&lt;br /&gt;
              http_code      The numerical response code that was found in the last retrieved HTTP(S) or FTP(s) transfer.&lt;br /&gt;
&lt;br /&gt;
              http_connect   The numerical code that was found in the last response (from a proxy) to a curl CONNECT request.&lt;br /&gt;
&lt;br /&gt;
              http_version   The http version that was effectively used. (Added in 7.50.0)&lt;br /&gt;
&lt;br /&gt;
              json           A JSON object with all available keys.&lt;br /&gt;
&lt;br /&gt;
              local_ip       The IP address of the local end of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              local_port     The local port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              method         The http method used in the most recent HTTP request. (Added in 7.72.0)&lt;br /&gt;
&lt;br /&gt;
              num_certs      Number of server certificates received in the TLS handshake. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              num_connects   Number of new connects made in the recent transfer.&lt;br /&gt;
&lt;br /&gt;
              num_headers    The number of response headers in the most recent request (restarted at each redirect). Note that the status line IS NOT a header. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              num_redirects  Number of redirects that were followed in the request.&lt;br /&gt;
&lt;br /&gt;
              onerror        The rest of the output is only shown if the transfer returned a non-zero error (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              proxy_ssl_verify_result&lt;br /&gt;
                             The result of the HTTPS proxy&#039;s SSL peer certificate verification that was requested. 0 means the verification was successful. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              redirect_url   When an HTTP request was made without -L, --location to follow redirects (or when --max-redirs is met), this variable will show the actual URL a redirect would have gone to.&lt;br /&gt;
&lt;br /&gt;
              referer        The Referer: header, if there was any. (Added in 7.76.0)&lt;br /&gt;
&lt;br /&gt;
              remote_ip      The remote IP address of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              remote_port    The remote port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              response_code  The numerical response code that was found in the last transfer (formerly known as &amp;quot;http_code&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              scheme         The URL scheme (sometimes called protocol) that was effectively used. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              size_download  The total amount of bytes that were downloaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              size_header    The total amount of bytes of the downloaded headers.&lt;br /&gt;
&lt;br /&gt;
              size_request   The total amount of bytes that were sent in the HTTP request.&lt;br /&gt;
&lt;br /&gt;
              size_upload    The total amount of bytes that were uploaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              speed_download The average download speed that curl measured for the complete download. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              speed_upload   The average upload speed that curl measured for the complete upload. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              ssl_verify_result&lt;br /&gt;
                             The result of the SSL peer certificate verification that was requested. 0 means the verification was successful.&lt;br /&gt;
&lt;br /&gt;
              stderr         From this point on, the -w, --write-out output will be written to standard error. (Added in 7.63.0)&lt;br /&gt;
&lt;br /&gt;
              stdout         From  this  point  on, the -w, --write-out output will be written to standard output.  This is the default, but can be used to switch back after switching to stderr.  (Added in&lt;br /&gt;
                             7.63.0)&lt;br /&gt;
&lt;br /&gt;
              time_appconnect&lt;br /&gt;
                             The time, in seconds, it took from the start until the SSL/SSH/etc connect/handshake to the remote host was completed.&lt;br /&gt;
&lt;br /&gt;
              time_connect   The time, in seconds, it took from the start until the TCP connect to the remote host (or proxy) was completed.&lt;br /&gt;
&lt;br /&gt;
              time_namelookup&lt;br /&gt;
                             The time, in seconds, it took from the start until the name resolving was completed.&lt;br /&gt;
&lt;br /&gt;
              time_pretransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the file transfer was just about to begin. This includes all pre-transfer commands and negotiations that are specific to  the&lt;br /&gt;
                             particular protocol(s) involved.&lt;br /&gt;
&lt;br /&gt;
              time_redirect  The  time,  in seconds, it took for all redirection steps including name lookup, connect, pretransfer and transfer before the final transaction was started. time_redirect shows&lt;br /&gt;
                             the complete execution time for multiple redirections.&lt;br /&gt;
&lt;br /&gt;
              time_starttransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the first byte was just about to be transferred. This includes time_pretransfer and also the time the server needed to calcu‐&lt;br /&gt;
                             late the result.&lt;br /&gt;
&lt;br /&gt;
              time_total     The total time, in seconds, that the full operation lasted.&lt;br /&gt;
&lt;br /&gt;
              url            The URL that was fetched. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              urlnum         The URL index number of this transfer, 0-indexed. De-globbed URLs share the same index number as the origin globbed URL. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              url_effective  The URL that was fetched last. This is most meaningful if you have told curl to follow location: headers.&lt;br /&gt;
&lt;br /&gt;
              If -w, --write-out is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -w &#039;%{http_code}\n&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --xattr&lt;br /&gt;
              When  saving  output  to a file, this option tells curl to store certain file metadata in extended file attributes. Currently, the URL is stored in the xdg.origin.url attribute and, for HTTP,&lt;br /&gt;
              the content type is stored in the mime_type attribute. If the file system does not support extended attributes, a warning is issued.&lt;br /&gt;
&lt;br /&gt;
              Providing --xattr multiple times has no extra effect.  Disable it again with --no-xattr.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --xattr -o storage https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -R, --remote-time, -w, --write-out and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       ~/.curlrc&lt;br /&gt;
              Default config file, see -K, --config for details.&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       The environment variables can be specified in lower case or upper case. The lower case version has precedence. http_proxy is an exception as it is only available in lower case.&lt;br /&gt;
&lt;br /&gt;
       Using an environment variable to set the proxy has the same effect as using the -x, --proxy option.&lt;br /&gt;
&lt;br /&gt;
       http_proxy [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTP.&lt;br /&gt;
&lt;br /&gt;
       HTTPS_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTPS.&lt;br /&gt;
&lt;br /&gt;
       [url-protocol]_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for [url-protocol], where the protocol is a protocol that curl supports and as specified in a URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP, etc.&lt;br /&gt;
&lt;br /&gt;
       ALL_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use if no protocol-specific proxy is set.&lt;br /&gt;
&lt;br /&gt;
       NO_PROXY &amp;lt;comma-separated list of hosts/domains&amp;gt;&lt;br /&gt;
              list of host names that should not go through any proxy. If set to an asterisk &#039;*&#039; only, it matches all hosts. Each name in this list is matched as either a domain  name  which  contains  the&lt;br /&gt;
              hostname, or the hostname itself.&lt;br /&gt;
&lt;br /&gt;
              This  environment  variable disables use of the proxy even when specified with the -x, --proxy option. That is NO_PROXY=direct.example.com curl -x http://proxy.example.com http://direct.exam‐&lt;br /&gt;
              ple.com accesses the target URL directly, and NO_PROXY=direct.example.com curl -x http://proxy.example.com http://somewhere.example.com accesses the target URL through the proxy.&lt;br /&gt;
&lt;br /&gt;
              The list of host names can also be include numerical IP addresses, and IPv6 versions should then be given without enclosing brackets.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses can be specified using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use in the comparison.  For  example&lt;br /&gt;
              &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       APPDATA &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the primary home variable are all unset.&lt;br /&gt;
&lt;br /&gt;
       COLUMNS &amp;lt;terminal width&amp;gt;&lt;br /&gt;
              If set, the specified number of characters will be used as the terminal width when the alternative progress-bar is shown. If not set, curl will try to figure it out using other ways.&lt;br /&gt;
&lt;br /&gt;
       CURL_CA_BUNDLE &amp;lt;file&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       CURL_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, is the first variable curl checks when trying to find its home directory. If not set, it continues to check XDG_CONFIG_HOME&lt;br /&gt;
&lt;br /&gt;
       CURL_SSL_BACKEND &amp;lt;TLS backend&amp;gt;&lt;br /&gt;
              If  curl  was  built  with support for &amp;quot;MultiSSL&amp;quot;, meaning that it has built-in support for more than one TLS backend, this environment variable can be set to the case insensitive name of the&lt;br /&gt;
              particular backend to use when curl is invoked. Setting a name that is not a built-in alternative will make curl stay with the default.&lt;br /&gt;
&lt;br /&gt;
              SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls, nss, openssl, rustls, schannel, secure-transport, wolfssl&lt;br /&gt;
&lt;br /&gt;
       HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, this is used to find the home directory when that is needed. Like when looking for the default .curlrc. CURL_HOME and XDG_CONFIG_HOME have preference.&lt;br /&gt;
&lt;br /&gt;
       QLOGDIR &amp;lt;directory name&amp;gt;&lt;br /&gt;
              If curl was built with HTTP/3 support, setting this environment variable to a local directory will make curl produce qlogs in that directory, using file names named after the destination con‐&lt;br /&gt;
              nection id (in hex). Do note that these files can become rather large. Works with both QUIC backends.&lt;br /&gt;
&lt;br /&gt;
       SHELL  Used on VMS when trying to detect if using a DCL or a &amp;quot;unix&amp;quot; shell.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_DIR &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, will be used as the --capath value.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_FILE &amp;lt;path&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       SSLKEYLOGFILE &amp;lt;file name&amp;gt;&lt;br /&gt;
              If  you  set  this  environment variable to a file name, curl will store TLS secrets from its connections in that file when invoked to enable you to analyze the TLS traffic in real time using&lt;br /&gt;
              network analyzing tools such as Wireshark. This works with the following TLS backends: OpenSSL, libressl, BoringSSL, GnuTLS, NSS and wolfSSL.&lt;br /&gt;
&lt;br /&gt;
       USERPROFILE &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the other, primary, variable are all unset. If set, curl will use the path &amp;quot;$USERPROFILE\Application Data&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       XDG_CONFIG_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If CURL_HOME is not set, this variable is checked when looking for a default .curlrc file.&lt;br /&gt;
&lt;br /&gt;
PROXY PROTOCOL PREFIXES&lt;br /&gt;
       The proxy string may be specified with a protocol:// prefix to specify alternative proxy protocols.&lt;br /&gt;
&lt;br /&gt;
       If no protocol is specified in the proxy string or if the string does not match a supported one, the proxy will be treated as an HTTP proxy.&lt;br /&gt;
&lt;br /&gt;
       The supported proxy protocol prefixes are as follows:&lt;br /&gt;
&lt;br /&gt;
       http://&lt;br /&gt;
              Makes it use it as an HTTP proxy. The default if no scheme prefix is used.&lt;br /&gt;
&lt;br /&gt;
       https://&lt;br /&gt;
              Makes it treated as an HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
       socks4://&lt;br /&gt;
              Makes it the equivalent of --socks4&lt;br /&gt;
&lt;br /&gt;
       socks4a://&lt;br /&gt;
              Makes it the equivalent of --socks4a&lt;br /&gt;
&lt;br /&gt;
       socks5://&lt;br /&gt;
              Makes it the equivalent of --socks5&lt;br /&gt;
&lt;br /&gt;
       socks5h://&lt;br /&gt;
              Makes it the equivalent of --socks5-hostname&lt;br /&gt;
&lt;br /&gt;
EXIT CODES&lt;br /&gt;
       There are a bunch of different error codes and their corresponding error messages that may appear under error conditions. At the time of this writing, the exit codes are:&lt;br /&gt;
&lt;br /&gt;
       0      Success. The operation completed successfully according to the instructions.&lt;br /&gt;
&lt;br /&gt;
       1      Unsupported protocol. This build of curl has no support for this protocol.&lt;br /&gt;
&lt;br /&gt;
       2      Failed to initialize.&lt;br /&gt;
&lt;br /&gt;
       3      URL malformed. The syntax was not correct.&lt;br /&gt;
&lt;br /&gt;
       4      A feature or option that was needed to perform the desired request was not enabled or was explicitly disabled at build-time. To make curl able to do this, you probably need another  build  of&lt;br /&gt;
              libcurl.&lt;br /&gt;
&lt;br /&gt;
       5      Could not resolve proxy. The given proxy host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       6      Could not resolve host. The given remote host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       7      Failed to connect to host.&lt;br /&gt;
&lt;br /&gt;
       8      Weird server reply. The server sent data curl could not parse.&lt;br /&gt;
&lt;br /&gt;
       9      FTP  access  denied. The server denied login or denied access to the particular resource or directory you wanted to reach. Most often you tried to change to a directory that does not exist on&lt;br /&gt;
              the server.&lt;br /&gt;
&lt;br /&gt;
       10     FTP accept failed. While waiting for the server to connect back when an active FTP session is used, an error code was sent over the control connection or similar.&lt;br /&gt;
&lt;br /&gt;
       11     FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.&lt;br /&gt;
&lt;br /&gt;
       12     During an active FTP session while waiting for the server to connect back to curl, the timeout expired.&lt;br /&gt;
&lt;br /&gt;
       13     FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.&lt;br /&gt;
&lt;br /&gt;
       14     FTP weird 227 format. Curl could not parse the 227-line the server sent.&lt;br /&gt;
&lt;br /&gt;
       15     FTP cannot use host. Could not resolve the host IP we got in the 227-line.&lt;br /&gt;
&lt;br /&gt;
       16     HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       17     FTP could not set binary. Could not change transfer method to binary.&lt;br /&gt;
&lt;br /&gt;
       18     Partial file. Only a part of the file was transferred.&lt;br /&gt;
&lt;br /&gt;
       19     FTP could not download/access the given file, the RETR (or similar) command failed.&lt;br /&gt;
&lt;br /&gt;
       21     FTP quote error. A quote command returned error from the server.&lt;br /&gt;
&lt;br /&gt;
       22     HTTP page not retrieved. The requested URL was not found or returned another error with the HTTP error code being 400 or above. This return code only appears if -f, --fail is used.&lt;br /&gt;
&lt;br /&gt;
       23     Write error. Curl could not write data to a local filesystem or similar.&lt;br /&gt;
&lt;br /&gt;
       25     FTP could not STOR file. The server denied the STOR operation, used for FTP uploading.&lt;br /&gt;
&lt;br /&gt;
       26     Read error. Various reading problems.&lt;br /&gt;
&lt;br /&gt;
       27     Out of memory. A memory allocation request failed.&lt;br /&gt;
&lt;br /&gt;
       28     Operation timeout. The specified time-out period was reached according to the conditions.&lt;br /&gt;
&lt;br /&gt;
       30     FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT command, try doing a transfer using PASV instead!&lt;br /&gt;
&lt;br /&gt;
       31     FTP could not use REST. The REST command failed. This command is used for resumed FTP transfers.&lt;br /&gt;
&lt;br /&gt;
       33     HTTP range error. The range &amp;quot;command&amp;quot; did not work.&lt;br /&gt;
&lt;br /&gt;
       34     HTTP post error. Internal post-request generation error.&lt;br /&gt;
&lt;br /&gt;
       35     SSL connect error. The SSL handshaking failed.&lt;br /&gt;
&lt;br /&gt;
       36     Bad download resume. Could not continue an earlier aborted download.&lt;br /&gt;
&lt;br /&gt;
       37     FILE could not read file. Failed to open the file. Permissions?&lt;br /&gt;
&lt;br /&gt;
       38     LDAP cannot bind. LDAP bind operation failed.&lt;br /&gt;
&lt;br /&gt;
       39     LDAP search failed.&lt;br /&gt;
&lt;br /&gt;
       41     Function not found. A required LDAP function was not found.&lt;br /&gt;
&lt;br /&gt;
       42     Aborted by callback. An application told curl to abort the operation.&lt;br /&gt;
&lt;br /&gt;
       43     Internal error. A function was called with a bad parameter.&lt;br /&gt;
&lt;br /&gt;
       45     Interface error. A specified outgoing interface could not be used.&lt;br /&gt;
&lt;br /&gt;
       47     Too many redirects. When following redirects, curl hit the maximum amount.&lt;br /&gt;
&lt;br /&gt;
       48     Unknown option specified to libcurl. This indicates that you passed a weird option to curl that was passed on to libcurl and rejected. Read up in the manual!&lt;br /&gt;
&lt;br /&gt;
       49     Malformed telnet option.&lt;br /&gt;
&lt;br /&gt;
       52     The server did not reply anything, which here is considered an error.&lt;br /&gt;
&lt;br /&gt;
       53     SSL crypto engine not found.&lt;br /&gt;
&lt;br /&gt;
       54     Cannot set SSL crypto engine as default.&lt;br /&gt;
&lt;br /&gt;
       55     Failed sending network data.&lt;br /&gt;
&lt;br /&gt;
       56     Failure in receiving network data.&lt;br /&gt;
&lt;br /&gt;
       58     Problem with the local certificate.&lt;br /&gt;
&lt;br /&gt;
       59     Could not use specified SSL cipher.&lt;br /&gt;
&lt;br /&gt;
       60     Peer certificate cannot be authenticated with known CA certificates.&lt;br /&gt;
&lt;br /&gt;
       61     Unrecognized transfer encoding.&lt;br /&gt;
&lt;br /&gt;
       63     Maximum file size exceeded.&lt;br /&gt;
&lt;br /&gt;
       64     Requested FTP SSL level failed.&lt;br /&gt;
&lt;br /&gt;
       65     Sending the data requires a rewind that failed.&lt;br /&gt;
&lt;br /&gt;
       66     Failed to initialise SSL Engine.&lt;br /&gt;
&lt;br /&gt;
       67     The user name, password, or similar was not accepted and curl failed to log in.&lt;br /&gt;
&lt;br /&gt;
       68     File not found on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       69     Permission problem on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       70     Out of disk space on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       71     Illegal TFTP operation.&lt;br /&gt;
&lt;br /&gt;
       72     Unknown TFTP transfer ID.&lt;br /&gt;
&lt;br /&gt;
       73     File already exists (TFTP).&lt;br /&gt;
&lt;br /&gt;
       74     No such user (TFTP).&lt;br /&gt;
&lt;br /&gt;
       77     Problem reading the SSL CA cert (path? access rights?).&lt;br /&gt;
&lt;br /&gt;
       78     The resource referenced in the URL does not exist.&lt;br /&gt;
&lt;br /&gt;
       79     An unspecified error occurred during the SSH session.&lt;br /&gt;
&lt;br /&gt;
       80     Failed to shut down the SSL connection.&lt;br /&gt;
&lt;br /&gt;
       82     Could not load CRL file, missing or wrong format.&lt;br /&gt;
&lt;br /&gt;
       83     Issuer check failed.&lt;br /&gt;
&lt;br /&gt;
       84     The FTP PRET command failed.&lt;br /&gt;
&lt;br /&gt;
       85     Mismatch of RTSP CSeq numbers.&lt;br /&gt;
&lt;br /&gt;
       86     Mismatch of RTSP Session Identifiers.&lt;br /&gt;
&lt;br /&gt;
       87     Unable to parse FTP file list.&lt;br /&gt;
&lt;br /&gt;
       88     FTP chunk callback reported error.&lt;br /&gt;
&lt;br /&gt;
       89     No connection available, the session will be queued.&lt;br /&gt;
&lt;br /&gt;
       90     SSL public key does not matched pinned public key.&lt;br /&gt;
&lt;br /&gt;
       91     Invalid SSL certificate status.&lt;br /&gt;
&lt;br /&gt;
       92     Stream error in HTTP/2 framing layer.&lt;br /&gt;
&lt;br /&gt;
       93     An API function was called from inside a callback.&lt;br /&gt;
&lt;br /&gt;
       94     An authentication function returned an error.&lt;br /&gt;
&lt;br /&gt;
       95     A problem was detected in the HTTP/3 layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       96     QUIC connection error. This error may be caused by an SSL library error. QUIC is the protocol used for HTTP/3 transfers.&lt;br /&gt;
&lt;br /&gt;
       XX     More error codes will appear here in future releases. The existing ones are meant to never change.&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       If you experience any problems with curl, submit an issue in the project&#039;s bug tracker on GitHub: https://github.com/curl/curl/issues&lt;br /&gt;
&lt;br /&gt;
AUTHORS / CONTRIBUTORS&lt;br /&gt;
       Daniel Stenberg is the main author, but the whole list of contributors is found in the separate THANKS file.&lt;br /&gt;
&lt;br /&gt;
WWW&lt;br /&gt;
       https://curl.se&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       ftp(1), wget(1)&lt;br /&gt;
&lt;br /&gt;
curl 7.88.1                                                                                    February 19 2023                                                                                       curl(1)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1143</id>
		<title>CURL - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CURL_-_Manpage&amp;diff=1143"/>
		<updated>2026-02-25T12:41:43Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Quick Examples ==&lt;br /&gt;
&lt;br /&gt;
=== Force to Connect to a given Host ===&lt;br /&gt;
&lt;br /&gt;
Connect to host2 instead of host1 :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
--connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get the HTTP Headers of a URL ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -I --http2 https://&amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Follow Redirects ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -L &amp;lt;URL&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing The Download Time ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl -D - https://www.ubuntu.com -o /dev/null&lt;br /&gt;
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current&lt;br /&gt;
                                 Dload  Upload   Total   Spent    Left  Speed&lt;br /&gt;
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0HTTP/2 301 &lt;br /&gt;
server: nginx/1.14.0 (Ubuntu)&lt;br /&gt;
date: Mon, 21 Jul 2025 10:04:33 GMT&lt;br /&gt;
content-type: text/html&lt;br /&gt;
content-length: 162&lt;br /&gt;
location: https://ubuntu.com/&lt;br /&gt;
strict-transport-security: max-age=15724800&lt;br /&gt;
link: &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect; crossorigin, &amp;lt;https://assets.ubuntu.com&amp;gt;; rel=preconnect, &amp;lt;https://res.cloudinary.com&amp;gt;; rel=preconnect&lt;br /&gt;
x-cache-status: HIT from content-cache-il3/1&lt;br /&gt;
&lt;br /&gt;
100   162  100   162    0     0    367      0 --:--:-- --:--:-- --:--:--   368&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Recording Cookies ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --cookie-jar received_cookies.txt https://URL -O&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== curl --help all ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl --help all                                                  &lt;br /&gt;
     --abstract-unix-socket &amp;lt;path&amp;gt;                 Connect via abstract Unix domain socket&lt;br /&gt;
     --alt-svc &amp;lt;filename&amp;gt;                          Enable alt-svc with this cache file&lt;br /&gt;
     --anyauth                                     Pick any authentication method&lt;br /&gt;
 -a, --append                                      Append to target file when uploading&lt;br /&gt;
     --aws-sigv4 &amp;lt;provider1[:prvdr2[:reg[:srv]]]&amp;gt;  AWS V4 signature auth&lt;br /&gt;
     --basic                                       HTTP Basic Authentication&lt;br /&gt;
     --ca-native                                   Load CA certs from the OS&lt;br /&gt;
     --cacert &amp;lt;file&amp;gt;                               CA certificate to verify peer against&lt;br /&gt;
     --capath &amp;lt;dir&amp;gt;                                CA directory to verify peer against&lt;br /&gt;
 -E, --cert &amp;lt;certificate[:password]&amp;gt;               Client certificate file and password&lt;br /&gt;
     --cert-status                                 Verify server cert status OCSP-staple&lt;br /&gt;
     --cert-type &amp;lt;type&amp;gt;                            Certificate type (DER/PEM/ENG/PROV/P12)&lt;br /&gt;
     --ciphers &amp;lt;list&amp;gt;                              TLS 1.2 (1.1, 1.0) ciphers to use&lt;br /&gt;
     --compressed                                  Request compressed response&lt;br /&gt;
     --compressed-ssh                              Enable SSH compression&lt;br /&gt;
 -K, --config &amp;lt;file&amp;gt;                               Read config from a file&lt;br /&gt;
     --connect-timeout &amp;lt;seconds&amp;gt;                   Maximum time allowed to connect&lt;br /&gt;
     --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;        Connect to host2 instead of host1&lt;br /&gt;
 -C, --continue-at &amp;lt;offset&amp;gt;                        Resumed transfer offset&lt;br /&gt;
 -b, --cookie &amp;lt;data|filename&amp;gt;                      Send cookies from string/load from file&lt;br /&gt;
 -c, --cookie-jar &amp;lt;filename&amp;gt;                       Save cookies to &amp;lt;filename&amp;gt; after operation&lt;br /&gt;
     --create-dirs                                 Create necessary local directory hierarchy&lt;br /&gt;
     --create-file-mode &amp;lt;mode&amp;gt;                     File mode for created files&lt;br /&gt;
     --crlf                                        Convert LF to CRLF in upload&lt;br /&gt;
     --crlfile &amp;lt;file&amp;gt;                              Certificate Revocation list&lt;br /&gt;
     --curves &amp;lt;list&amp;gt;                               (EC) TLS key exchange algorithms to request&lt;br /&gt;
 -d, --data &amp;lt;data&amp;gt;                                 HTTP POST data&lt;br /&gt;
     --data-ascii &amp;lt;data&amp;gt;                           HTTP POST ASCII data&lt;br /&gt;
     --data-binary &amp;lt;data&amp;gt;                          HTTP POST binary data&lt;br /&gt;
     --data-raw &amp;lt;data&amp;gt;                             HTTP POST data, &#039;@&#039; allowed&lt;br /&gt;
     --data-urlencode &amp;lt;data&amp;gt;                       HTTP POST data URL encoded&lt;br /&gt;
     --delegation &amp;lt;LEVEL&amp;gt;                          GSS-API delegation permission&lt;br /&gt;
     --digest                                      HTTP Digest Authentication&lt;br /&gt;
 -q, --disable                                     Disable .curlrc&lt;br /&gt;
     --disable-eprt                                Inhibit using EPRT or LPRT&lt;br /&gt;
     --disable-epsv                                Inhibit using EPSV&lt;br /&gt;
     --disallow-username-in-url                    Disallow username in URL&lt;br /&gt;
     --dns-interface &amp;lt;interface&amp;gt;                   Interface to use for DNS requests&lt;br /&gt;
     --dns-ipv4-addr &amp;lt;address&amp;gt;                     IPv4 address to use for DNS requests&lt;br /&gt;
     --dns-ipv6-addr &amp;lt;address&amp;gt;                     IPv6 address to use for DNS requests&lt;br /&gt;
     --dns-servers &amp;lt;addresses&amp;gt;                     DNS server addrs to use&lt;br /&gt;
     --doh-cert-status                             Verify DoH server cert status OCSP-staple&lt;br /&gt;
     --doh-insecure                                Allow insecure DoH server connections&lt;br /&gt;
     --doh-url &amp;lt;URL&amp;gt;                               Resolve hostnames over DoH&lt;br /&gt;
     --dump-ca-embed                               Write the embedded CA bundle to standard output&lt;br /&gt;
 -D, --dump-header &amp;lt;filename&amp;gt;                      Write the received headers to &amp;lt;filename&amp;gt;&lt;br /&gt;
     --ech &amp;lt;config&amp;gt;                                Configure ECH&lt;br /&gt;
     --egd-file &amp;lt;file&amp;gt;                             EGD socket path for random data&lt;br /&gt;
     --engine &amp;lt;name&amp;gt;                               Crypto engine to use&lt;br /&gt;
     --etag-compare &amp;lt;file&amp;gt;                         Load ETag from file&lt;br /&gt;
     --etag-save &amp;lt;file&amp;gt;                            Parse incoming ETag and save to a file&lt;br /&gt;
     --expect100-timeout &amp;lt;seconds&amp;gt;                 How long to wait for 100-continue&lt;br /&gt;
 -f, --fail                                        Fail fast with no output on HTTP errors&lt;br /&gt;
     --fail-early                                  Fail on first transfer error&lt;br /&gt;
     --fail-with-body                              Fail on HTTP errors but save the body&lt;br /&gt;
     --false-start                                 Enable TLS False Start&lt;br /&gt;
 -F, --form &amp;lt;name=content&amp;gt;                         Specify multipart MIME data&lt;br /&gt;
     --form-escape                                 Escape form fields using backslash&lt;br /&gt;
     --form-string &amp;lt;name=string&amp;gt;                   Specify multipart MIME data&lt;br /&gt;
     --ftp-account &amp;lt;data&amp;gt;                          Account data string&lt;br /&gt;
     --ftp-alternative-to-user &amp;lt;command&amp;gt;           String to replace USER [name]&lt;br /&gt;
     --ftp-create-dirs                             Create the remote dirs if not present&lt;br /&gt;
     --ftp-method &amp;lt;method&amp;gt;                         Control CWD usage&lt;br /&gt;
     --ftp-pasv                                    Send PASV/EPSV instead of PORT&lt;br /&gt;
 -P, --ftp-port &amp;lt;address&amp;gt;                          Send PORT instead of PASV&lt;br /&gt;
     --ftp-pret                                    Send PRET before PASV&lt;br /&gt;
     --ftp-skip-pasv-ip                            Skip the IP address for PASV&lt;br /&gt;
     --ftp-ssl-ccc                                 Send CCC after authenticating&lt;br /&gt;
     --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;           Set CCC mode&lt;br /&gt;
     --ftp-ssl-control                             Require TLS for login, clear for transfer&lt;br /&gt;
 -G, --get                                         Put the post data in the URL and use GET&lt;br /&gt;
 -g, --globoff                                     Disable URL globbing with {} and []&lt;br /&gt;
     --happy-eyeballs-timeout-ms &amp;lt;ms&amp;gt;              Time for IPv6 before IPv4&lt;br /&gt;
     --haproxy-clientip &amp;lt;ip&amp;gt;                       Set address in HAProxy PROXY&lt;br /&gt;
     --haproxy-protocol                            Send HAProxy PROXY protocol v1 header&lt;br /&gt;
 -I, --head                                        Show document info only&lt;br /&gt;
 -H, --header &amp;lt;header/@file&amp;gt;                       Pass custom header(s) to server&lt;br /&gt;
 -h, --help &amp;lt;subject&amp;gt;                              Get help for commands&lt;br /&gt;
     --hostpubmd5 &amp;lt;md5&amp;gt;                            Acceptable MD5 hash of host public key&lt;br /&gt;
     --hostpubsha256 &amp;lt;sha256&amp;gt;                      Acceptable SHA256 hash of host public key&lt;br /&gt;
     --hsts &amp;lt;filename&amp;gt;                             Enable HSTS with this cache file&lt;br /&gt;
     --http0.9                                     Allow HTTP/0.9 responses&lt;br /&gt;
 -0, --http1.0                                     Use HTTP/1.0&lt;br /&gt;
     --http1.1                                     Use HTTP/1.1&lt;br /&gt;
     --http2                                       Use HTTP/2&lt;br /&gt;
     --http2-prior-knowledge                       Use HTTP/2 without HTTP/1.1 Upgrade&lt;br /&gt;
     --http3                                       Use HTTP/3&lt;br /&gt;
     --http3-only                                  Use HTTP/3 only&lt;br /&gt;
     --ignore-content-length                       Ignore the size of the remote resource&lt;br /&gt;
 -k, --insecure                                    Allow insecure server connections&lt;br /&gt;
     --interface &amp;lt;name&amp;gt;                            Use network interface&lt;br /&gt;
     --ip-tos &amp;lt;string&amp;gt;                             Set IP Type of Service or Traffic Class&lt;br /&gt;
     --ipfs-gateway &amp;lt;URL&amp;gt;                          Gateway for IPFS&lt;br /&gt;
 -4, --ipv4                                        Resolve names to IPv4 addresses&lt;br /&gt;
 -6, --ipv6                                        Resolve names to IPv6 addresses&lt;br /&gt;
     --json &amp;lt;data&amp;gt;                                 HTTP POST JSON&lt;br /&gt;
 -j, --junk-session-cookies                        Ignore session cookies read from file&lt;br /&gt;
     --keepalive-cnt &amp;lt;integer&amp;gt;                     Maximum number of keepalive probes&lt;br /&gt;
     --keepalive-time &amp;lt;seconds&amp;gt;                    Interval time for keepalive probes&lt;br /&gt;
     --key &amp;lt;key&amp;gt;                                   Private key filename&lt;br /&gt;
     --key-type &amp;lt;type&amp;gt;                             Private key file type (DER/PEM/ENG)&lt;br /&gt;
     --krb &amp;lt;level&amp;gt;                                 Enable Kerberos with security &amp;lt;level&amp;gt;&lt;br /&gt;
     --libcurl &amp;lt;file&amp;gt;                              Generate libcurl code for this command line&lt;br /&gt;
     --limit-rate &amp;lt;speed&amp;gt;                          Limit transfer speed to RATE&lt;br /&gt;
 -l, --list-only                                   List only mode&lt;br /&gt;
     --local-port &amp;lt;range&amp;gt;                          Use a local port number within RANGE&lt;br /&gt;
 -L, --location                                    Follow redirects&lt;br /&gt;
     --location-trusted                            As --location, but send secrets to other hosts&lt;br /&gt;
     --login-options &amp;lt;options&amp;gt;                     Server login options&lt;br /&gt;
     --mail-auth &amp;lt;address&amp;gt;                         Originator address of the original email&lt;br /&gt;
     --mail-from &amp;lt;address&amp;gt;                         Mail from this address&lt;br /&gt;
     --mail-rcpt &amp;lt;address&amp;gt;                         Mail to this address&lt;br /&gt;
     --mail-rcpt-allowfails                        Allow RCPT TO command to fail&lt;br /&gt;
 -M, --manual                                      Display the full manual&lt;br /&gt;
     --max-filesize &amp;lt;bytes&amp;gt;                        Maximum file size to download&lt;br /&gt;
     --max-redirs &amp;lt;num&amp;gt;                            Maximum number of redirects allowed&lt;br /&gt;
 -m, --max-time &amp;lt;seconds&amp;gt;                          Maximum time allowed for transfer&lt;br /&gt;
     --metalink                                    Process given URLs as metalink XML file&lt;br /&gt;
     --mptcp                                       Enable Multipath TCP&lt;br /&gt;
     --negotiate                                   Use HTTP Negotiate (SPNEGO) authentication&lt;br /&gt;
 -n, --netrc                                       Must read .netrc for username and password&lt;br /&gt;
     --netrc-file &amp;lt;filename&amp;gt;                       Specify FILE for netrc&lt;br /&gt;
     --netrc-optional                              Use either .netrc or URL&lt;br /&gt;
 -:, --next                                        Make next URL use separate options&lt;br /&gt;
     --no-alpn                                     Disable the ALPN TLS extension&lt;br /&gt;
 -N, --no-buffer                                   Disable buffering of the output stream&lt;br /&gt;
     --no-clobber                                  Do not overwrite files that already exist&lt;br /&gt;
     --no-keepalive                                Disable TCP keepalive on the connection&lt;br /&gt;
     --no-npn                                      Disable the NPN TLS extension&lt;br /&gt;
     --no-progress-meter                           Do not show the progress meter&lt;br /&gt;
     --no-sessionid                                Disable SSL session-ID reusing&lt;br /&gt;
     --noproxy &amp;lt;no-proxy-list&amp;gt;                     List of hosts which do not use proxy&lt;br /&gt;
     --ntlm                                        HTTP NTLM authentication&lt;br /&gt;
     --ntlm-wb                                     HTTP NTLM authentication with winbind&lt;br /&gt;
     --oauth2-bearer &amp;lt;token&amp;gt;                       OAuth 2 Bearer Token&lt;br /&gt;
 -o, --output &amp;lt;file&amp;gt;                               Write to file instead of stdout&lt;br /&gt;
     --output-dir &amp;lt;dir&amp;gt;                            Directory to save files in&lt;br /&gt;
 -Z, --parallel                                    Perform transfers in parallel&lt;br /&gt;
     --parallel-immediate                          Do not wait for multiplexing&lt;br /&gt;
     --parallel-max &amp;lt;num&amp;gt;                          Maximum concurrency for parallel transfers&lt;br /&gt;
     --pass &amp;lt;phrase&amp;gt;                               Passphrase for the private key&lt;br /&gt;
     --path-as-is                                  Do not squash .. sequences in URL path&lt;br /&gt;
     --pinnedpubkey &amp;lt;hashes&amp;gt;                       Public key to verify peer against&lt;br /&gt;
     --post301                                     Do not switch to GET after a 301 redirect&lt;br /&gt;
     --post302                                     Do not switch to GET after a 302 redirect&lt;br /&gt;
     --post303                                     Do not switch to GET after a 303 redirect&lt;br /&gt;
     --preproxy &amp;lt;[protocol://]host[:port]&amp;gt;         Use this proxy first&lt;br /&gt;
 -#, --progress-bar                                Display transfer progress as a bar&lt;br /&gt;
     --proto &amp;lt;protocols&amp;gt;                           Enable/disable PROTOCOLS&lt;br /&gt;
     --proto-default &amp;lt;protocol&amp;gt;                    Use PROTOCOL for any URL missing a scheme&lt;br /&gt;
     --proto-redir &amp;lt;protocols&amp;gt;                     Enable/disable PROTOCOLS on redirect&lt;br /&gt;
 -x, --proxy &amp;lt;[protocol://]host[:port]&amp;gt;            Use this proxy&lt;br /&gt;
     --proxy-anyauth                               Pick any proxy authentication method&lt;br /&gt;
     --proxy-basic                                 Use Basic authentication on the proxy&lt;br /&gt;
     --proxy-ca-native                             Load CA certs from the OS to verify proxy&lt;br /&gt;
     --proxy-cacert &amp;lt;file&amp;gt;                         CA certificates to verify proxy against&lt;br /&gt;
     --proxy-capath &amp;lt;dir&amp;gt;                          CA directory to verify proxy against&lt;br /&gt;
     --proxy-cert &amp;lt;cert[:passwd]&amp;gt;                  Set client certificate for proxy&lt;br /&gt;
     --proxy-cert-type &amp;lt;type&amp;gt;                      Client certificate type for HTTPS proxy&lt;br /&gt;
     --proxy-ciphers &amp;lt;list&amp;gt;                        TLS 1.2 (1.1, 1.0) ciphers to use for proxy&lt;br /&gt;
     --proxy-crlfile &amp;lt;file&amp;gt;                        Set a CRL list for proxy&lt;br /&gt;
     --proxy-digest                                Digest auth with the proxy&lt;br /&gt;
     --proxy-header &amp;lt;header/@file&amp;gt;                 Pass custom header(s) to proxy&lt;br /&gt;
     --proxy-http2                                 Use HTTP/2 with HTTPS proxy&lt;br /&gt;
     --proxy-insecure                              Skip HTTPS proxy cert verification&lt;br /&gt;
     --proxy-key &amp;lt;key&amp;gt;                             Private key for HTTPS proxy&lt;br /&gt;
     --proxy-key-type &amp;lt;type&amp;gt;                       Private key file type for proxy&lt;br /&gt;
     --proxy-negotiate                             HTTP Negotiate (SPNEGO) auth with the proxy&lt;br /&gt;
     --proxy-ntlm                                  NTLM authentication with the proxy&lt;br /&gt;
     --proxy-pass &amp;lt;phrase&amp;gt;                         Passphrase for private key for HTTPS proxy&lt;br /&gt;
     --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;                 FILE/HASHES public key to verify proxy with&lt;br /&gt;
     --proxy-service-name &amp;lt;name&amp;gt;                   SPNEGO proxy service name&lt;br /&gt;
     --proxy-ssl-allow-beast                       Allow this security flaw for HTTPS proxy&lt;br /&gt;
     --proxy-ssl-auto-client-cert                  Auto client certificate for proxy&lt;br /&gt;
     --proxy-tls13-ciphers &amp;lt;list&amp;gt;                  TLS 1.3 proxy cipher suites&lt;br /&gt;
     --proxy-tlsauthtype &amp;lt;type&amp;gt;                    TLS authentication type for HTTPS proxy&lt;br /&gt;
     --proxy-tlspassword &amp;lt;string&amp;gt;                  TLS password for HTTPS proxy&lt;br /&gt;
     --proxy-tlsuser &amp;lt;name&amp;gt;                        TLS username for HTTPS proxy&lt;br /&gt;
     --proxy-tlsv1                                 TLSv1 for HTTPS proxy&lt;br /&gt;
 -U, --proxy-user &amp;lt;user:password&amp;gt;                  Proxy user and password&lt;br /&gt;
     --proxy1.0 &amp;lt;host[:port]&amp;gt;                      Use HTTP/1.0 proxy on given port&lt;br /&gt;
 -p, --proxytunnel                                 HTTP proxy tunnel (using CONNECT)&lt;br /&gt;
     --pubkey &amp;lt;key&amp;gt;                                SSH Public key filename&lt;br /&gt;
 -Q, --quote &amp;lt;command&amp;gt;                             Send command(s) to server before transfer&lt;br /&gt;
     --random-file &amp;lt;file&amp;gt;                          File for reading random data from&lt;br /&gt;
 -r, --range &amp;lt;range&amp;gt;                               Retrieve only the bytes within RANGE&lt;br /&gt;
     --rate &amp;lt;max request rate&amp;gt;                     Request rate for serial transfers&lt;br /&gt;
     --raw                                         Do HTTP raw; no transfer decoding&lt;br /&gt;
 -e, --referer &amp;lt;URL&amp;gt;                               Referrer URL&lt;br /&gt;
 -J, --remote-header-name                          Use the header-provided filename&lt;br /&gt;
 -O, --remote-name                                 Write output to file named as remote file&lt;br /&gt;
     --remote-name-all                             Use the remote filename for all URLs&lt;br /&gt;
 -R, --remote-time                                 Set remote file&#039;s time on local output&lt;br /&gt;
     --remove-on-error                             Remove output file on errors&lt;br /&gt;
 -X, --request &amp;lt;method&amp;gt;                            Specify request method to use&lt;br /&gt;
     --request-target &amp;lt;path&amp;gt;                       Specify the target for this request&lt;br /&gt;
     --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;       Resolve host+port to address&lt;br /&gt;
     --retry &amp;lt;num&amp;gt;                                 Retry request if transient problems occur&lt;br /&gt;
     --retry-all-errors                            Retry all errors (with --retry)&lt;br /&gt;
     --retry-connrefused                           Retry on connection refused (with --retry)&lt;br /&gt;
     --retry-delay &amp;lt;seconds&amp;gt;                       Wait time between retries&lt;br /&gt;
     --retry-max-time &amp;lt;seconds&amp;gt;                    Retry only within this period&lt;br /&gt;
     --sasl-authzid &amp;lt;identity&amp;gt;                     Identity for SASL PLAIN authentication&lt;br /&gt;
     --sasl-ir                                     Initial response in SASL authentication&lt;br /&gt;
     --service-name &amp;lt;name&amp;gt;                         SPNEGO service name&lt;br /&gt;
 -S, --show-error                                  Show error even when -s is used&lt;br /&gt;
 -i, --show-headers                                Show response headers in output&lt;br /&gt;
     --sigalgs &amp;lt;list&amp;gt;                              TLS signature algorithms to use&lt;br /&gt;
 -s, --silent                                      Silent mode&lt;br /&gt;
     --skip-existing                               Skip download if local file already exists&lt;br /&gt;
     --socks4 &amp;lt;host[:port]&amp;gt;                        SOCKS4 proxy on given host + port&lt;br /&gt;
     --socks4a &amp;lt;host[:port]&amp;gt;                       SOCKS4a proxy on given host + port&lt;br /&gt;
     --socks5 &amp;lt;host[:port]&amp;gt;                        SOCKS5 proxy on given host + port&lt;br /&gt;
     --socks5-basic                                Username/password auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi                               Enable GSS-API auth for SOCKS5 proxies&lt;br /&gt;
     --socks5-gssapi-nec                           Compatibility with NEC SOCKS5 server&lt;br /&gt;
     --socks5-gssapi-service &amp;lt;name&amp;gt;                SOCKS5 proxy service name for GSS-API&lt;br /&gt;
     --socks5-hostname &amp;lt;host[:port]&amp;gt;               SOCKS5 proxy, pass hostname to proxy&lt;br /&gt;
 -Y, --speed-limit &amp;lt;speed&amp;gt;                         Stop transfers slower than this&lt;br /&gt;
 -y, --speed-time &amp;lt;seconds&amp;gt;                        Trigger &#039;speed-limit&#039; abort after this time&lt;br /&gt;
     --ssl                                         Try enabling TLS&lt;br /&gt;
     --ssl-allow-beast                             Allow security flaw to improve interop&lt;br /&gt;
     --ssl-auto-client-cert                        Use auto client certificate (Schannel)&lt;br /&gt;
     --ssl-no-revoke                               Disable cert revocation checks (Schannel)&lt;br /&gt;
     --ssl-reqd                                    Require SSL/TLS&lt;br /&gt;
     --ssl-revoke-best-effort                      Ignore missing cert CRL dist points&lt;br /&gt;
     --ssl-sessions &amp;lt;filename&amp;gt;                     Load/save SSL session tickets from/to this file&lt;br /&gt;
 -2, --sslv2                                       SSLv2&lt;br /&gt;
 -3, --sslv3                                       SSLv3&lt;br /&gt;
     --stderr &amp;lt;file&amp;gt;                               Where to redirect stderr&lt;br /&gt;
     --styled-output                               Enable styled output for HTTP headers&lt;br /&gt;
     --suppress-connect-headers                    Suppress proxy CONNECT response headers&lt;br /&gt;
     --tcp-fastopen                                Use TCP Fast Open&lt;br /&gt;
     --tcp-nodelay                                 Set TCP_NODELAY&lt;br /&gt;
 -t, --telnet-option &amp;lt;opt=val&amp;gt;                     Set telnet option&lt;br /&gt;
     --tftp-blksize &amp;lt;value&amp;gt;                        Set TFTP BLKSIZE option&lt;br /&gt;
     --tftp-no-options                             Do not send any TFTP options&lt;br /&gt;
 -z, --time-cond &amp;lt;time&amp;gt;                            Transfer based on a time condition&lt;br /&gt;
     --tls-earlydata                               Allow use of TLSv1.3 early data (0RTT)&lt;br /&gt;
     --tls-max &amp;lt;VERSION&amp;gt;                           Maximum allowed TLS version&lt;br /&gt;
     --tls13-ciphers &amp;lt;list&amp;gt;                        TLS 1.3 cipher suites to use&lt;br /&gt;
     --tlsauthtype &amp;lt;type&amp;gt;                          TLS authentication type&lt;br /&gt;
     --tlspassword &amp;lt;string&amp;gt;                        TLS password&lt;br /&gt;
     --tlsuser &amp;lt;name&amp;gt;                              TLS username&lt;br /&gt;
 -1, --tlsv1                                       TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.0                                     TLSv1.0 or greater&lt;br /&gt;
     --tlsv1.1                                     TLSv1.1 or greater&lt;br /&gt;
     --tlsv1.2                                     TLSv1.2 or greater&lt;br /&gt;
     --tlsv1.3                                     TLSv1.3 or greater&lt;br /&gt;
     --tr-encoding                                 Request compressed transfer encoding&lt;br /&gt;
     --trace &amp;lt;file&amp;gt;                                Write a debug trace to FILE&lt;br /&gt;
     --trace-ascii &amp;lt;file&amp;gt;                          Like --trace, but without hex output&lt;br /&gt;
     --trace-config &amp;lt;string&amp;gt;                       Details to log in trace/verbose output&lt;br /&gt;
     --trace-ids                                   Transfer + connection ids in verbose output&lt;br /&gt;
     --trace-time                                  Add time stamps to trace/verbose output&lt;br /&gt;
     --unix-socket &amp;lt;path&amp;gt;                          Connect through this Unix domain socket&lt;br /&gt;
 -T, --upload-file &amp;lt;file&amp;gt;                          Transfer local FILE to destination&lt;br /&gt;
     --upload-flags &amp;lt;flags&amp;gt;                        IMAP upload behavior&lt;br /&gt;
     --url &amp;lt;url/file&amp;gt;                              URL(s) to work with&lt;br /&gt;
     --url-query &amp;lt;data&amp;gt;                            Add a URL query part&lt;br /&gt;
 -B, --use-ascii                                   Use ASCII/text transfer&lt;br /&gt;
 -u, --user &amp;lt;user:password&amp;gt;                        Server user and password&lt;br /&gt;
 -A, --user-agent &amp;lt;name&amp;gt;                           Send User-Agent &amp;lt;name&amp;gt; to server&lt;br /&gt;
     --variable &amp;lt;[%]name=text/@file&amp;gt;               Set variable&lt;br /&gt;
 -v, --verbose                                     Make the operation more talkative&lt;br /&gt;
 -V, --version                                     Show version number and quit&lt;br /&gt;
     --vlan-priority &amp;lt;priority&amp;gt;                    Set VLAN priority&lt;br /&gt;
 -w, --write-out &amp;lt;format&amp;gt;                          Output FORMAT after completion&lt;br /&gt;
     --xattr                                       Store metadata in extended file attributes&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
curl(1)                                                                                          curl Manual                                                                                          curl(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       curl - transfer a URL&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       curl [options / URLs]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       curl  is a tool for transferring data from or to a server. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS,&lt;br /&gt;
       RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. The command is designed to work without user interaction.&lt;br /&gt;
&lt;br /&gt;
       curl offers a busload of useful tricks like proxy support, user authentication, FTP upload, HTTP post, SSL connections, cookies, file transfer resume and more. As you will see below, the  number  of&lt;br /&gt;
       features will make your head spin.&lt;br /&gt;
&lt;br /&gt;
       curl is powered by libcurl for all transfer-related features. See libcurl(3) for details.&lt;br /&gt;
&lt;br /&gt;
URL&lt;br /&gt;
       The URL syntax is protocol-dependent. You find a detailed description in RFC 3986.&lt;br /&gt;
&lt;br /&gt;
       You can specify multiple URLs or parts of URLs by writing part sets within braces and quoting the URL as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://site.{one,two,three}.com&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       or you can get sequences of alphanumeric series by using [] as in:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[1-100].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[001-100].txt&amp;quot;    (with leading zeros)&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;ftp://ftp.example.com/file[a-z].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       Nested sequences are not supported, but you can use several ones next to each other:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/archive[1996-1999]/vol[1-4]/part{a,b,c}.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       You  can  specify  any amount of URLs on the command line. They will be fetched in a sequential manner in the specified order. You can specify command line options and URLs mixed and in any order on&lt;br /&gt;
       the command line.&lt;br /&gt;
&lt;br /&gt;
       You can specify a step counter for the ranges to get every Nth number or letter:&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[1-100:10].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://example.com/file[a-z:2].txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       When using [] or {} sequences when invoked from a command line prompt, you probably have to put the full URL within double quotes to avoid the shell from interfering with  it.  This  also  goes  for&lt;br /&gt;
       other characters treated special, like for example &#039;&amp;amp;&#039;, &#039;?&#039; and &#039;*&#039;.&lt;br /&gt;
&lt;br /&gt;
       Provide the IPv6 zone index in the URL with an escaped percentage sign and the interface name. Like in&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;http://[fe80::3%25eth0]/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       If  you  specify URL without protocol:// prefix, curl will attempt to guess what protocol you might want. It will then default to HTTP but try other protocols based on often-used host name prefixes.&lt;br /&gt;
       For example, for host names starting with &amp;quot;ftp.&amp;quot; curl will assume you want to speak FTP.&lt;br /&gt;
&lt;br /&gt;
       curl will do its best to use what you pass to it as a URL. It is not trying to validate it as a syntactically correct URL by any means but is fairly liberal with what it accepts.&lt;br /&gt;
&lt;br /&gt;
       curl will attempt to re-use connections for multiple file transfers, so that getting many files from the same server will not do multiple connects / handshakes. This improves speed. Of  course  this&lt;br /&gt;
       is only done on files specified on a single command line and cannot be used between separate curl invocations.&lt;br /&gt;
&lt;br /&gt;
OUTPUT&lt;br /&gt;
       If  not  told  otherwise,  curl  writes the received data to stdout. It can be instructed to instead save that data into a local file, using the -o, --output or -O, --remote-name options. If curl is&lt;br /&gt;
       given multiple URLs to transfer on the command line, it similarly needs multiple options for where to save them.&lt;br /&gt;
&lt;br /&gt;
       curl does not parse or otherwise &amp;quot;understand&amp;quot; the content it gets or writes as output. It does no encoding or decoding, unless explicitly asked to with dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
PROTOCOLS&lt;br /&gt;
       curl supports numerous protocols, or put in URL terms: schemes. Your particular build may not support them all.&lt;br /&gt;
&lt;br /&gt;
       DICT   Lets you lookup words using online dictionaries.&lt;br /&gt;
&lt;br /&gt;
       FILE   Read or write local files. curl does not support accessing file:// URL remotely, but when running on Microsoft Windows using the native UNC approach will work.&lt;br /&gt;
&lt;br /&gt;
       FTP(S) curl supports the File Transfer Protocol with a lot of tweaks and levers. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       GOPHER(S)&lt;br /&gt;
              Retrieve files.&lt;br /&gt;
&lt;br /&gt;
       HTTP(S)&lt;br /&gt;
              curl supports HTTP with numerous options and variations. It can speak HTTP version 0.9, 1.0, 1.1, 2 and 3 depending on build options and the correct command line options.&lt;br /&gt;
&lt;br /&gt;
       IMAP(S)&lt;br /&gt;
              Using the mail reading protocol, curl can &amp;quot;download&amp;quot; emails for you. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       LDAP(S)&lt;br /&gt;
              curl can do directory lookups for you, with or without TLS.&lt;br /&gt;
&lt;br /&gt;
       MQTT   curl supports MQTT version 3. Downloading over MQTT equals &amp;quot;subscribe&amp;quot; to a topic while uploading/posting equals &amp;quot;publish&amp;quot; on a topic. MQTT over TLS is not supported (yet).&lt;br /&gt;
&lt;br /&gt;
       POP3(S)&lt;br /&gt;
              Downloading from a pop3 server means getting a mail. With or without using TLS.&lt;br /&gt;
&lt;br /&gt;
       RTMP(S)&lt;br /&gt;
              The Realtime Messaging Protocol is primarily used to server streaming media and curl can download it.&lt;br /&gt;
&lt;br /&gt;
       RTSP   curl supports RTSP 1.0 downloads.&lt;br /&gt;
&lt;br /&gt;
       SCP    curl supports SSH version 2 scp transfers.&lt;br /&gt;
&lt;br /&gt;
       SFTP   curl supports SFTP (draft 5) done over SSH version 2.&lt;br /&gt;
&lt;br /&gt;
       SMB(S) curl supports SMB version 1 for upload and download.&lt;br /&gt;
&lt;br /&gt;
       SMTP(S)&lt;br /&gt;
              Uploading contents to an SMTP server means sending an email. With or without TLS.&lt;br /&gt;
&lt;br /&gt;
       TELNET Telling curl to fetch a telnet URL starts an interactive session where it sends what it reads on stdin and outputs what the server sends it.&lt;br /&gt;
&lt;br /&gt;
       TFTP   curl can do TFTP downloads and uploads.&lt;br /&gt;
&lt;br /&gt;
PROGRESS METER&lt;br /&gt;
       curl normally displays a progress meter during operations, indicating the amount of transferred data, transfer speeds and estimated time left, etc. The progress meter displays the transfer  rate  in&lt;br /&gt;
       bytes per second. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024 bytes. 1M is 1048576 bytes.&lt;br /&gt;
&lt;br /&gt;
       curl  displays this data to the terminal by default, so if you invoke curl to do an operation and it is about to write data to the terminal, it disables the progress meter as otherwise it would mess&lt;br /&gt;
       up the output mixing progress meter and response data.&lt;br /&gt;
&lt;br /&gt;
       If you want a progress meter for HTTP POST or PUT requests, you need to redirect the response output to a file, using shell redirect (&amp;gt;), -o, --output or similar.&lt;br /&gt;
&lt;br /&gt;
       This does not apply to FTP upload as that operation does not spit out any response data to the terminal.&lt;br /&gt;
&lt;br /&gt;
       If you prefer a progress &amp;quot;bar&amp;quot; instead of the regular meter, -#, --progress-bar is your friend. You can also disable the progress meter completely with the -s, --silent option.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       Options start with one or two dashes. Many of the options require an additional value next to them.&lt;br /&gt;
&lt;br /&gt;
       The short &amp;quot;single-dash&amp;quot; form of the options, -d for example, may be used with or without a space between it and its value, although a space is a recommended separator. The long  &amp;quot;double-dash&amp;quot;  form,&lt;br /&gt;
       -d, --data for example, requires a space between it and its value.&lt;br /&gt;
&lt;br /&gt;
       Short version options that do not need any additional values can be used immediately next to each other, like for example you can specify all the options -O, -L and -v at once as -OLv.&lt;br /&gt;
&lt;br /&gt;
       In  general,  all  boolean  options are enabled with --option and yet again disabled with --no-option. That is, you use the same option name but prefix it with &amp;quot;no-&amp;quot;. However, in this list we mostly&lt;br /&gt;
       only list and show the --option version of them.&lt;br /&gt;
&lt;br /&gt;
       --abstract-unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through an abstract Unix domain socket, instead of using the network.  Note: netstat shows the path of an abstract socket prefixed with &#039;@&#039;, however the &amp;lt;path&amp;gt; argument  should&lt;br /&gt;
              not have this leading character.&lt;br /&gt;
&lt;br /&gt;
              If --abstract-unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --abstract-unix-socket socketpath https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --unix-socket. Added in 7.53.0.&lt;br /&gt;
&lt;br /&gt;
       --alt-svc &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS)  This  option  enables the alt-svc parser in curl. If the file name points to an existing alt-svc cache file, that will be used. After a completed transfer, the cache will be saved to&lt;br /&gt;
              the file name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle the cache in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --alt-svc can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --alt-svc svc.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --connect-to. Added in 7.64.1.&lt;br /&gt;
&lt;br /&gt;
       --anyauth&lt;br /&gt;
              (HTTP) Tells curl to figure out authentication method by itself, and use the most secure one the remote site claims to support. This is done by first doing a  request  and  checking  the  re‐&lt;br /&gt;
              sponse-headers,  thus  possibly  inducing  an  extra network round-trip. This is used instead of setting a specific authentication method, which you can do with --basic, --digest, --ntlm, and&lt;br /&gt;
              --negotiate.&lt;br /&gt;
&lt;br /&gt;
              Using --anyauth is not recommended if you do uploads from stdin, since it may require data to be sent twice and then the client must be able to rewind. If the need should arise when uploading&lt;br /&gt;
              from stdin, the upload operation will fail.&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --anyauth --user me:pwd https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth, --basic and --digest.&lt;br /&gt;
&lt;br /&gt;
       -a, --append&lt;br /&gt;
              (FTP  SFTP)  When used in an upload, this makes curl append to the target file instead of overwriting it. If the remote file does not exist, it will be created. Note that this flag is ignored&lt;br /&gt;
              by some SFTP servers (including OpenSSH).&lt;br /&gt;
&lt;br /&gt;
              Providing -a, --append multiple times has no extra effect.  Disable it again with --no-append.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --upload-file local --append ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range and -C, --continue-at.&lt;br /&gt;
&lt;br /&gt;
       --aws-sigv4 &amp;lt;provider1[:provider2[:region[:service]]]&amp;gt;&lt;br /&gt;
              Use AWS V4 signature authentication in the transfer.&lt;br /&gt;
&lt;br /&gt;
              The provider argument is a string that is used by the algorithm when creating outgoing authentication headers.&lt;br /&gt;
&lt;br /&gt;
              The region argument is a string that points to a geographic area of a resources collection (region-code) when the region name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              The service argument is a string that points to a function provided by a cloud (service-code) when the service name is omitted from the endpoint.&lt;br /&gt;
&lt;br /&gt;
              If --aws-sigv4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --aws-sigv4 &amp;quot;aws:amz:east-2:es&amp;quot; --user &amp;quot;key:secret&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic and -u, --user. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --basic&lt;br /&gt;
              (HTTP) Tells curl to use HTTP Basic authentication with the remote host. This is the default and this option is usually pointless, unless you use it to override a previously set  option  that&lt;br /&gt;
              sets a different authentication method (such as --ntlm, --digest, or --negotiate).&lt;br /&gt;
&lt;br /&gt;
              Used together with -u, --user.&lt;br /&gt;
&lt;br /&gt;
              Providing --basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --basic https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate file to verify the peer. The file may contain multiple CA certificates. The certificate(s) must be in PEM format. Normally curl is built to&lt;br /&gt;
              use a default file for this, so this option is typically used to alter that default file.&lt;br /&gt;
&lt;br /&gt;
              curl recognizes the environment variable named &#039;CURL_CA_BUNDLE&#039; if it is set, and uses the given path as a path to a CA cert bundle. This option overrides that variable.&lt;br /&gt;
&lt;br /&gt;
              The windows version of curl will automatically look for a CA certs file named &#039;curl-ca-bundle.crt&#039;, either in the same directory as curl.exe, or in the Current Working Directory,  or  in  any&lt;br /&gt;
              folder along your PATH.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module (libnsspem.so) needs to be available for this option to work properly.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then this option is supported for backward compatibility with other SSL engines, but it should not be set. If the option is not&lt;br /&gt;
              set, then curl will use the certificates in the system and user Keychain to verify the peer, which is the preferred method of verifying the peer&#039;s certificate chain.&lt;br /&gt;
&lt;br /&gt;
              (Schannel only) This option is supported for Schannel in Windows 7 or later with libcurl 7.60 or later. This option is supported for backward compatibility with other SSL engines; instead  it&lt;br /&gt;
              is recommended to use Windows&#039; store of root certificates (the default for Schannel).&lt;br /&gt;
&lt;br /&gt;
              If --cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cacert CA-file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --capath and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified certificate directory to verify the peer. Multiple paths can be provided by separating them with &amp;quot;:&amp;quot; (e.g.  &amp;quot;path1:path2:path3&amp;quot;). The certificates must&lt;br /&gt;
              be in PEM format, and if curl is built against OpenSSL, the directory must have been processed using the c_rehash utility supplied with OpenSSL. Using --capath can allow OpenSSL-powered  curl&lt;br /&gt;
              to make SSL-connections much more efficiently than using --cacert if the --cacert file contains many CA certificates.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default capath value will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --capath /local/directory https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --cert-status&lt;br /&gt;
              (TLS) Tells curl to verify the status of the server certificate by using the Certificate Status Request (aka. OCSP stapling) TLS extension.&lt;br /&gt;
&lt;br /&gt;
              If  this  option  is enabled and the server sends an invalid (e.g. expired) response, if the response suggests that the server certificate has been revoked, or no response at all is received,&lt;br /&gt;
              the verification fails.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --cert-status multiple times has no extra effect.  Disable it again with --no-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-status https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey. Added in 7.41.0.&lt;br /&gt;
&lt;br /&gt;
       --cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Tells curl what type the provided client certificate is using. PEM, DER, ENG and P12 are recognized types.&lt;br /&gt;
&lt;br /&gt;
              The default type depends on the TLS backend and is usually PEM, however for Secure Transport and Schannel it is P12. If -E, --cert is a pkcs11: URI then ENG is the default type.&lt;br /&gt;
&lt;br /&gt;
              If --cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert-type PEM --cert file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -E, --cert, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       -E, --cert &amp;lt;certificate[:password]&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified client certificate file when getting a file with HTTPS, FTPS or another SSL-based protocol. The certificate must be in PKCS#12  format  if  using  Secure&lt;br /&gt;
              Transport, or PEM format if using any other engine. If the optional password is not specified, it will be queried for on the terminal. Note that this option assumes a certificate file that is&lt;br /&gt;
              the private key and the client certificate concatenated. See -E, --cert and --key to specify them independently.&lt;br /&gt;
&lt;br /&gt;
              In the &amp;lt;certificate&amp;gt; portion of the argument, you must escape the character &amp;quot;:&amp;quot; as &amp;quot;\:&amp;quot; so that it is not recognized as the password delimiter. Similarly, you must escape the character &amp;quot;\&amp;quot; as&lt;br /&gt;
              &amp;quot;\\&amp;quot; so that it is not recognized as an escape character.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against the NSS SSL library then this option can tell curl the nickname of the certificate to use within the NSS database defined by the environment variable SSL_DIR (or by&lt;br /&gt;
              default /etc/pki/nssdb). If the NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files may be loaded.&lt;br /&gt;
&lt;br /&gt;
              If you provide a path relative to the current directory, you must prefix the path with &amp;quot;./&amp;quot; in order to avoid confusion with an NSS database nickname.&lt;br /&gt;
&lt;br /&gt;
              If curl is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a certificate located in a PKCS#11 device. A  string  begin‐&lt;br /&gt;
              ning  with  &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --cert-type option will&lt;br /&gt;
              be set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              (iOS and macOS only) If curl is built against Secure Transport, then the certificate string can either be the name of a certificate/private key in the system or user keychain, or the path  to&lt;br /&gt;
              a PKCS#12-encoded certificate and private key. If you want to use a file from the current directory, please precede it with &amp;quot;./&amp;quot; prefix, in order to avoid confusion with a nickname.&lt;br /&gt;
&lt;br /&gt;
              (Schannel  only) Client certificates must be specified by a path expression to a certificate store. (Loading PFX is not supported; you can import it to a store first). You can use &amp;quot;&amp;lt;store lo‐&lt;br /&gt;
              cation&amp;gt;\&amp;lt;store name&amp;gt;\&amp;lt;thumbprint&amp;gt;&amp;quot; to refer to a certificate in the system certificates store, for example, &amp;quot;CurrentUser\MY\934a7ac6f8a5d579285a74fa61e19f23ddfe8d7a&amp;quot;. Thumbprint is usually  a&lt;br /&gt;
              SHA-1  hex string which you can see in certificate details. Following store locations are supported: CurrentUser, LocalMachine, CurrentService, Services, CurrentUserGroupPolicy, LocalMachine‐&lt;br /&gt;
              GroupPolicy, LocalMachineEnterprise.&lt;br /&gt;
&lt;br /&gt;
              If -E, --cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certfile --key keyfile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cert-type, --key and --key-type.&lt;br /&gt;
&lt;br /&gt;
       --ciphers &amp;lt;list of ciphers&amp;gt;&lt;br /&gt;
              (TLS) Specifies which ciphers to use in the connection. The list of ciphers must specify valid ciphers. Read up on SSL cipher list details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              If --ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --compressed-ssh&lt;br /&gt;
              (SCP SFTP) Enables built-in SSH compression.  This is a request, not an order; the server may or may not do it.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed-ssh multiple times has no extra effect.  Disable it again with --no-compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed-ssh sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --compressed. Added in 7.56.0.&lt;br /&gt;
&lt;br /&gt;
       --compressed&lt;br /&gt;
              (HTTP) Request a compressed response using one of the algorithms curl supports, and automatically decompress the content. Headers are not modified.&lt;br /&gt;
&lt;br /&gt;
              If this option is used and the server sends an unsupported encoding, curl will report an error. This is a request, not an order; the server may or may not deliver data compressed.&lt;br /&gt;
&lt;br /&gt;
              Providing --compressed multiple times has no extra effect.  Disable it again with --no-compressed.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --compressed https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed-ssh.&lt;br /&gt;
&lt;br /&gt;
       -K, --config &amp;lt;file&amp;gt;&lt;br /&gt;
              Specify a text file to read curl arguments from. The command line arguments found in the text file will be used as if they were provided on the command line.&lt;br /&gt;
&lt;br /&gt;
              Options and their parameters must be specified on the same line in the file, separated by whitespace, colon, or the equals sign. Long option names can optionally be given in the  config  file&lt;br /&gt;
              without the initial double dashes and if so, the colon or equals characters can be used as separators. If the option is specified with one or two dashes, there can be no colon or equals char‐&lt;br /&gt;
              acter between the option and its parameter.&lt;br /&gt;
&lt;br /&gt;
              If the parameter contains whitespace (or starts with : or =), the parameter must be enclosed within quotes. Within double quotes, the following escape sequences are available: \\, \&amp;quot;, \t, \n,&lt;br /&gt;
              \r and \v. A backslash preceding any other letter is ignored.&lt;br /&gt;
&lt;br /&gt;
              If the first column of a config line is a &#039;#&#039; character, the rest of the line will be treated as a comment.&lt;br /&gt;
&lt;br /&gt;
              Only write one option per physical line in the config file.&lt;br /&gt;
&lt;br /&gt;
              Specify the filename to -K, --config as &#039;-&#039; to make curl read the file from stdin.&lt;br /&gt;
&lt;br /&gt;
              Note that to be able to specify a URL in the config file, you need to specify it using the --url option, and not by simply writing the URL on its own line. So, it could look similar to this:&lt;br /&gt;
&lt;br /&gt;
              url = &amp;quot;https://curl.se/docs/&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # --- Example file ---&lt;br /&gt;
               # this is a comment&lt;br /&gt;
               url = &amp;quot;example.com&amp;quot;&lt;br /&gt;
               output = &amp;quot;curlhere.html&amp;quot;&lt;br /&gt;
               user-agent = &amp;quot;superagent/1.0&amp;quot;&lt;br /&gt;
&lt;br /&gt;
               # and fetch another URL too&lt;br /&gt;
               url = &amp;quot;example.com/docs/manpage.html&amp;quot;&lt;br /&gt;
               -O&lt;br /&gt;
               referer = &amp;quot;http://nowhereatall.example.com/&amp;quot;&lt;br /&gt;
               # --- End of example file ---&lt;br /&gt;
&lt;br /&gt;
              When  curl  is  invoked, it (unless -q, --disable is used) checks for a default config file and uses it if found, even when -K, --config is used. The default config file is checked for in the&lt;br /&gt;
              following places in this order:&lt;br /&gt;
&lt;br /&gt;
              1) &amp;quot;$CURL_HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              2) &amp;quot;$XDG_CONFIG_HOME/.curlrc&amp;quot; (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              3) &amp;quot;$HOME/.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              4) Windows: &amp;quot;%USERPROFILE%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              5) Windows: &amp;quot;%APPDATA%\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              6) Windows: &amp;quot;%USERPROFILE%\Application Data\.curlrc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              7) Non-Windows: use getpwuid to find the home directory&lt;br /&gt;
&lt;br /&gt;
              8) On Windows, if it finds no .curlrc file in the sequence described above, it checks for one in the same dir the curl executable is placed.&lt;br /&gt;
&lt;br /&gt;
              On Windows two filenames are checked per location: .curlrc and _curlrc, preferring the former. Older versions on Windows checked for _curlrc only.&lt;br /&gt;
&lt;br /&gt;
              -K, --config can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --config file.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --connect-timeout &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow curl&#039;s connection to take.  This only limits the connection phase, so if curl connects within the given period it will continue - if not it  will  exit.&lt;br /&gt;
              Since version 7.32.0, this option accepts decimal values.&lt;br /&gt;
&lt;br /&gt;
              The &amp;quot;connection phase&amp;quot; is considered complete when the requested TCP, TLS or QUIC handshakes are done.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --connect-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --connect-timeout 20 https://example.com&lt;br /&gt;
               curl --connect-timeout 3.14 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --connect-to &amp;lt;HOST1:PORT1:HOST2:PORT2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
              For  a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead.  This option is suitable to direct requests at a specific server, e.g. at a specific cluster node in a cluster of&lt;br /&gt;
              servers. This option is only used to establish the network connection. It does NOT affect the hostname/port that is used for TLS/SSL (e.g. SNI, certificate verification) or for  the  applica‐&lt;br /&gt;
              tion protocols. &amp;quot;HOST1&amp;quot; and &amp;quot;PORT1&amp;quot; may be the empty string, meaning &amp;quot;any host/port&amp;quot;. &amp;quot;HOST2&amp;quot; and &amp;quot;PORT2&amp;quot; may also be the empty string, meaning &amp;quot;use the request&#039;s original host/port&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              A &amp;quot;host&amp;quot; specified to this option is compared as a string, so it needs to match the name used in request URL. It can be either numerical such as &amp;quot;127.0.0.1&amp;quot; or the full host name such as &amp;quot;ex‐&lt;br /&gt;
              ample.org&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              --connect-to can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --connect-to example.com:443:example.net:8443 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and -H, --header. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       -C, --continue-at &amp;lt;offset&amp;gt;&lt;br /&gt;
              Continue/Resume a previous file transfer at the given offset. The given offset is the exact number of bytes that will be skipped, counting from the beginning of the source file before  it  is&lt;br /&gt;
              transferred to the destination. If used with uploads, the FTP server command SIZE will not be used by curl.&lt;br /&gt;
&lt;br /&gt;
              Use &amp;quot;-C -&amp;quot; to tell curl to automatically find out where/how to resume the transfer. It then uses the given output/input files to figure that out.&lt;br /&gt;
&lt;br /&gt;
              If -C, --continue-at is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -C - https://example.com&lt;br /&gt;
               curl -C 400 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -r, --range.&lt;br /&gt;
&lt;br /&gt;
       -c, --cookie-jar &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP)  Specify  to which file you want curl to write all cookies after a completed operation. Curl writes all cookies from its in-memory cookie storage to the given file at the end of opera‐&lt;br /&gt;
              tions. If no cookies are known, no data will be written. The file will be written using the Netscape cookie file format. If you set the file name to a single dash, &amp;quot;-&amp;quot;, the  cookies  will  be&lt;br /&gt;
              written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This command line option will activate the cookie engine that makes curl record and use cookies. Another way to activate it is to use the -b, --cookie option.&lt;br /&gt;
&lt;br /&gt;
              If  the  cookie  jar cannot be created or written to, the whole curl operation will not fail or even report an error clearly. Using -v, --verbose will get a warning displayed, but that is the&lt;br /&gt;
              only visible feedback you get about this possibly lethal situation.&lt;br /&gt;
&lt;br /&gt;
              If -c, --cookie-jar is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -c store-here.txt https://example.com&lt;br /&gt;
               curl -c store-here.txt -b read-these https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie.&lt;br /&gt;
&lt;br /&gt;
       -b, --cookie &amp;lt;data|filename&amp;gt;&lt;br /&gt;
              (HTTP) Pass the data to the HTTP server in the Cookie header. It is supposedly the data previously received from the server in  a  &amp;quot;Set-Cookie:&amp;quot;  line.  The  data  should  be  in  the  format&lt;br /&gt;
              &amp;quot;NAME1=VALUE1;  NAME2=VALUE2&amp;quot;.  This  makes  curl  use the cookie header with this content explicitly in all outgoing request(s). If multiple requests are done due to authentication, followed&lt;br /&gt;
              redirects or similar, they will all get this cookie passed on.&lt;br /&gt;
&lt;br /&gt;
              If no &#039;=&#039; symbol is used in the argument, it is instead treated as a filename to read previously stored cookie from. This option also activates the cookie engine which will make  curl  record&lt;br /&gt;
              incoming  cookies,  which may be handy if you are using this in combination with the -L, --location option or do multiple URL transfers on the same invoke. If the file name is exactly a minus&lt;br /&gt;
              (&amp;quot;-&amp;quot;), curl will instead read the contents from stdin.&lt;br /&gt;
&lt;br /&gt;
              The file format of the file to read cookies from should be plain HTTP headers (Set-Cookie style) or the Netscape/Mozilla cookie file format.&lt;br /&gt;
&lt;br /&gt;
              The file specified with -b, --cookie is only used as input. No cookies will be written to the file. To store cookies, use the -c, --cookie-jar option.&lt;br /&gt;
&lt;br /&gt;
              If you use the Set-Cookie file format and do not specify a domain then the cookie is not sent since the domain will never match. To address this, set a domain in Set-Cookie line  (doing  that&lt;br /&gt;
              will include sub-domains) or preferably: use the Netscape format.&lt;br /&gt;
&lt;br /&gt;
              Users often want to both read cookies from a file and write updated cookies back to a file, so using both -b, --cookie and -c, --cookie-jar in the same command line is common.&lt;br /&gt;
&lt;br /&gt;
              -b, --cookie can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -b cookiefile https://example.com&lt;br /&gt;
               curl -b cookiefile -c cookiefile https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -c, --cookie-jar and -j, --junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
       --create-dirs&lt;br /&gt;
              When  used in conjunction with the -o, --output option, curl will create the necessary local directory hierarchy as needed. This option creates the directories mentioned with the -o, --output&lt;br /&gt;
              option, nothing else. If the -o, --output file name uses no directory, or if the directories it mentions already exist, no directories will be created.&lt;br /&gt;
&lt;br /&gt;
              Created dirs are made with mode 0750 on unix style file systems.&lt;br /&gt;
&lt;br /&gt;
              To create remote directories when using FTP or SFTP, try --ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Providing --create-dirs multiple times has no extra effect.  Disable it again with --no-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-dirs --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs and --output-dir.&lt;br /&gt;
&lt;br /&gt;
       --create-file-mode &amp;lt;mode&amp;gt;&lt;br /&gt;
              (SFTP SCP FILE) When curl is used to create files remotely using one of the supported protocols, this option allows the user to set which &#039;mode&#039; to set on the file at creation  time,  instead&lt;br /&gt;
              of the default 0644.&lt;br /&gt;
&lt;br /&gt;
              This option takes an octal number as argument.&lt;br /&gt;
&lt;br /&gt;
              If --create-file-mode is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --create-file-mode 0777 -T localfile sftp://example.com/new&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-create-dirs. Added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
       --crlf (FTP SMTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).&lt;br /&gt;
&lt;br /&gt;
              (SMTP added in 7.40.0)&lt;br /&gt;
&lt;br /&gt;
              Providing --crlf multiple times has no extra effect.  Disable it again with --no-crlf.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlf -T file ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -B, --use-ascii.&lt;br /&gt;
&lt;br /&gt;
       --crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Provide a file using PEM format with a Certificate Revocation List that may specify peer certificates that are to be considered revoked.&lt;br /&gt;
&lt;br /&gt;
              If --crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --crlfile rejects.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --curves &amp;lt;algorithm list&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl  to  request  specific  curves  to  use  during SSL session establishment according to RFC 8422, 5.1.  Multiple algorithms can be provided by separating them with &amp;quot;:&amp;quot; (e.g.&lt;br /&gt;
              &amp;quot;X25519:P-521&amp;quot;).  The parameter is available identically in the &amp;quot;openssl s_client/s_server&amp;quot; utilities.&lt;br /&gt;
&lt;br /&gt;
              --curves allows a OpenSSL powered curl to make SSL-connections with exactly the (EC) curve requested by the client, avoiding nontransparent client/server negotiations.&lt;br /&gt;
&lt;br /&gt;
              If this option is set, the default curves list built into openssl will be ignored.&lt;br /&gt;
&lt;br /&gt;
              If --curves is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --curves X25519 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       --data-ascii &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This is just an alias for -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-ascii can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-ascii @file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-raw and --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
       --data-binary &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data exactly as specified with no extra processing whatsoever.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a filename. Data is posted in a similar manner as -d, --data does, except that newlines and carriage returns are preserved and con‐&lt;br /&gt;
              versions are never done.&lt;br /&gt;
&lt;br /&gt;
              Like  -d,  --data the default content-type sent to the server is application/x-www-form-urlencoded. If you want the data to be treated as arbitrary binary data by the server then set the con‐&lt;br /&gt;
              tent-type to octet-stream: -H &amp;quot;Content-Type: application/octet-stream&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, the ones following the first will append data as described in -d, --data.&lt;br /&gt;
&lt;br /&gt;
              --data-binary can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --data-binary @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       --data-raw &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data similarly to -d, --data but without the special interpretation of the @ character.&lt;br /&gt;
&lt;br /&gt;
              --data-raw can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --data-raw &amp;quot;hello&amp;quot; https://example.com&lt;br /&gt;
               curl --data-raw &amp;quot;@at@at@&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) This posts data, similar to the other -d, --data options with the exception that this performs URL-encoding.&lt;br /&gt;
&lt;br /&gt;
              To be CGI-compliant, the &amp;lt;data&amp;gt; part should begin with a name followed by a separator and a content specification. The &amp;lt;data&amp;gt; part can be passed to curl using one of the following syntaxes:&lt;br /&gt;
&lt;br /&gt;
              content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. Just be careful so that the content does not contain any = or @ symbols, as that will then make the syntax match one of the&lt;br /&gt;
                     other cases below!&lt;br /&gt;
&lt;br /&gt;
              =content&lt;br /&gt;
                     This will make curl URL-encode the content and pass that on. The preceding = symbol is not included in the data.&lt;br /&gt;
&lt;br /&gt;
              name=content&lt;br /&gt;
                     This will make curl URL-encode the content part and pass that on. Note that the name part is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
              @filename&lt;br /&gt;
                     This will make curl load data from the given file (including any newlines), URL-encode that data and pass it on in the POST.&lt;br /&gt;
&lt;br /&gt;
              name@filename&lt;br /&gt;
                     This  will  make  curl  load data from the given file (including any newlines), URL-encode that data and pass it on in the POST. The name part gets an equal sign appended, resulting in&lt;br /&gt;
                     name=urlencoded-file-content. Note that the name is expected to be URL-encoded already.&lt;br /&gt;
&lt;br /&gt;
       --data-urlencode can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --data-urlencode name=val https://example.com&lt;br /&gt;
        curl --data-urlencode =encodethis https://example.com&lt;br /&gt;
        curl --data-urlencode name@file https://example.com&lt;br /&gt;
        curl --data-urlencode @fileonly https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -d, --data and --data-raw.&lt;br /&gt;
&lt;br /&gt;
       -d, --data &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP MQTT) Sends the specified data in a POST request to the HTTP server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button. This  will&lt;br /&gt;
              cause curl to pass the data to the server using the content-type application/x-www-form-urlencoded. Compare to -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --data-raw  is  almost  the  same but does not have a special interpretation of the @ character. To post data purely binary, you should instead use the --data-binary option. To URL-encode the&lt;br /&gt;
              value of a form field you may use --data-urlencode.&lt;br /&gt;
&lt;br /&gt;
              If any of these options is used more than once on the same command line, the data pieces specified will be merged with a separating &amp;amp;-symbol. Thus, using &#039;-d name=daniel -d skill=lousy&#039; would&lt;br /&gt;
              generate a post chunk that looks like &#039;name=daniel&amp;amp;skill=lousy&#039;.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or - if you want curl to read the data from stdin. Posting data from a file named &#039;foobar&#039; would&lt;br /&gt;
              thus be done with -d, --data @foobar. When -d, --data is told to read from a file like that, carriage returns and newlines will be stripped out. If you do not want the @ character to  have  a&lt;br /&gt;
              special interpretation use --data-raw instead.&lt;br /&gt;
&lt;br /&gt;
              -d, --data can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; https://example.com&lt;br /&gt;
               curl -d &amp;quot;name=curl&amp;quot; -d &amp;quot;tool=cmdline&amp;quot; https://example.com&lt;br /&gt;
               curl -d @filename https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary, --data-urlencode and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --delegation &amp;lt;LEVEL&amp;gt;&lt;br /&gt;
              (GSS/kerberos) Set LEVEL to tell the server what it is allowed to delegate when it comes to user credentials.&lt;br /&gt;
&lt;br /&gt;
              none   Do not allow any delegation.&lt;br /&gt;
&lt;br /&gt;
              policy Delegates if and only if the OK-AS-DELEGATE flag is set in the Kerberos service ticket, which is a matter of realm policy.&lt;br /&gt;
&lt;br /&gt;
              always Unconditionally allow the server to delegate.&lt;br /&gt;
&lt;br /&gt;
       If --delegation is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --delegation &amp;quot;none&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also -k, --insecure and --ssl.&lt;br /&gt;
&lt;br /&gt;
       --digest&lt;br /&gt;
              (HTTP) Enables HTTP Digest authentication. This is an authentication scheme that prevents the password from being sent over the wire in clear text. Use this in combination with the normal -u,&lt;br /&gt;
              --user option to set user name and password.&lt;br /&gt;
&lt;br /&gt;
              Providing --digest multiple times has no extra effect.  Disable it again with --no-digest.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u name:password --digest https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user, --proxy-digest and --anyauth. This option is mutually exclusive to --basic and --ntlm and --negotiate.&lt;br /&gt;
&lt;br /&gt;
       --disable-eprt&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPRT and LPRT commands when doing active FTP transfers. Curl will normally always first attempt to use EPRT, then LPRT before using  PORT,  but  with&lt;br /&gt;
              this  option,  it will use PORT right away. EPRT and LPRT are extensions to the original FTP protocol, and may not work on all servers, but they enable more functionality in a better way than&lt;br /&gt;
              the traditional PORT command.&lt;br /&gt;
&lt;br /&gt;
              --eprt can be used to explicitly enable EPRT again and --no-eprt is an alias for --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              If the server is accessed using IPv6, this option will have no effect as EPRT is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPRT only changes the active behavior. If you want to switch to passive mode you need to not use -P, --ftp-port or force it with --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-eprt multiple times has no extra effect.  Disable it again with --no-disable-eprt.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-eprt ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       --disable-epsv&lt;br /&gt;
              (FTP) Tell curl to disable the use of the EPSV command when doing passive FTP transfers. Curl will normally always first attempt to use EPSV before PASV, but with this option, it will not try&lt;br /&gt;
              using EPSV.&lt;br /&gt;
&lt;br /&gt;
              --epsv can be used to explicitly enable EPSV again and --no-epsv is an alias for --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              If the server is an IPv6 host, this option will have no effect as EPSV is necessary then.&lt;br /&gt;
&lt;br /&gt;
              Disabling EPSV only changes the passive behavior. If you want to switch to active mode you need to use -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
              Providing --disable-epsv multiple times has no extra effect.  Disable it again with --no-disable-epsv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disable-epsv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-eprt and -P, --ftp-port.&lt;br /&gt;
&lt;br /&gt;
       -q, --disable&lt;br /&gt;
              If used as the first parameter on the command line, the curlrc config file will not be read and used. See the -K, --config for details on the default config file search path.&lt;br /&gt;
&lt;br /&gt;
              Providing -q, --disable multiple times has no extra effect.  Disable it again with --no-disable.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -q https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --disallow-username-in-url&lt;br /&gt;
              (HTTP) This tells curl to exit if passed a URL containing a username. This is probably most useful when the URL is being provided at runtime or similar.&lt;br /&gt;
&lt;br /&gt;
              Providing --disallow-username-in-url multiple times has no extra effect.  Disable it again with --no-disallow-username-in-url.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --disallow-username-in-url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-interface &amp;lt;interface&amp;gt;&lt;br /&gt;
              (DNS)  Tell curl to send outgoing DNS requests through &amp;lt;interface&amp;gt;. This option is a counterpart to --interface (which does not affect DNS). The supplied string must be an interface name (not&lt;br /&gt;
              an address).&lt;br /&gt;
&lt;br /&gt;
              If --dns-interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-ipv4-addr and --dns-ipv6-addr. --dns-interface requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv4-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv4 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv4 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv4-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv4-addr 10.1.2.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv6-addr. --dns-ipv4-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-ipv6-addr &amp;lt;address&amp;gt;&lt;br /&gt;
              (DNS) Tell curl to bind to &amp;lt;ip-address&amp;gt; when making IPv6 DNS requests, so that the DNS requests originate from this address. The argument should be a single IPv6 address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-ipv6-addr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-ipv6-addr 2a04:4e42::561 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-ipv6-addr requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --dns-servers &amp;lt;addresses&amp;gt;&lt;br /&gt;
              Set the list of DNS servers to be used instead of the system default.  The list of IP addresses should be separated with commas. Port numbers may also optionally be  given  as  :&amp;lt;port-number&amp;gt;&lt;br /&gt;
              after each IP address.&lt;br /&gt;
&lt;br /&gt;
              If --dns-servers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface and --dns-ipv4-addr. --dns-servers requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-cert-status&lt;br /&gt;
              Same as --cert-status but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-cert-status multiple times has no extra effect.  Disable it again with --no-doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-cert-status --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-insecure&lt;br /&gt;
              Same as -k, --insecure but used for DoH (DNS-over-HTTPS).&lt;br /&gt;
&lt;br /&gt;
              Providing --doh-insecure multiple times has no extra effect.  Disable it again with --no-doh-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-insecure --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-url. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       --doh-url &amp;lt;URL&amp;gt;&lt;br /&gt;
              Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames, instead of using the default name resolver mechanism. The URL must be HTTPS.&lt;br /&gt;
&lt;br /&gt;
              Some  SSL options that you set for your transfer will apply to DoH since the name lookups take place over SSL. However, the certificate verification settings are not inherited and can be con‐&lt;br /&gt;
              trolled separately via --doh-insecure and --doh-cert-status.&lt;br /&gt;
&lt;br /&gt;
              This option is unset if an empty string &amp;quot;&amp;quot; is used as the URL. (Added in 7.85.0)&lt;br /&gt;
&lt;br /&gt;
              If --doh-url is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --doh-url https://doh.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --doh-insecure. Added in 7.62.0.&lt;br /&gt;
&lt;br /&gt;
       -D, --dump-header &amp;lt;filename&amp;gt;&lt;br /&gt;
              (HTTP FTP) Write the received protocol headers to the specified file. If no headers are received, the use of this option will create an empty file.&lt;br /&gt;
&lt;br /&gt;
              When used in FTP, the FTP server response lines are considered being &amp;quot;headers&amp;quot; and thus are saved there.&lt;br /&gt;
&lt;br /&gt;
              Having multiple transfers in one set of operations (i.e. the URLs in one -:, --next clause), will append them to the same file, separated by a blank line.&lt;br /&gt;
&lt;br /&gt;
              If -D, --dump-header is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --dump-header store.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output.&lt;br /&gt;
&lt;br /&gt;
       --egd-file &amp;lt;file&amp;gt;&lt;br /&gt;
              (TLS) Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to the Entropy Gathering Daemon socket. The socket is used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --egd-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --egd-file /random/here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --random-file.&lt;br /&gt;
&lt;br /&gt;
       --engine &amp;lt;name&amp;gt;&lt;br /&gt;
              (TLS) Select the OpenSSL crypto engine to use for cipher operations. Use --engine list to print a list of build-time supported engines. Note that not all (and possibly none)  of  the  engines&lt;br /&gt;
              may be available at runtime.&lt;br /&gt;
&lt;br /&gt;
              If --engine is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --engine flavor https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves.&lt;br /&gt;
&lt;br /&gt;
       --etag-compare &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option makes a conditional HTTP request for the specific ETag read from the given file by sending a custom If-None-Match header using the stored ETag.&lt;br /&gt;
&lt;br /&gt;
              For correct results, make sure that the specified file contains only a single line with the desired ETag. An empty file is parsed as an empty ETag.&lt;br /&gt;
&lt;br /&gt;
              Use the option --etag-save to first save the ETag from a response, and then use this option to compare against the saved ETag in a subsequent request.&lt;br /&gt;
&lt;br /&gt;
              If --etag-compare is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-compare etag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-save and -z, --time-cond. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --etag-save &amp;lt;file&amp;gt;&lt;br /&gt;
              (HTTP) This option saves an HTTP ETag to the specified file. An ETag is a caching related header, usually returned in a response.&lt;br /&gt;
&lt;br /&gt;
              If no ETag is sent by the server, an empty file is created.&lt;br /&gt;
&lt;br /&gt;
              If --etag-save is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --etag-save storetag.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --expect100-timeout &amp;lt;seconds&amp;gt;&lt;br /&gt;
              (HTTP)  Maximum  time  in seconds that you allow curl to wait for a 100-continue response when curl emits an Expects: 100-continue header in its request. By default curl will wait one second.&lt;br /&gt;
              This option accepts decimal values! When curl stops waiting, it will continue as if the response has been received.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If --expect100-timeout is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --expect100-timeout 2.5 -T file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout. Added in 7.47.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-early&lt;br /&gt;
              Fail and exit on the first detected transfer error.&lt;br /&gt;
&lt;br /&gt;
              When curl is used to do multiple transfers on the command line, it will attempt to operate on each given URL, one by one. By default, it will ignore errors if there are more  URLs  given  and&lt;br /&gt;
              the last URL&#039;s success will determine the error code curl returns. So early failures will be &amp;quot;hidden&amp;quot; by subsequent successful transfers.&lt;br /&gt;
&lt;br /&gt;
              Using  this option, curl will instead return an error on the first transfer that fails, independent of the amount of URLs that are given on the command line. This way, no transfer failures go&lt;br /&gt;
              undetected by scripts and similar.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              This option does not imply -f, --fail, which causes transfers to fail due to the server&#039;s HTTP status code. You can combine the two options, however note -f,  --fail  is  not  global  and  is&lt;br /&gt;
              therefore contained by -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-early multiple times has no extra effect.  Disable it again with --no-fail-early.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-early https://example.com https://two.example&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail and --fail-with-body. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --fail-with-body&lt;br /&gt;
              (HTTP)  Return  an error on server errors where the HTTP response code is 400 or greater). In normal cases when an HTTP server fails to deliver a document, it returns an HTML document stating&lt;br /&gt;
              so (which often also describes why and more). This flag will still allow curl to output and save that content but also to return error 22.&lt;br /&gt;
&lt;br /&gt;
              This is an alternative option to -f, --fail which makes curl fail for the same circumstances but without saving the content.&lt;br /&gt;
&lt;br /&gt;
              Providing --fail-with-body multiple times has no extra effect.  Disable it again with --no-fail-with-body.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail-with-body https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. This option is mutually exclusive to -f, --fail. Added in 7.76.0.&lt;br /&gt;
&lt;br /&gt;
       -f, --fail&lt;br /&gt;
              (HTTP) Fail fast with no output at all on server errors. This is useful to enable scripts and users to better deal with failed attempts. In normal cases when an HTTP server fails to deliver a&lt;br /&gt;
              document, it returns an HTML document stating so (which often also describes why and more). This flag will prevent curl from outputting that and return error 22.&lt;br /&gt;
&lt;br /&gt;
              This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).&lt;br /&gt;
&lt;br /&gt;
              Providing -f, --fail multiple times has no extra effect.  Disable it again with --no-fail.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --fail https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --fail-with-body. This option is mutually exclusive to --fail-with-body.&lt;br /&gt;
&lt;br /&gt;
       --false-start&lt;br /&gt;
              (TLS) Tells curl to use false start during the TLS handshake. False start is a mode where a TLS client will start sending application data before verifying the server&#039;s Finished message, thus&lt;br /&gt;
              saving a round trip when performing a full handshake.&lt;br /&gt;
&lt;br /&gt;
              This is currently only implemented in the NSS and Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --false-start multiple times has no extra effect.  Disable it again with --no-false-start.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --false-start https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tcp-fastopen. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --form-escape&lt;br /&gt;
              (HTTP) Tells curl to pass on names of multipart form fields and files using backslash-escaping instead of percent-encoding.&lt;br /&gt;
&lt;br /&gt;
              If --form-escape is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-escape -F &#039;field\name=curl&#039; -F &#039;file=@load&amp;quot;this&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form. Added in 7.81.0.&lt;br /&gt;
&lt;br /&gt;
       --form-string &amp;lt;name=string&amp;gt;&lt;br /&gt;
              (HTTP SMTP IMAP) Similar to -F, --form except that the value string for the named parameter is used literally. Leading &#039;@&#039; and &#039;&amp;lt;&#039; characters, and the &#039;;type=&#039; string in  the  value  have  no&lt;br /&gt;
              special meaning. Use this in preference to -F, --form if there&#039;s any possibility that the string value may accidentally trigger the &#039;@&#039; or &#039;&amp;lt;&#039; features of -F, --form.&lt;br /&gt;
&lt;br /&gt;
              --form-string can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form-string &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -F, --form.&lt;br /&gt;
&lt;br /&gt;
       -F, --form &amp;lt;name=content&amp;gt;&lt;br /&gt;
              (HTTP  SMTP  IMAP) For HTTP protocol family, this lets curl emulate a filled-in form in which a user has pressed the submit button. This causes curl to POST data using the Content-Type multi‐&lt;br /&gt;
              part/form-data according to RFC 2388.&lt;br /&gt;
&lt;br /&gt;
              For SMTP and IMAP protocols, this is the means to compose a multipart mail message to transmit.&lt;br /&gt;
&lt;br /&gt;
              This enables uploading of binary files etc. To force the &#039;content&#039; part to be a file, prefix the file name with an @ sign. To just get the content part from a file, prefix the file name  with&lt;br /&gt;
              the  symbol  &amp;lt;.  The  difference  between @ and &amp;lt; is then that @ makes a file get attached in the post as a file upload, while the &amp;lt; makes a text field and just get the contents for that text&lt;br /&gt;
              field from a file.&lt;br /&gt;
&lt;br /&gt;
              Tell curl to read content from stdin instead of a file by using - as filename. This goes for both @ and &amp;lt; constructs. When stdin is used, the contents is buffered in memory first by  curl  to&lt;br /&gt;
              determine  its  size  and allow a possible resend. Defining a part&#039;s data from a named non-regular file (such as a named pipe or similar) is unfortunately not subject to buffering and will be&lt;br /&gt;
              effectively read at transmission time; since the full size is unknown before the transfer starts, such data is sent as chunks by HTTP and rejected by IMAP.&lt;br /&gt;
&lt;br /&gt;
              Example: send an image to an HTTP server, where &#039;profile&#039; is the name of the form-field to which the file portrait.jpg will be the input:&lt;br /&gt;
&lt;br /&gt;
               curl -F profile=@portrait.jpg https://example.com/upload.cgi&lt;br /&gt;
&lt;br /&gt;
              Example: send your name and shoe size in two text fields to the server:&lt;br /&gt;
&lt;br /&gt;
               curl -F name=John -F shoesize=11 https://example.com/&lt;br /&gt;
&lt;br /&gt;
              Example: send your essay in a text field to the server. Send it as a plain text field, but get the contents for it from a local file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;story=&amp;lt;hugefile.txt&amp;quot; https://example.com/&lt;br /&gt;
&lt;br /&gt;
              You can also tell curl what Content-Type to use by using &#039;type=&#039;, in a manner similar to:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;web=@index.html;type=text/html&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;name=daniel;type=text/foo&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              You can also explicitly change the name field of a file upload part by setting filename=, like this:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@localfile;filename=nameinpost&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              If filename/path contains &#039;,&#039; or &#039;;&#039;, it must be quoted by double-quotes like:&lt;br /&gt;
&lt;br /&gt;
               curl -F &amp;quot;file=@\&amp;quot;local,file\&amp;quot;;filename=\&amp;quot;name;in;post\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;file=@&amp;quot;local,file&amp;quot;;filename=&amp;quot;name;in;post&amp;quot;&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              Note that if a filename/path is quoted by double-quotes, any double-quote or backslash within the filename must be escaped by backslash.&lt;br /&gt;
&lt;br /&gt;
              Quoting must also be applied to non-file data if it contains semicolons, leading/trailing spaces or leading double quotes:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;colors=&amp;quot;red; green; blue&amp;quot;;type=text/x-myapp&#039; example.com&lt;br /&gt;
&lt;br /&gt;
              You can add custom headers to the field by setting headers=, like&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=\&amp;quot;X-submit-type: OK\&amp;quot;&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              or&lt;br /&gt;
&lt;br /&gt;
                curl -F &amp;quot;submit=OK;headers=@headerfile&amp;quot; example.com&lt;br /&gt;
&lt;br /&gt;
              The headers= keyword may appear more that once and above notes about quoting apply. When headers are read from a file, Empty lines and lines starting with &#039;#&#039; are comments and  ignored;  each&lt;br /&gt;
              header  can  be  folded  by  splitting  between two words and starting the continuation line with a space; embedded carriage-returns and trailing spaces are stripped.  Here is an example of a&lt;br /&gt;
              header file contents:&lt;br /&gt;
&lt;br /&gt;
                # This file contain two headers.&lt;br /&gt;
                X-header-1: this is a header&lt;br /&gt;
&lt;br /&gt;
                # The following header is folded.&lt;br /&gt;
                X-header-2: this is&lt;br /&gt;
                 another header&lt;br /&gt;
&lt;br /&gt;
              To support sending multipart mail messages, the syntax is extended as follows:&lt;br /&gt;
              - name can be omitted: the equal sign is the first character of the argument,&lt;br /&gt;
              - if data starts with &#039;(&#039;, this signals to start a new multipart: it can be followed by a content type specification.&lt;br /&gt;
              - a multipart can be terminated with a &#039;=)&#039; argument.&lt;br /&gt;
&lt;br /&gt;
              Example: the following command sends an SMTP mime email consisting in an inline part in two alternative formats: plain text and HTML. It attaches a text file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=(;type=multipart/alternative&#039; \&lt;br /&gt;
                    -F &#039;=plain text message&#039; \&lt;br /&gt;
                    -F &#039;= &amp;lt;body&amp;gt;HTML message&amp;lt;/body&amp;gt;;type=text/html&#039; \&lt;br /&gt;
                    -F &#039;=)&#039; -F &#039;=@textfile.txt&#039; ...  smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              Data can be encoded for transfer using encoder=. Available encodings are binary and 8bit that do nothing else than adding the corresponding Content-Transfer-Encoding header,  7bit  that  only&lt;br /&gt;
              rejects 8-bit characters with a transfer error, quoted-printable and base64 that encodes data according to the corresponding schemes, limiting lines length to 76 characters.&lt;br /&gt;
&lt;br /&gt;
              Example: send multipart mail with a quoted-printable text message and a base64 attached file:&lt;br /&gt;
&lt;br /&gt;
               curl -F &#039;=text message;encoder=quoted-printable&#039; \&lt;br /&gt;
                    -F &#039;=@localfile;encoder=base64&#039; ... smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See further examples and details in the MANUAL.&lt;br /&gt;
&lt;br /&gt;
              -F, --form can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --form &amp;quot;name=curl&amp;quot; --form &amp;quot;file=@loadthis&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data, --form-string and --form-escape. This option is mutually exclusive to -d, --data and -I, --head and -T, --upload-file.&lt;br /&gt;
&lt;br /&gt;
       --ftp-account &amp;lt;data&amp;gt;&lt;br /&gt;
              (FTP) When an FTP server asks for &amp;quot;account data&amp;quot; after user name and password has been provided, this data is sent off using the ACCT command.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-account is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-account &amp;quot;mr.robot&amp;quot; ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-alternative-to-user &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP)  If  authenticating  with the USER and PASS commands fails, send this command.  When connecting to Tumbleweed&#039;s Secure Transport server over FTPS using a client certificate, using &amp;quot;SITE&lt;br /&gt;
              AUTH&amp;quot; will tell the server to retrieve the username from the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --ftp-alternative-to-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-alternative-to-user &amp;quot;U53r&amp;quot; ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-account and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --ftp-create-dirs&lt;br /&gt;
              (FTP SFTP) When an FTP or SFTP URL/operation uses a path that does not currently exist on the server, the standard behavior of curl is to fail. Using this option, curl will instead attempt to&lt;br /&gt;
              create missing directories.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-create-dirs multiple times has no extra effect.  Disable it again with --no-ftp-create-dirs.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-create-dirs -T file ftp://example.com/remote/path/file&lt;br /&gt;
&lt;br /&gt;
              See also --create-dirs.&lt;br /&gt;
&lt;br /&gt;
       --ftp-method &amp;lt;method&amp;gt;&lt;br /&gt;
              (FTP) Control what method curl should use to reach a file on an FTP(S) server. The method argument should be one of the following alternatives:&lt;br /&gt;
&lt;br /&gt;
              multicwd&lt;br /&gt;
                     curl  does  a  single CWD operation for each path part in the given URL. For deep hierarchies this means many commands. This is how RFC 1738 says it should be done. This is the default&lt;br /&gt;
                     but the slowest behavior.&lt;br /&gt;
&lt;br /&gt;
              nocwd  curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full path to the server for all these commands. This is the fastest behavior.&lt;br /&gt;
&lt;br /&gt;
              singlecwd&lt;br /&gt;
                     curl does one CWD with the full target directory and then operates on the file &amp;quot;normally&amp;quot; (like in the multicwd case). This is somewhat more standards compliant than &#039;nocwd&#039; but  with‐&lt;br /&gt;
                     out the full penalty of &#039;multicwd&#039;.&lt;br /&gt;
&lt;br /&gt;
       If --ftp-method is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --ftp-method multicwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method nocwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
        curl --ftp-method singlecwd ftp://example.com/dir1/dir2/file&lt;br /&gt;
&lt;br /&gt;
       See also -l, --list-only.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pasv&lt;br /&gt;
              (FTP) Use passive mode for the data connection. Passive is the internal default behavior, but using this option can be used to override a previous -P, --ftp-port option.&lt;br /&gt;
&lt;br /&gt;
              Reversing an enforced passive really is not doable but you must then instead enforce the correct -P, --ftp-port again.&lt;br /&gt;
&lt;br /&gt;
              Passive mode means that curl will try the EPSV command first and then PASV, unless --disable-epsv is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pasv multiple times has no extra effect.  Disable it again with --no-ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pasv ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --disable-epsv.&lt;br /&gt;
&lt;br /&gt;
       -P, --ftp-port &amp;lt;address&amp;gt;&lt;br /&gt;
              (FTP)  Reverses the default initiator/listener roles when connecting with FTP. This option makes curl use active mode. curl then tells the server to connect back to the client&#039;s specified ad‐&lt;br /&gt;
              dress and port, while passive mode asks the server to setup an IP address and port for it to connect to. &amp;lt;address&amp;gt; should be one of:&lt;br /&gt;
&lt;br /&gt;
              interface&lt;br /&gt;
                     e.g. &amp;quot;eth0&amp;quot; to specify which interface&#039;s IP address you want to use (Unix only)&lt;br /&gt;
&lt;br /&gt;
              IP address&lt;br /&gt;
                     e.g. &amp;quot;192.168.10.1&amp;quot; to specify the exact IP address&lt;br /&gt;
&lt;br /&gt;
              host name&lt;br /&gt;
                     e.g. &amp;quot;my.host.domain&amp;quot; to specify the machine&lt;br /&gt;
&lt;br /&gt;
              -      make curl pick the same IP address that is already used for the control connection&lt;br /&gt;
&lt;br /&gt;
       Disable the use of PORT with --ftp-pasv. Disable the attempt to use the EPRT command instead of PORT by using --disable-eprt. EPRT is really PORT++.&lt;br /&gt;
&lt;br /&gt;
       You can also append &amp;quot;:[start]-[end]&amp;quot; to the right of the address, to tell curl what TCP port range to use. That means you specify a port range, from a lower to a higher number. A single number works&lt;br /&gt;
       as well, but do note that it increases the risk of failure since the port may not be available.&lt;br /&gt;
&lt;br /&gt;
       If -P, --ftp-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl -P - ftp:/example.com&lt;br /&gt;
        curl -P eth0 ftp:/example.com&lt;br /&gt;
        curl -P 192.168.0.2 ftp:/example.com&lt;br /&gt;
&lt;br /&gt;
       See also --ftp-pasv and --disable-eprt.&lt;br /&gt;
&lt;br /&gt;
       --ftp-pret&lt;br /&gt;
              (FTP) Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers, mainly drftpd, require this non-standard command for directory listings as well as up and downloads in PASV&lt;br /&gt;
              mode.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-pret multiple times has no extra effect.  Disable it again with --no-ftp-pret.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-pret ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -P, --ftp-port and --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-skip-pasv-ip&lt;br /&gt;
              (FTP) Tell curl to not use the IP address the server suggests in its response to curl&#039;s PASV command when curl connects the data connection. Instead curl will re-use the same  IP  address  it&lt;br /&gt;
              already uses for the control connection.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.74.0 this option is enabled by default.&lt;br /&gt;
&lt;br /&gt;
              This option has no effect if PORT, EPRT or EPSV is used instead of PASV.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-skip-pasv-ip multiple times has no extra effect.  Disable it again with --no-ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-skip-pasv-ip ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-pasv.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc-mode &amp;lt;active/passive&amp;gt;&lt;br /&gt;
              (FTP)  Sets the CCC mode. The passive mode will not initiate the shutdown, but instead wait for the server to do it, and will not reply to the shutdown from the server. The active mode initi‐&lt;br /&gt;
              ates the shutdown and waits for a reply from the server.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc-mode multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-ccc&lt;br /&gt;
              (FTP) Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after authenticating. The rest of the control channel communication will be unencrypted. This allows NAT routers  to  follow&lt;br /&gt;
              the FTP transaction. The default mode is passive.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-ccc multiple times has no extra effect.  Disable it again with --no-ftp-ssl-ccc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-ccc ftps://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and --ftp-ssl-ccc-mode.&lt;br /&gt;
&lt;br /&gt;
       --ftp-ssl-control&lt;br /&gt;
              (FTP) Require SSL/TLS for the FTP login, clear for transfer.  Allows secure authentication, but non-encrypted data transfers for efficiency.  Fails the transfer if the server does not support&lt;br /&gt;
              SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              Providing --ftp-ssl-control multiple times has no extra effect.  Disable it again with --no-ftp-ssl-control.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ftp-ssl-control ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl.&lt;br /&gt;
&lt;br /&gt;
       -G, --get&lt;br /&gt;
              When used, this option will make all data specified with -d, --data, --data-binary or --data-urlencode to be used in an HTTP GET request instead of the POST request that  otherwise  would  be&lt;br /&gt;
              used. The data will be appended to the URL with a &#039;?&#039; separator.&lt;br /&gt;
&lt;br /&gt;
              If used in combination with -I, --head, the POST data will instead be appended to the URL with a HEAD request.&lt;br /&gt;
&lt;br /&gt;
              Providing -G, --get multiple times has no extra effect.  Disable it again with --no-get.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --get https://example.com&lt;br /&gt;
               curl --get -d &amp;quot;tool=curl&amp;quot; -d &amp;quot;age=old&amp;quot; https://example.com&lt;br /&gt;
               curl --get -I -d &amp;quot;tool=curl&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -d, --data and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       -g, --globoff&lt;br /&gt;
              This  option  switches  off  the &amp;quot;URL globbing parser&amp;quot;. When you set this option, you can specify URLs that contain the letters {}[] without having curl itself interpret them. Note that these&lt;br /&gt;
              letters are not normal legal URL contents but they should be encoded according to the URI standard.&lt;br /&gt;
&lt;br /&gt;
              Providing -g, --globoff multiple times has no extra effect.  Disable it again with --no-globoff.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -g &amp;quot;https://example.com/{[]}}}}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config and -q, --disable.&lt;br /&gt;
&lt;br /&gt;
       --happy-eyeballs-timeout-ms &amp;lt;milliseconds&amp;gt;&lt;br /&gt;
              Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6 addresses for dual-stack hosts, giving IPv6 a head-start of the specified number of milliseconds. If the IPv6 ad‐&lt;br /&gt;
              dress cannot be connected to within that time, then a connection attempt is made to the IPv4 address in parallel. The first connection to be established is the one that is used.&lt;br /&gt;
&lt;br /&gt;
              The  range  of  suggested useful values is limited. Happy Eyeballs RFC 6555 says &amp;quot;It is RECOMMENDED that connection attempts be paced 150-250 ms apart to balance human factors against network&lt;br /&gt;
              load.&amp;quot; libcurl currently defaults to 200 ms. Firefox and Chrome currently default to 300 ms.&lt;br /&gt;
&lt;br /&gt;
              If --happy-eyeballs-timeout-ms is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --happy-eyeballs-timeout-ms 500 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -m, --max-time and --connect-timeout. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --haproxy-protocol&lt;br /&gt;
              (HTTP) Send a HAProxy PROXY protocol v1 header at the beginning of the connection. This is used by some load balancers and reverse proxies to indicate the client&#039;s true IP address and port.&lt;br /&gt;
&lt;br /&gt;
              This option is primarily useful when sending test requests to a service that expects this header.&lt;br /&gt;
&lt;br /&gt;
              Providing --haproxy-protocol multiple times has no extra effect.  Disable it again with --no-haproxy-protocol.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --haproxy-protocol https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.60.0.&lt;br /&gt;
&lt;br /&gt;
       -I, --head&lt;br /&gt;
              (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the command HEAD which this uses to get nothing but the header of a document. When used on an FTP or FILE file, curl displays  the&lt;br /&gt;
              file size and last modification time only.&lt;br /&gt;
&lt;br /&gt;
              Providing -I, --head multiple times has no extra effect.  Disable it again with --no-head.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get, -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -H, --header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP IMAP SMTP) Extra header to include in information sent. When used within an HTTP request, it is added to the regular request headers.&lt;br /&gt;
&lt;br /&gt;
              For an IMAP or SMTP MIME uploaded mail built with -F, --form options, it is prepended to the resulting MIME document, effectively including it at the mail global level. It does not affect raw&lt;br /&gt;
              uploaded mails (Added in 7.56.0).&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of extra headers. Note that if you should add a custom header that has the same name as one of the internal ones curl would use, your externally set header will  be&lt;br /&gt;
              used  instead  of the internal one.  This allows you to make even trickier stuff than curl would normally do. You should not replace internally set headers without knowing perfectly well what&lt;br /&gt;
              you are doing. Remove an internal header by giving a replacement without content on the right side of the colon, as in: -H &amp;quot;Host:&amp;quot;. If you send the custom header with no-value then its header&lt;br /&gt;
              must be terminated with a semicolon, such as -H &amp;quot;X-Custom-Header;&amp;quot; to send &amp;quot;X-Custom-Header:&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              curl  will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              This option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
              Please note that most anti-spam utilities check the presence and value of several MIME mail headers: these are &amp;quot;From:&amp;quot;, &amp;quot;To:&amp;quot;, &amp;quot;Date:&amp;quot; and &amp;quot;Subject:&amp;quot; among others and  should  be  added  with&lt;br /&gt;
              this option.&lt;br /&gt;
&lt;br /&gt;
              You need --proxy-header to send custom headers intended for an HTTP proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
              Passing on a &amp;quot;Transfer-Encoding: chunked&amp;quot; header when doing an HTTP request with a request body, will make curl send the data using chunked encoding.&lt;br /&gt;
&lt;br /&gt;
              WARNING: headers set with this option will be set in all HTTP requests - even after redirects are followed, like when told with -L, --location. This can lead to the header being sent to other&lt;br /&gt;
              hosts than the original host, so sensitive headers should be used with caution combined with following redirects.&lt;br /&gt;
&lt;br /&gt;
              -H, --header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -H &amp;quot;X-First-Name: Joe&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;User-Agent: yes-please/2000&amp;quot; https://example.com&lt;br /&gt;
               curl -H &amp;quot;Host:&amp;quot; https://example.com&lt;br /&gt;
               curl -H @headers.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -e, --referer.&lt;br /&gt;
&lt;br /&gt;
       -h, --help &amp;lt;category&amp;gt;&lt;br /&gt;
              Usage help. This lists all commands of the &amp;lt;category&amp;gt;.  If no arg was provided, curl will display the most important command line arguments.  If the argument &amp;quot;all&amp;quot;  was  provided,  curl  will&lt;br /&gt;
              display all options available.  If the argument &amp;quot;category&amp;quot; was provided, curl will display all categories and their meanings.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --help all&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --hostpubmd5 &amp;lt;md5&amp;gt;&lt;br /&gt;
              (SFTP  SCP) Pass a string containing 32 hexadecimal digits. The string should be the 128 bit MD5 checksum of the remote host&#039;s public key, curl will refuse the connection with the host unless&lt;br /&gt;
              the md5sums match.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubmd5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256.&lt;br /&gt;
&lt;br /&gt;
       --hostpubsha256 &amp;lt;sha256&amp;gt;&lt;br /&gt;
              (SFTP SCP) Pass a string containing a Base64-encoded SHA256 hash of the remote host&#039;s public key. Curl will refuse the connection with the host unless the hashes match.&lt;br /&gt;
&lt;br /&gt;
              This feature requires libcurl to be built with libssh2 and does not work with other SSH backends.&lt;br /&gt;
&lt;br /&gt;
              If --hostpubsha256 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubmd5. Added in 7.80.0.&lt;br /&gt;
&lt;br /&gt;
       --hsts &amp;lt;file name&amp;gt;&lt;br /&gt;
              (HTTPS) This option enables HSTS for the transfer. If the file name points to an existing HSTS cache file, that will be used. After a completed transfer, the cache will be saved to  the  file&lt;br /&gt;
              name again if it has been modified.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to use HTTP:// for a transfer involving a host name that exists in the HSTS cache, it upgrades the transfer to use HTTPS. Each HSTS cache entry has an individual life time af‐&lt;br /&gt;
              ter which the upgrade is no longer performed.&lt;br /&gt;
&lt;br /&gt;
              Specify a &amp;quot;&amp;quot; file name (zero length) to avoid loading/saving and make curl just handle HSTS in memory.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, curl will load contents from all the files but the last one will be used for saving.&lt;br /&gt;
&lt;br /&gt;
              --hsts can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --hsts cache.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto. Added in 7.74.0.&lt;br /&gt;
&lt;br /&gt;
       --http0.9&lt;br /&gt;
              (HTTP) Tells curl to be fine with HTTP version 0.9 response.&lt;br /&gt;
&lt;br /&gt;
              HTTP/0.9 is a completely headerless response and therefore you can also connect with this to non-HTTP servers and still get a response since curl will simply transparently downgrade - if  al‐&lt;br /&gt;
              lowed.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, HTTP/0.9 is disabled by default.&lt;br /&gt;
&lt;br /&gt;
              Providing --http0.9 multiple times has no extra effect.  Disable it again with --no-http0.9.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http0.9 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1, --http2 and --http3. Added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
       -0, --http1.0&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.0 instead of using its internally preferred HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Providing -0, --http1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http0.9 and --http1.1. This option is mutually exclusive to --http1.1 and --http2 and --http2-prior-knowledge and --http3.&lt;br /&gt;
&lt;br /&gt;
       --http1.1&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --http1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -0, --http1.0 and --http0.9. This option is mutually exclusive to -0, --http1.0 and --http2 and --http2-prior-knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http2-prior-knowledge&lt;br /&gt;
              (HTTP)  Tells  curl  to  issue  its non-TLS HTTP requests using HTTP/2 without HTTP/1.1 Upgrade. It requires prior knowledge that the server supports HTTP/2 straight away. HTTPS requests will&lt;br /&gt;
              still do HTTP/2 the standard way with negotiated protocol version in the TLS handshake.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2-prior-knowledge multiple times has no extra effect.  Disable it again with --no-http2-prior-knowledge.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2-prior-knowledge https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http2 and --http3. --http2-prior-knowledge requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and  -0,  --http1.0  and&lt;br /&gt;
              --http2 and --http3. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --http2&lt;br /&gt;
              (HTTP) Tells curl to use HTTP version 2.&lt;br /&gt;
&lt;br /&gt;
              For HTTPS, this means curl will attempt to negotiate HTTP/2 in the TLS handshake. curl does this by default.&lt;br /&gt;
&lt;br /&gt;
              For HTTP, this means curl will attempt to upgrade the request to HTTP/2 using the Upgrade: request header.&lt;br /&gt;
&lt;br /&gt;
              When curl uses HTTP/2 over HTTPS, it does not itself insist on TLS 1.2 or higher even though that is required by the specification. A user can add this version requirement with --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
              Providing --http2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http3. --http2 requires that the underlying libcurl was built to support HTTP/2. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2-prior-&lt;br /&gt;
              knowledge and --http3. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --http3-only&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Instructs curl to use HTTP/3 to the host in the URL, with no fallback to earlier HTTP versions. HTTP/3 can only be used for HTTPS and not for HTTP URLs. For HTTP, this option will trigger  an&lt;br /&gt;
              error.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              This option will make curl fail if a QUIC connection cannot be established, it will not attempt any other HTTP version on its own. Use --http3 for similar functionality with a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3-only multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3-only https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1,  --http2 and --http3. --http3-only requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and&lt;br /&gt;
              --http2 and --http2-prior-knowledge and --http3. Added in 7.88.0.&lt;br /&gt;
&lt;br /&gt;
       --http3&lt;br /&gt;
              (HTTP) **WARNING**: this option is experimental. Do not use in production.&lt;br /&gt;
&lt;br /&gt;
              Tells curl to try HTTP/3 to the host in the URL, but fallback to earlier HTTP versions if the HTTP/3 connection establishment fails. HTTP/3 is only available for HTTPS and not for HTTP URLs.&lt;br /&gt;
&lt;br /&gt;
              This option allows a user to avoid using the Alt-Svc method of upgrading to HTTP/3 when you know that the target speaks HTTP/3 on the given host and port.&lt;br /&gt;
&lt;br /&gt;
              When asked to use HTTP/3, curl will issue a separate attempt to use older HTTP versions with a slight delay, so if the HTTP/3 transfer fails or is very slow, curl will still  try  to  proceed&lt;br /&gt;
              with an older HTTP version.&lt;br /&gt;
&lt;br /&gt;
              Use --http3-only for similar functionality without a fallback.&lt;br /&gt;
&lt;br /&gt;
              Providing --http3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --http3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1  and  --http2.  --http3 requires that the underlying libcurl was built to support HTTP/3. This option is mutually exclusive to --http1.1 and -0, --http1.0 and --http2 and&lt;br /&gt;
              --http2-prior-knowledge and --http3-only. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --ignore-content-length&lt;br /&gt;
              (FTP HTTP) For HTTP, Ignore the Content-Length header. This is particularly useful for servers running Apache 1.x, which will report incorrect Content-Length for files  larger  than  2  giga‐&lt;br /&gt;
              bytes.&lt;br /&gt;
&lt;br /&gt;
              For FTP (since 7.46.0), skip the RETR command to figure out the size before downloading a file.&lt;br /&gt;
&lt;br /&gt;
              This option does not work for HTTP if libcurl was built to use hyper.&lt;br /&gt;
&lt;br /&gt;
              Providing --ignore-content-length multiple times has no extra effect.  Disable it again with --no-ignore-content-length.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ignore-content-length https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ftp-skip-pasv-ip.&lt;br /&gt;
&lt;br /&gt;
       -i, --include&lt;br /&gt;
              Include the HTTP response headers in the output. The HTTP response headers can include things like server name, cookies, date of the document, HTTP version and more...&lt;br /&gt;
&lt;br /&gt;
              To view the request headers, consider the -v, --verbose option.&lt;br /&gt;
&lt;br /&gt;
              Providing -i, --include multiple times has no extra effect.  Disable it again with --no-include.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -i https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       -k, --insecure&lt;br /&gt;
              (TLS  SFTP  SCP) By default, every secure connection curl makes is verified to be secure before the transfer takes place. This option makes curl skip the verification step and proceed without&lt;br /&gt;
              checking.&lt;br /&gt;
&lt;br /&gt;
              When this option is not used for protocols using TLS, curl verifies the server&#039;s TLS certificate before it continues: that the certificate contains the right name which matches the host  name&lt;br /&gt;
              used in the URL and that the certificate has been signed by a CA certificate present in the cert store.  See this online resource for further details:&lt;br /&gt;
               https://curl.se/docs/sslcerts.html&lt;br /&gt;
&lt;br /&gt;
              For SFTP and SCP, this option makes curl skip the known_hosts verification.  known_hosts is a file normally stored in the user&#039;s home directory in the &amp;quot;.ssh&amp;quot; subdirectory, which contains host&lt;br /&gt;
              names and their public keys.&lt;br /&gt;
&lt;br /&gt;
              WARNING: using this option makes the transfer insecure.&lt;br /&gt;
&lt;br /&gt;
              When curl uses secure protocols it trusts responses and allows for example HSTS and Alt-Svc information to be stored and used subsequently. Using -k, --insecure can make curl  trust  and  use&lt;br /&gt;
              such information from malicious servers.&lt;br /&gt;
&lt;br /&gt;
              Providing -k, --insecure multiple times has no extra effect.  Disable it again with --no-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --insecure https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-insecure, --cacert and --capath.&lt;br /&gt;
&lt;br /&gt;
       --interface &amp;lt;name&amp;gt;&lt;br /&gt;
              Perform an operation using a specified interface. You can enter interface name, IP address or host name. An example could look like:&lt;br /&gt;
&lt;br /&gt;
               curl --interface eth0:1 https://www.example.com/&lt;br /&gt;
&lt;br /&gt;
              On Linux it can be used to specify a VRF, but the binary needs to either have CAP_NET_RAW or to be run as root. More information about Linux VRF: https://www.kernel.org/doc/Documentation/net‐&lt;br /&gt;
              working/vrf.txt&lt;br /&gt;
&lt;br /&gt;
              If --interface is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --interface eth0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --dns-interface.&lt;br /&gt;
&lt;br /&gt;
       -4, --ipv4&lt;br /&gt;
              This option tells curl to use IPv4 addresses only, and not for example try IPv6.&lt;br /&gt;
&lt;br /&gt;
              Providing -4, --ipv4 multiple times has no extra effect.  Disable it again with --no-ipv4.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv4 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -6, --ipv6.&lt;br /&gt;
&lt;br /&gt;
       -6, --ipv6&lt;br /&gt;
              This option tells curl to use IPv6 addresses only, and not for example try IPv4.&lt;br /&gt;
&lt;br /&gt;
              Providing -6, --ipv6 multiple times has no extra effect.  Disable it again with --no-ipv6.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ipv6 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. This option is mutually exclusive to -4, --ipv4.&lt;br /&gt;
&lt;br /&gt;
       --json &amp;lt;data&amp;gt;&lt;br /&gt;
              (HTTP) Sends the specified JSON data in a POST request to the HTTP server. --json works as a shortcut for passing on these three options:&lt;br /&gt;
&lt;br /&gt;
               --data [arg]&lt;br /&gt;
               --header &amp;quot;Content-Type: application/json&amp;quot;&lt;br /&gt;
               --header &amp;quot;Accept: application/json&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              There is no verification that the passed in data is actual JSON or that the syntax is correct.&lt;br /&gt;
&lt;br /&gt;
              If you start the data with the letter @, the rest should be a file name to read the data from, or a single dash (-) if you want curl to read the data from stdin.  Posting  data  from  a  file&lt;br /&gt;
              named &#039;foobar&#039; would thus be done with --json @foobar and to instead read the data from stdin, use --json @-.&lt;br /&gt;
&lt;br /&gt;
              If this option is used more than once on the same command line, the additional data pieces will be concatenated to the previous before sending.&lt;br /&gt;
&lt;br /&gt;
              The headers this option sets can be overridden with -H, --header as usual.&lt;br /&gt;
&lt;br /&gt;
              --json can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;: &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json &#039;{ &amp;quot;drink&amp;quot;:&#039; --json &#039; &amp;quot;coffe&amp;quot; }&#039; https://example.com&lt;br /&gt;
               curl --json @prepared https://example.com&lt;br /&gt;
               curl --json @- https://example.com &amp;lt; json.txt&lt;br /&gt;
&lt;br /&gt;
              See also --data-binary and --data-raw. This option is mutually exclusive to -F, --form and -I, --head and -T, --upload-file. Added in 7.82.0.&lt;br /&gt;
&lt;br /&gt;
       -j, --junk-session-cookies&lt;br /&gt;
              (HTTP)  When  curl  is told to read cookies from a given file, this option will make it discard all &amp;quot;session cookies&amp;quot;. This will basically have the same effect as if a new session is started.&lt;br /&gt;
              Typical browsers always discard session cookies when they are closed down.&lt;br /&gt;
&lt;br /&gt;
              Providing -j, --junk-session-cookies multiple times has no extra effect.  Disable it again with --no-junk-session-cookies.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --junk-session-cookies -b cookies.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -b, --cookie and -c, --cookie-jar.&lt;br /&gt;
&lt;br /&gt;
       --keepalive-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              This option sets the time a connection needs to remain idle before sending keepalive probes and the time between individual keepalive probes. It is currently effective  on  operating  systems&lt;br /&gt;
              offering  the  TCP_KEEPIDLE  and TCP_KEEPINTVL socket options (meaning Linux, recent AIX, HP-UX and more).  Keepalives are used by the TCP stack to detect broken networks on idle connections.&lt;br /&gt;
              The number of missed keepalive probes before declaring the connection down is OS dependent and is commonly 9 or 10. This option has no effect if --no-keepalive is used.&lt;br /&gt;
&lt;br /&gt;
              If unspecified, the option defaults to 60 seconds.&lt;br /&gt;
&lt;br /&gt;
              If --keepalive-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --keepalive-time 20 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-keepalive and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       --key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              (TLS) Private key file type. Specify which type your --key provided private key is. DER, PEM, and ENG are supported. If not specified, PEM is assumed.&lt;br /&gt;
&lt;br /&gt;
              If --key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --key-type DER --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key.&lt;br /&gt;
&lt;br /&gt;
       --key &amp;lt;key&amp;gt;&lt;br /&gt;
              (TLS SSH) Private key file name. Allows you to provide your private key in this separate file. For SSH, if not specified, curl  tries  the  following  candidates  in  order:  &#039;~/.ssh/id_rsa&#039;,&lt;br /&gt;
              &#039;~/.ssh/id_dsa&#039;, &#039;./id_rsa&#039;, &#039;./id_dsa&#039;.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against OpenSSL library, and the engine pkcs11 is available, then a PKCS#11 URI (RFC 7512) can be used to specify a private key located in a PKCS#11 device. A string begin‐&lt;br /&gt;
              ning with &amp;quot;pkcs11:&amp;quot; will be interpreted as a PKCS#11 URI. If a PKCS#11 URI is provided, then the --engine option will be set as &amp;quot;pkcs11&amp;quot; if none was provided and the --key-type option will be&lt;br /&gt;
              set as &amp;quot;ENG&amp;quot; if none was provided.&lt;br /&gt;
&lt;br /&gt;
              If  curl  is built against Secure Transport or Schannel then this option is ignored for TLS protocols (HTTPS, etc). Those backends expect the private key to be already present in the keychain&lt;br /&gt;
              or PKCS#12 file containing the certificate.&lt;br /&gt;
&lt;br /&gt;
              If --key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --cert certificate --key here https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key-type and -E, --cert.&lt;br /&gt;
&lt;br /&gt;
       --krb &amp;lt;level&amp;gt;&lt;br /&gt;
              (FTP) Enable Kerberos authentication and use. The level must be entered and should be one of &#039;clear&#039;, &#039;safe&#039;, &#039;confidential&#039;, or &#039;private&#039;. Should you use a level that is not  one  of  these,&lt;br /&gt;
              &#039;private&#039; will instead be used.&lt;br /&gt;
&lt;br /&gt;
              If --krb is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --krb clear ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --delegation and --ssl. --krb requires that the underlying libcurl was built to support Kerberos.&lt;br /&gt;
&lt;br /&gt;
       --libcurl &amp;lt;file&amp;gt;&lt;br /&gt;
              Append this option to any ordinary curl command line, and you will get libcurl-using C source code written to the file that does the equivalent of what your command-line operation does!&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --libcurl is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --libcurl client.c https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --limit-rate &amp;lt;speed&amp;gt;&lt;br /&gt;
              Specify the maximum transfer rate you want curl to use - for both downloads and uploads. This feature is useful if you have a limited pipe and you would like your transfer not to use your en‐&lt;br /&gt;
              tire bandwidth. To make it slower than it otherwise would be.&lt;br /&gt;
&lt;br /&gt;
              The given speed is measured in bytes/second, unless a suffix is appended.  Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or  &#039;G&#039;  makes  it&lt;br /&gt;
              gigabytes. The suffixes (k, M, G, T, P) are 1024 based. For example 1k is 1024. Examples: 200K, 3m and 1G.&lt;br /&gt;
&lt;br /&gt;
              The rate limiting logic works on averaging the transfer speed to no more than the set threshold over a period of multiple seconds.&lt;br /&gt;
&lt;br /&gt;
              If you also use the -Y, --speed-limit option, that option will take precedence and might cripple the rate-limiting slightly, to help keeping the speed-limit logic working.&lt;br /&gt;
&lt;br /&gt;
              If --limit-rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --limit-rate 100K https://example.com&lt;br /&gt;
               curl --limit-rate 1000 https://example.com&lt;br /&gt;
               curl --limit-rate 10M https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --rate, -Y, --speed-limit and -y, --speed-time.&lt;br /&gt;
&lt;br /&gt;
       -l, --list-only&lt;br /&gt;
              (FTP  POP3)  (FTP)  When listing an FTP directory, this switch forces a name-only view. This is especially useful if the user wants to machine-parse the contents of an FTP directory since the&lt;br /&gt;
              normal directory view does not use a standard look or format. When used like this, the option causes an NLST command to be sent to the server instead of LIST.&lt;br /&gt;
&lt;br /&gt;
              Note: Some FTP servers list only files in their response to NLST; they do not include sub-directories and symbolic links.&lt;br /&gt;
&lt;br /&gt;
              (POP3) When retrieving a specific email from POP3, this switch forces a LIST command to be performed instead of RETR. This is particularly useful if the user wants to see if a  specific  mes‐&lt;br /&gt;
              sage-id exists on the server and what size it is.&lt;br /&gt;
&lt;br /&gt;
              Note:  When  combined  with -X, --request, this option can be used to send a UIDL command instead, so the user may use the email&#039;s unique identifier rather than its message-id to make the re‐&lt;br /&gt;
              quest.&lt;br /&gt;
&lt;br /&gt;
              Providing -l, --list-only multiple times has no extra effect.  Disable it again with --no-list-only.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --list-only ftp://example.com/dir/&lt;br /&gt;
&lt;br /&gt;
              See also -Q, --quote and -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --local-port &amp;lt;num/range&amp;gt;&lt;br /&gt;
              Set a preferred single number or range (FROM-TO) of local port numbers to use for the connection(s).  Note that port numbers by nature are a scarce resource that will be busy at times so set‐&lt;br /&gt;
              ting this range to something too narrow might cause unnecessary connection setup failures.&lt;br /&gt;
&lt;br /&gt;
              If --local-port is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --local-port 1000-3000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -g, --globoff.&lt;br /&gt;
&lt;br /&gt;
       --location-trusted&lt;br /&gt;
              (HTTP) Like -L, --location, but will allow sending the name + password to all hosts that the site may redirect to. This may or may not introduce a security breach if the site redirects you to&lt;br /&gt;
              a site to which you will send your authentication info (which is plaintext in the case of HTTP Basic authentication).&lt;br /&gt;
&lt;br /&gt;
              Providing --location-trusted multiple times has no extra effect.  Disable it again with --no-location-trusted.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --location-trusted -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user.&lt;br /&gt;
&lt;br /&gt;
       -L, --location&lt;br /&gt;
              (HTTP) If the server reports that the requested page has moved to a different location (indicated with a Location: header and a 3XX response code), this option will make curl redo the request&lt;br /&gt;
              on  the  new place. If used together with -i, --include or -I, --head, headers from all requested pages will be shown. When authentication is used, curl only sends its credentials to the ini‐&lt;br /&gt;
              tial host. If a redirect takes curl to a different host, it will not be able to intercept the user+password. See also --location-trusted on how to change this. You can  limit  the  amount  of&lt;br /&gt;
              redirects to follow by using the --max-redirs option.&lt;br /&gt;
&lt;br /&gt;
              When  curl  follows  a  redirect  and if the request is a POST, it will send the following request with a GET if the HTTP response was 301, 302, or 303. If the response code was any other 3xx&lt;br /&gt;
              code, curl will re-send the following request using the same unmodified method.&lt;br /&gt;
&lt;br /&gt;
              You can tell curl to not change POST requests to GET after a 30x response by using the dedicated options for that: --post301, --post302 and --post303.&lt;br /&gt;
&lt;br /&gt;
              The method set with -X, --request overrides the method curl would otherwise select to use.&lt;br /&gt;
&lt;br /&gt;
              Providing -L, --location multiple times has no extra effect.  Disable it again with --no-location.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --resolve and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --login-options &amp;lt;options&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP) Specify the login options to use during server authentication.&lt;br /&gt;
&lt;br /&gt;
              You can use login options to specify protocol specific options that may be used during authentication. At present only IMAP, POP3 and SMTP support login options. For  more  information  about&lt;br /&gt;
              login options please see RFC 2384, RFC 5092 and IETF draft draft-earhart-url-smtp-00.txt&lt;br /&gt;
&lt;br /&gt;
              If --login-options is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --login-options &#039;AUTH=*&#039; imap://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -u, --user. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-auth &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address. This will be used to specify the authentication address (identity) of a submitted message that is being relayed to another server.&lt;br /&gt;
&lt;br /&gt;
              If --mail-auth is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-auth user@example.come -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-from.&lt;br /&gt;
&lt;br /&gt;
       --mail-from &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single address that the given mail should get sent from.&lt;br /&gt;
&lt;br /&gt;
              If --mail-from is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-from user@example.com -T mail smtp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt and --mail-auth.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt-allowfails&lt;br /&gt;
              (SMTP) When sending data to multiple recipients, by default curl will abort SMTP conversation if at least one of the recipients causes RCPT TO command to return an error.&lt;br /&gt;
&lt;br /&gt;
              The default behavior can be changed by passing --mail-rcpt-allowfails command-line option which will make curl ignore errors and proceed with the remaining valid recipients.&lt;br /&gt;
&lt;br /&gt;
              If all recipients trigger RCPT TO failures and this flag is specified, curl will still abort the SMTP conversation and return the error received from to the last RCPT TO command.&lt;br /&gt;
&lt;br /&gt;
              Providing --mail-rcpt-allowfails multiple times has no extra effect.  Disable it again with --no-mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt. Added in 7.69.0.&lt;br /&gt;
&lt;br /&gt;
       --mail-rcpt &amp;lt;address&amp;gt;&lt;br /&gt;
              (SMTP) Specify a single email address, user name or mailing list name. Repeat this option several times to send to multiple recipients.&lt;br /&gt;
&lt;br /&gt;
              When performing an address verification (VRFY command), the recipient should be specified as the user name or user name and domain (as per Section 3.5 of RFC5321). (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              When performing a mailing list expand (EXPN command), the recipient should be specified using the mailing list name, such as &amp;quot;Friends&amp;quot; or &amp;quot;London-Office&amp;quot;.  (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              --mail-rcpt can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --mail-rcpt user@example.net smtp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --mail-rcpt-allowfails.&lt;br /&gt;
&lt;br /&gt;
       -M, --manual&lt;br /&gt;
              Manual. Display the huge help text.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --manual&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --libcurl and --trace.&lt;br /&gt;
&lt;br /&gt;
       --max-filesize &amp;lt;bytes&amp;gt;&lt;br /&gt;
              (FTP HTTP MQTT) Specify the maximum size (in bytes) of a file to download. If the file requested is larger than this value, the transfer will not start and curl will return with exit code 63.&lt;br /&gt;
&lt;br /&gt;
              A  size  modifier may be used. For example, Appending &#039;k&#039; or &#039;K&#039; will count the number as kilobytes, &#039;m&#039; or &#039;M&#039; makes it megabytes, while &#039;g&#039; or &#039;G&#039; makes it gigabytes. Examples: 200K, 3m and&lt;br /&gt;
              1G. (Added in 7.58.0)&lt;br /&gt;
&lt;br /&gt;
              NOTE: The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit.   If  --max-file‐&lt;br /&gt;
              size is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-filesize 100K https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --max-redirs &amp;lt;num&amp;gt;&lt;br /&gt;
              (HTTP) Set maximum number of redirections to follow. When -L, --location is used, to prevent curl from following too many redirects, by default, the limit is set to 50 redirects. Set this op‐&lt;br /&gt;
              tion to -1 to make it unlimited.&lt;br /&gt;
&lt;br /&gt;
              If --max-redirs is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --max-redirs 3 --location https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -L, --location.&lt;br /&gt;
&lt;br /&gt;
       -m, --max-time &amp;lt;fractional seconds&amp;gt;&lt;br /&gt;
              Maximum time in seconds that you allow each transfer to take.  This is useful for preventing your batch jobs from hanging for hours due to slow networks or links going  down.   Since  7.32.0,&lt;br /&gt;
              this option accepts decimal values, but the actual timeout will decrease in accuracy as the specified timeout increases in decimal precision.&lt;br /&gt;
&lt;br /&gt;
              If you enable retrying the transfer (--retry) then the maximum time counter is reset each time the transfer is retried. You can use --retry-max-time to limit the retry time.&lt;br /&gt;
&lt;br /&gt;
              The decimal value needs to provided using a dot (.) as decimal separator - not the local version even if it might be using another separator.&lt;br /&gt;
&lt;br /&gt;
              If -m, --max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --max-time 10 https://example.com&lt;br /&gt;
               curl --max-time 2.92 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-timeout and --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --metalink&lt;br /&gt;
              This option was previously used to specify a metalink resource. Metalink support has been disabled in curl since 7.78.0 for security reasons.&lt;br /&gt;
&lt;br /&gt;
              If --metalink is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --metalink file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel.&lt;br /&gt;
&lt;br /&gt;
       --negotiate&lt;br /&gt;
              (HTTP) Enables Negotiate (SPNEGO) authentication.&lt;br /&gt;
&lt;br /&gt;
              This option requires a library built with GSS-API or SSPI support. Use -V, --version to see if your curl supports GSS-API/SSPI or SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              When  using  this  option,  you  must also provide a fake -u, --user option to activate the authentication code properly. Sending a &#039;-u :&#039; is enough as the user name and password from the -u,&lt;br /&gt;
              --user option are not actually used.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --negotiate -u : https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm, --anyauth and --proxy-negotiate.&lt;br /&gt;
&lt;br /&gt;
       --netrc-file &amp;lt;filename&amp;gt;&lt;br /&gt;
              This option is similar to -n, --netrc, except that you provide the path (absolute or relative) to the netrc file that curl should use. You can only specify one netrc file per invocation.&lt;br /&gt;
&lt;br /&gt;
              It will abide by --netrc-optional if specified.&lt;br /&gt;
&lt;br /&gt;
              If --netrc-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-file netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc, -u, --user and -K, --config. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       --netrc-optional&lt;br /&gt;
              Similar to -n, --netrc, but this option makes the .netrc usage optional and not mandatory as the -n, --netrc option does.&lt;br /&gt;
&lt;br /&gt;
              Providing --netrc-optional multiple times has no extra effect.  Disable it again with --no-netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc-optional https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file. This option is mutually exclusive to -n, --netrc.&lt;br /&gt;
&lt;br /&gt;
       -n, --netrc&lt;br /&gt;
              Makes curl scan the .netrc (_netrc on Windows) file in the user&#039;s home directory for login name and password. This is typically used for FTP on Unix. If used with HTTP, curl will enable  user&lt;br /&gt;
              authentication.  See  netrc(5)  and ftp(1) for details on the file format. Curl will not complain if that file does not have the right permissions (it should be neither world- nor group-read‐&lt;br /&gt;
              able). The environment variable &amp;quot;HOME&amp;quot; is used to find the home directory.&lt;br /&gt;
&lt;br /&gt;
              A quick and simple example of how to setup a .netrc to allow curl to FTP to the machine host.domain.com with user name &#039;myself&#039; and password &#039;secret&#039; could look similar to:&lt;br /&gt;
&lt;br /&gt;
               machine host.domain.com&lt;br /&gt;
               login myself&lt;br /&gt;
               password secret&lt;br /&gt;
&lt;br /&gt;
              Providing -n, --netrc multiple times has no extra effect.  Disable it again with --no-netrc.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --netrc https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --netrc-file, -K, --config and -u, --user. This option is mutually exclusive to --netrc-file and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
       -:, --next&lt;br /&gt;
              Tells curl to use a separate operation for the following URL and associated options. This allows you to send several URL requests, each with their own specific options, for example,  such  as&lt;br /&gt;
              different user names or custom requests for each.&lt;br /&gt;
&lt;br /&gt;
              -:,  --next  will reset all local options and only global ones will have their values survive over to the operation following the -:, --next instruction. Global options include -v, --verbose,&lt;br /&gt;
              --trace, --trace-ascii and --fail-early.&lt;br /&gt;
&lt;br /&gt;
              For example, you can do both a GET and a POST in a single command line:&lt;br /&gt;
&lt;br /&gt;
               curl www1.example.com --next -d postthis www2.example.com&lt;br /&gt;
&lt;br /&gt;
              -:, --next can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl https://example.com --next -d postthis www2.example.com&lt;br /&gt;
               curl -I https://example.com --next https://example.net/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and -K, --config. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-alpn&lt;br /&gt;
              (HTTPS) Disable the ALPN TLS extension. ALPN is enabled by default if libcurl was built with an SSL library that supports ALPN. ALPN is used by a libcurl that  supports  HTTP/2  to  negotiate&lt;br /&gt;
              HTTP/2 support with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-alpn multiple times has no extra effect.  Disable it again with --alpn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-alpn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-npn and --http2. --no-alpn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       -N, --no-buffer&lt;br /&gt;
              Disables  the  buffering of the output stream. In normal work situations, curl will use a standard buffered output stream that will have the effect that it will output the data in chunks, not&lt;br /&gt;
              necessarily exactly when the data arrives.  Using this option will disable that buffering.&lt;br /&gt;
&lt;br /&gt;
              Providing -N, --no-buffer multiple times has no extra effect.  Disable it again with --buffer.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-buffer https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -#, --progress-bar.&lt;br /&gt;
&lt;br /&gt;
       --no-clobber&lt;br /&gt;
              When used in conjunction with the -o, --output, -J, --remote-header-name, -O, --remote-name, or --remote-name-all options, curl avoids overwriting files that already exist. Instead, a dot and&lt;br /&gt;
              a number gets appended to the name of the file that would be created, up to filename.100 after which it will not create any file.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented.  You can thus use --clobber to enforce the clobbering, even if -J, --remote-header-name is specified.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-clobber multiple times has no extra effect.  Disable it again with --clobber.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-clobber --output local/dir/file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -o, --output and -O, --remote-name. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --no-keepalive&lt;br /&gt;
              Disables the use of keepalive messages on the TCP connection. curl otherwise enables them by default.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --keepalive to enforce keepalive.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-keepalive multiple times has no extra effect.  Disable it again with --keepalive.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-keepalive https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --keepalive-time.&lt;br /&gt;
&lt;br /&gt;
       --no-npn&lt;br /&gt;
              (HTTPS) In curl 7.86.0 and later, curl never uses NPN.&lt;br /&gt;
&lt;br /&gt;
              Disable  the NPN TLS extension. NPN is enabled by default if libcurl was built with an SSL library that supports NPN. NPN is used by a libcurl that supports HTTP/2 to negotiate HTTP/2 support&lt;br /&gt;
              with the server during https sessions.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-npn multiple times has no extra effect.  Disable it again with --npn.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-npn https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-alpn and --http2. --no-npn requires that the underlying libcurl was built to support TLS. Added in 7.36.0.&lt;br /&gt;
&lt;br /&gt;
       --no-progress-meter&lt;br /&gt;
              Option to switch off the progress meter output without muting or otherwise affecting warning and informational messages like -s, --silent does.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --progress-meter to enable the progress meter again.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-progress-meter multiple times has no extra effect.  Disable it again with --progress-meter.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-progress-meter -o store https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent. Added in 7.67.0.&lt;br /&gt;
&lt;br /&gt;
       --no-sessionid&lt;br /&gt;
              (TLS) Disable curl&#039;s use of SSL session-ID caching. By default all transfers are done using the cache. Note that while nothing should ever get hurt by attempting  to  reuse  SSL  session-IDs,&lt;br /&gt;
              there seem to be broken SSL implementations in the wild that may require you to disable this in order for you to succeed.&lt;br /&gt;
&lt;br /&gt;
              Note that this is the negated option name documented. You can thus use --sessionid to enforce session-ID caching.&lt;br /&gt;
&lt;br /&gt;
              Providing --no-sessionid multiple times has no extra effect.  Disable it again with --sessionid.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --no-sessionid https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --noproxy &amp;lt;no-proxy-list&amp;gt;&lt;br /&gt;
              Comma-separated  list  of hosts for which not to use a proxy, if one is specified. The only wildcard is a single * character, which matches all hosts, and effectively disables the proxy. Each&lt;br /&gt;
              name in this list is matched as either a domain which contains the hostname, or the hostname itself. For example, local.com would match local.com, local.com:80,  and  www.local.com,  but  not&lt;br /&gt;
              www.notlocal.com.&lt;br /&gt;
&lt;br /&gt;
              Since 7.53.0, This option overrides the environment variables that disable the proxy (&#039;no_proxy&#039; and &#039;NO_PROXY&#039;). If there&#039;s an environment variable disabling a proxy, you can set the noproxy&lt;br /&gt;
              list to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses specified to this option can be provided using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use  in  the&lt;br /&gt;
              comparison. For example &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --noproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --noproxy &amp;quot;www.example&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --ntlm-wb&lt;br /&gt;
              (HTTP) Enables NTLM much in the style --ntlm does, but hand over the authentication to the separate binary ntlmauth application that is executed when needed.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm-wb multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm-wb -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ntlm and --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
       --ntlm (HTTP)  Enables NTLM authentication. The NTLM authentication method was designed by Microsoft and is used by IIS web servers. It is a proprietary protocol, reverse-engineered by clever people&lt;br /&gt;
              and implemented in curl based on their efforts. This kind of behavior should not be endorsed, you should encourage everyone who uses NTLM to switch to a public and  documented  authentication&lt;br /&gt;
              method instead, such as Digest.&lt;br /&gt;
&lt;br /&gt;
              If you want to enable NTLM for your proxy authentication, then use --proxy-ntlm.&lt;br /&gt;
&lt;br /&gt;
              If this option is used several times, only the first one is used.&lt;br /&gt;
&lt;br /&gt;
              Providing --ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ntlm -u user:password https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ntlm. --ntlm requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --basic and --negotiate and --digest and --anyauth.&lt;br /&gt;
&lt;br /&gt;
       --oauth2-bearer &amp;lt;token&amp;gt;&lt;br /&gt;
              (IMAP LDAP POP3 SMTP HTTP) Specify the Bearer Token for OAUTH 2.0 server authentication. The Bearer Token is used in conjunction with the user name which can be specified as part of the --url&lt;br /&gt;
              or -u, --user options.&lt;br /&gt;
&lt;br /&gt;
              The Bearer Token and user name are formatted according to RFC 6750.&lt;br /&gt;
&lt;br /&gt;
              If --oauth2-bearer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --oauth2-bearer &amp;quot;mF_9.B5f-4.1JqM&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --basic, --ntlm and --digest. Added in 7.33.0.&lt;br /&gt;
&lt;br /&gt;
       --output-dir &amp;lt;dir&amp;gt;&lt;br /&gt;
              This option specifies the directory in which files should be stored, when -O, --remote-name or -o, --output are used.&lt;br /&gt;
&lt;br /&gt;
              The given output directory is used for all URLs and output options on the command line, up until the first -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If the specified target directory does not exist, the operation will fail unless --create-dirs is also used.&lt;br /&gt;
&lt;br /&gt;
              If --output-dir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --output-dir &amp;quot;tmp&amp;quot; -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -J, --remote-header-name. Added in 7.73.0.&lt;br /&gt;
&lt;br /&gt;
       -o, --output &amp;lt;file&amp;gt;&lt;br /&gt;
              Write output to &amp;lt;file&amp;gt; instead of stdout. If you are using {} or [] to fetch multiple documents, you should quote the URL and you can use &#039;#&#039; followed by a number  in  the  &amp;lt;file&amp;gt;  specifier.&lt;br /&gt;
              That variable will be replaced with the current string for the URL being fetched. Like in:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              or use several variables like:&lt;br /&gt;
&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have. For example, if you specify two URLs on the same command line, you can use it like this:&lt;br /&gt;
&lt;br /&gt;
                curl -o aa example.com -o bb example.net&lt;br /&gt;
&lt;br /&gt;
              and the order of the -o options and the URLs does not matter, just that the first -o is for the first URL and so on, so the above command line can also be written as&lt;br /&gt;
&lt;br /&gt;
                curl example.com example.net -o aa -o bb&lt;br /&gt;
&lt;br /&gt;
              See also the --create-dirs option to create the local directories dynamically. Specifying the output as &#039;-&#039; (a single dash) will force the output to be done to stdout.&lt;br /&gt;
&lt;br /&gt;
              To suppress response bodies, you can redirect output to /dev/null:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o /dev/null&lt;br /&gt;
&lt;br /&gt;
              Or for Windows use nul:&lt;br /&gt;
&lt;br /&gt;
                curl example.com -o nul&lt;br /&gt;
&lt;br /&gt;
              -o, --output can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -o file https://example.com&lt;br /&gt;
               curl &amp;quot;http://{one,two}.example.com&amp;quot; -o &amp;quot;file_#1.txt&amp;quot;&lt;br /&gt;
               curl &amp;quot;http://{site,host}.host[1-5].com&amp;quot; -o &amp;quot;#1_#2&amp;quot;&lt;br /&gt;
               curl -o file https://example.com -o file2 https://example.net&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name, --remote-name-all and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       --parallel-immediate&lt;br /&gt;
              When  doing  parallel transfers, this option will instruct curl that it should rather prefer opening up more connections in parallel at once rather than waiting to see if new transfers can be&lt;br /&gt;
              added as multiplexed streams on another connection.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --parallel-immediate multiple times has no extra effect.  Disable it again with --no-parallel-immediate.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel and --parallel-max. Added in 7.68.0.&lt;br /&gt;
&lt;br /&gt;
       --parallel-max &amp;lt;num&amp;gt;&lt;br /&gt;
              When asked to do parallel transfers, using -Z, --parallel, this option controls the maximum amount of transfers to do simultaneously.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              The default is 50.&lt;br /&gt;
&lt;br /&gt;
              If --parallel-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel-max 100 -Z https://example.com ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -Z, --parallel. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       -Z, --parallel&lt;br /&gt;
              Makes curl perform its transfers in parallel as compared to the regular serial manner.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -Z, --parallel multiple times has no extra effect.  Disable it again with --no-parallel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --parallel https://example.com -o file1 https://example.com -o file2&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -v, --verbose. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              (SSH TLS) Passphrase for the private key.&lt;br /&gt;
&lt;br /&gt;
              If --pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pass secret --key file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --key and -u, --user.&lt;br /&gt;
&lt;br /&gt;
       --path-as-is&lt;br /&gt;
              Tell curl to not handle sequences of /../ or /./ in the given URL path. Normally curl will squash or merge them according to standards but with this option set you tell it not to do that.&lt;br /&gt;
&lt;br /&gt;
              Providing --path-as-is multiple times has no extra effect.  Disable it again with --no-path-as-is.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --path-as-is https://example.com/../../etc/passwd&lt;br /&gt;
&lt;br /&gt;
              See also --request-target. Added in 7.42.0.&lt;br /&gt;
&lt;br /&gt;
       --pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS) Tells curl to use the specified public key file (or hashes) to verify the peer. This can be a path to a file which contains a single public key in PEM or DER format, or  any  number  of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When  negotiating  a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match the public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              PEM/DER support:&lt;br /&gt;
&lt;br /&gt;
              7.39.0: OpenSSL, GnuTLS and GSKit&lt;br /&gt;
&lt;br /&gt;
              7.43.0: NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              sha256 support:&lt;br /&gt;
&lt;br /&gt;
              7.44.0: OpenSSL, GnuTLS, NSS and wolfSSL&lt;br /&gt;
&lt;br /&gt;
              7.47.0: mbedtls&lt;br /&gt;
&lt;br /&gt;
              Other SSL backends not supported.&lt;br /&gt;
&lt;br /&gt;
              If --pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --hostpubsha256. Added in 7.39.0.&lt;br /&gt;
&lt;br /&gt;
       --post301&lt;br /&gt;
              (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST requests into GET requests when following a 301 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl  does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post301 multiple times has no extra effect.  Disable it again with --no-post301.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post301 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post302&lt;br /&gt;
              (HTTP)  Tells curl to respect RFC 7231/6.4.3 and not convert POST requests into GET requests when following a 302 redirection. The non-RFC behavior is ubiquitous in web browsers, so curl does&lt;br /&gt;
              the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post302 multiple times has no extra effect.  Disable it again with --no-post302.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post302 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post301, --post303 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --post303&lt;br /&gt;
              (HTTP) Tells curl to violate RFC 7231/6.4.4 and not convert POST requests into GET requests when following 303 redirections. A server may require a POST to remain a POST after a 303 redirect‐&lt;br /&gt;
              ion. This option is meaningful only when using -L, --location.&lt;br /&gt;
&lt;br /&gt;
              Providing --post303 multiple times has no extra effect.  Disable it again with --no-post303.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --post303 --location -d &amp;quot;data&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --post302, --post301 and -L, --location.&lt;br /&gt;
&lt;br /&gt;
       --preproxy [protocol://]host[:port]&lt;br /&gt;
              Use  the  specified SOCKS proxy before connecting to an HTTP or HTTPS -x, --proxy. In such a case curl first connects to the SOCKS proxy and then connects (through SOCKS) to the HTTP or HTTPS&lt;br /&gt;
              proxy. Hence pre proxy.&lt;br /&gt;
&lt;br /&gt;
              The pre proxy string should be specified with a protocol:// prefix to specify alternative proxy protocols. Use socks4://, socks4a://, socks5:// or socks5h:// to  request  the  specific  SOCKS&lt;br /&gt;
              version to be used. No protocol specified will make curl default to SOCKS4.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              If --preproxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --preproxy socks5://proxy.example -x http://http.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --socks5. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -#, --progress-bar&lt;br /&gt;
              Make curl display transfer progress as a simple progress bar instead of the standard, more informational, meter.&lt;br /&gt;
&lt;br /&gt;
              This  progress  bar  draws a single line of &#039;#&#039; characters across the screen and shows a percentage if the transfer size is known. For transfers without a known size, there will be space ship&lt;br /&gt;
              (-=o=-) that moves back and forth but only while data is being transferred, with a set of flying hash sign symbols on top.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -#, --progress-bar multiple times has no extra effect.  Disable it again with --no-progress-bar.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -# -O https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --styled-output.&lt;br /&gt;
&lt;br /&gt;
       --proto-default &amp;lt;protocol&amp;gt;&lt;br /&gt;
              Tells curl to use protocol for any URL missing a scheme name.&lt;br /&gt;
&lt;br /&gt;
              An unknown or unsupported protocol causes error CURLE_UNSUPPORTED_PROTOCOL (1).&lt;br /&gt;
&lt;br /&gt;
              This option does not change the default proxy protocol (http).&lt;br /&gt;
&lt;br /&gt;
              Without this option set, curl guesses protocol based on the host name, see --url for details.&lt;br /&gt;
&lt;br /&gt;
              If --proto-default is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-default https ftp.example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto and --proto-redir. Added in 7.45.0.&lt;br /&gt;
&lt;br /&gt;
       --proto-redir &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use on redirect. Protocols denied by --proto are not overridden by this option. See --proto for how protocols are represented.&lt;br /&gt;
&lt;br /&gt;
              Example, allow only HTTP and HTTPS on redirect:&lt;br /&gt;
&lt;br /&gt;
               curl --proto-redir -all,http,https http://example.com&lt;br /&gt;
&lt;br /&gt;
              By default curl will only allow HTTP, HTTPS, FTP and FTPS on redirect (since 7.65.2). Specifying all or +all enables all protocols on redirects, which is not good for security.&lt;br /&gt;
&lt;br /&gt;
              If --proto-redir is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto-redir =http,https https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto.&lt;br /&gt;
&lt;br /&gt;
       --proto &amp;lt;protocols&amp;gt;&lt;br /&gt;
              Tells curl to limit what protocols it may use for transfers. Protocols are evaluated left to right, are comma separated, and are each a protocol name or &#039;all&#039;, optionally prefixed by zero  or&lt;br /&gt;
              more modifiers. Available modifiers are:&lt;br /&gt;
&lt;br /&gt;
              +  Permit this protocol in addition to protocols already permitted (this is the default if no modifier is used).&lt;br /&gt;
&lt;br /&gt;
              -  Deny this protocol, removing it from the list of protocols already permitted.&lt;br /&gt;
&lt;br /&gt;
              =  Permit only this protocol (ignoring the list already permitted), though subject to later modification by subsequent entries in the comma separated list.&lt;br /&gt;
&lt;br /&gt;
              For example:&lt;br /&gt;
&lt;br /&gt;
              --proto -ftps  uses the default protocols, but disables ftps&lt;br /&gt;
&lt;br /&gt;
              --proto -all,https,+http&lt;br /&gt;
                             only enables http and https&lt;br /&gt;
&lt;br /&gt;
              --proto =http,https&lt;br /&gt;
                             also only enables http and https&lt;br /&gt;
&lt;br /&gt;
              Unknown  and  disabled protocols produce a warning. This allows scripts to safely rely on being able to disable potentially dangerous protocols, without relying upon support for that protocol&lt;br /&gt;
              being built into curl to avoid an error.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times, in which case the effect is the same as concatenating the protocols into one instance of the option.&lt;br /&gt;
&lt;br /&gt;
              If --proto is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proto =http,https,sftp https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proto-redir and --proto-default.&lt;br /&gt;
&lt;br /&gt;
       --proxy-anyauth&lt;br /&gt;
              Tells curl to pick a suitable authentication method when communicating with the given HTTP proxy. This might cause an extra request/response round-trip.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-anyauth multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-basic and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-basic&lt;br /&gt;
              Tells curl to use HTTP Basic authentication when communicating with the given proxy. Use --basic for enabling HTTP Basic with a remote host. Basic is the default  authentication  method  curl&lt;br /&gt;
              uses with proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-digest.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cacert &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --cacert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cacert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cacert CA-file.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-capath, --cacert, --capath and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-capath &amp;lt;dir&amp;gt;&lt;br /&gt;
              Same as --capath but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-capath is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-capath /local/directory -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cacert, -x, --proxy and --capath. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --cert-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-cert &amp;lt;cert[:passwd]&amp;gt;&lt;br /&gt;
              Same as -E, --cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-cert is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-cert file -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-cert-type. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ciphers &amp;lt;list&amp;gt;&lt;br /&gt;
              Same as --ciphers but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers, --curves and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-crlfile &amp;lt;file&amp;gt;&lt;br /&gt;
              Same as --crlfile but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-crlfile is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-crlfile rejects.txt -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-digest&lt;br /&gt;
              Tells curl to use HTTP Digest authentication when communicating with the given proxy. Use --digest for enabling HTTP Digest with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-digest multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-header &amp;lt;header/@file&amp;gt;&lt;br /&gt;
              (HTTP)  Extra header to include in the request when sending HTTP to a proxy. You may specify any number of extra headers. This is the equivalent option to -H, --header but is for proxy commu‐&lt;br /&gt;
              nication only like in CONNECT requests when you want a separate header sent to the proxy to what is sent to the actual remote host.&lt;br /&gt;
&lt;br /&gt;
              curl will make sure that each header you add/replace is sent with the proper end-of-line marker, you should thus not add that as a part of the header content: do not add newlines or  carriage&lt;br /&gt;
              returns, they will only mess things up for you.&lt;br /&gt;
&lt;br /&gt;
              Headers specified with this option will not be included in requests that curl knows will not be sent to a proxy.&lt;br /&gt;
&lt;br /&gt;
              Starting in 7.55.0, this option can take an argument in @filename style, which then adds a header for each line in the input file. Using @- will make curl read the header file from stdin.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times to add/replace/remove multiple headers.&lt;br /&gt;
&lt;br /&gt;
              --proxy-header can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-header &amp;quot;X-First-Name: Joe&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;User-Agent: surprise&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
               curl --proxy-header &amp;quot;Host:&amp;quot; -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.37.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-insecure&lt;br /&gt;
              Same as -k, --insecure but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-insecure multiple times has no extra effect.  Disable it again with --no-proxy-insecure.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-insecure -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and -k, --insecure. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key-type &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --key-type but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key-type is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-key &amp;lt;key&amp;gt;&lt;br /&gt;
              Same as --key but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-key is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-key-type and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-negotiate&lt;br /&gt;
              Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating with the given proxy. Use --negotiate for enabling HTTP Negotiate (SPNEGO) with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-negotiate multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-anyauth and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ntlm&lt;br /&gt;
              Tells curl to use HTTP NTLM authentication when communicating with the given proxy. Use --ntlm for enabling NTLM with a remote host.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ntlm multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-negotiate and --proxy-anyauth.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pass &amp;lt;phrase&amp;gt;&lt;br /&gt;
              Same as --pass but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pass is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-key. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-pinnedpubkey &amp;lt;hashes&amp;gt;&lt;br /&gt;
              (TLS)  Tells  curl to use the specified public key file (or hashes) to verify the proxy. This can be a path to a file which contains a single public key in PEM or DER format, or any number of&lt;br /&gt;
              base64 encoded sha256 hashes preceded by &#039;sha256//&#039; and separated by &#039;;&#039;.&lt;br /&gt;
&lt;br /&gt;
              When negotiating a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match  the  public&lt;br /&gt;
              key provided to this option, curl will abort the connection before sending or receiving any data.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-pinnedpubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --proxy-pinnedpubkey keyfile https://example.com&lt;br /&gt;
               curl --proxy-pinnedpubkey &#039;sha256//ce118b51897f4452dc&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --pinnedpubkey and -x, --proxy. Added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for proxy negotiation.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-service-name &amp;quot;shrubbery&amp;quot; -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --service-name and -x, --proxy. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-allow-beast&lt;br /&gt;
              Same as --ssl-allow-beast but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-proxy-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-allow-beast -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-allow-beast and -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-ssl-auto-client-cert&lt;br /&gt;
              Same as --ssl-auto-client-cert but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-proxy-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-auto-client-cert and -x, --proxy. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS)  Specifies  which cipher suites to use in the connection to your HTTPS proxy when it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher&lt;br /&gt;
              suite details on this URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using  the  --proxy-&lt;br /&gt;
              ciphers option.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tls13-ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Same as --tlsauthtype but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsauthtype SRP -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Same as --tlspassword but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlspassword passwd -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlsuser. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Same as --tlsuser but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              If --proxy-tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsuser smith -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy and --proxy-tlspassword. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --proxy-tlsv1&lt;br /&gt;
              Same as -1, --tlsv1 but used in HTTPS proxy context.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy-tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-tlsv1 -x https://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -U, --proxy-user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for proxy authentication.&lt;br /&gt;
&lt;br /&gt;
              If  you use a Windows SSPI-enabled curl binary and do either Negotiate or NTLM authentication then you can tell curl to select the user name and password from your environment by specifying a&lt;br /&gt;
              single colon with this option: &amp;quot;-U :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              If -U, --proxy-user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy-user name:pwd -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-pass.&lt;br /&gt;
&lt;br /&gt;
       -x, --proxy [protocol://]host[:port]&lt;br /&gt;
              Use the specified proxy.&lt;br /&gt;
&lt;br /&gt;
              The  proxy  string  can be specified with a protocol:// prefix. No protocol specified or http:// will be treated as HTTP proxy. Use socks4://, socks4a://, socks5:// or socks5h:// to request a&lt;br /&gt;
              specific SOCKS version to be used.&lt;br /&gt;
&lt;br /&gt;
              Unix domain sockets are supported for socks proxy. Set localhost for the host part. e.g. socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              HTTPS proxy support via https:// protocol prefix was added in 7.52.0 for OpenSSL, GnuTLS and NSS.&lt;br /&gt;
&lt;br /&gt;
              Unrecognized and unsupported proxy protocols cause an error since 7.52.0.  Prior versions may ignore the protocol and use http:// instead.&lt;br /&gt;
&lt;br /&gt;
              If the port number is not specified in the proxy string, it is assumed to be 1080.&lt;br /&gt;
&lt;br /&gt;
              This option overrides existing environment variables that set the proxy to use. If there&#039;s an environment variable setting a proxy, you can set proxy to &amp;quot;&amp;quot; to override it.&lt;br /&gt;
&lt;br /&gt;
              All operations that are performed over an HTTP proxy will transparently be converted to HTTP. It means that certain protocol specific operations might not be available. This is not  the  case&lt;br /&gt;
              if you can tunnel through the proxy, as one with the -p, --proxytunnel option.&lt;br /&gt;
&lt;br /&gt;
              User and password that might be provided in the proxy string are URL decoded by curl. This allows you to pass in special characters such as @ by using %40 or pass in a colon with %3a.&lt;br /&gt;
&lt;br /&gt;
              The proxy host can be specified the same way as the proxy environment variables, including the protocol prefix (http://) and the embedded user + password.&lt;br /&gt;
&lt;br /&gt;
              When a proxy is used, the active FTP mode as set with -P, --ftp-port, cannot be used.&lt;br /&gt;
&lt;br /&gt;
              If -x, --proxy is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy http://proxy.example https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --proxy-basic.&lt;br /&gt;
&lt;br /&gt;
       --proxy1.0 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified HTTP 1.0 proxy. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              The only difference between this and the HTTP proxy option -x, --proxy, is that attempts to use CONNECT through the proxy will specify an HTTP 1.0 protocol instead of the default HTTP 1.1.&lt;br /&gt;
&lt;br /&gt;
              Providing --proxy1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxy1.0 -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy, --socks5 and --preproxy.&lt;br /&gt;
&lt;br /&gt;
       -p, --proxytunnel&lt;br /&gt;
              When an HTTP proxy is used -x, --proxy, this option will make curl tunnel through the proxy. The tunnel approach is made with the HTTP proxy CONNECT request and requires that the proxy allows&lt;br /&gt;
              direct connect to the remote port number curl wants to tunnel through to.&lt;br /&gt;
&lt;br /&gt;
              To suppress proxy CONNECT response headers when curl is set to output headers use --suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Providing -p, --proxytunnel multiple times has no extra effect.  Disable it again with --no-proxytunnel.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --proxytunnel -x http://proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -x, --proxy.&lt;br /&gt;
&lt;br /&gt;
       --pubkey &amp;lt;key&amp;gt;&lt;br /&gt;
              (SFTP SCP) Public key file name. Allows you to provide your public key in this separate file.&lt;br /&gt;
&lt;br /&gt;
              (As of 7.39.0, curl attempts to automatically extract the public key from the private key file, so passing this option is generally not required. Note that this public key extraction requires&lt;br /&gt;
              libcurl to be linked against a copy of libssh2 1.2.8 or higher that is itself linked against OpenSSL.)&lt;br /&gt;
&lt;br /&gt;
              If --pubkey is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --pubkey file.pub sftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --pass.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote &amp;lt;command&amp;gt;&lt;br /&gt;
              (FTP  SFTP)  Send  an arbitrary command to the remote FTP or SFTP server. Quote commands are sent BEFORE the transfer takes place (just after the initial PWD command in an FTP transfer, to be&lt;br /&gt;
              exact). To make commands take place after a successful transfer, prefix them with a dash &#039;-&#039;.&lt;br /&gt;
&lt;br /&gt;
              (FTP only) To make commands be sent after curl has changed the working directory, just before the file transfer command(s), prefix the command with a &#039;+&#039;. This is not performed when a  direc‐&lt;br /&gt;
              tory listing is performed.&lt;br /&gt;
&lt;br /&gt;
              You may specify any number of commands.&lt;br /&gt;
&lt;br /&gt;
              By  default  curl will stop at first failure. To make curl continue even if the command fails, prefix the command with an asterisk (*). Otherwise, if the server returns failure for one of the&lt;br /&gt;
              commands, the entire operation will be aborted.&lt;br /&gt;
&lt;br /&gt;
              You must send syntactically correct FTP commands as RFC 959 defines to FTP servers, or one of the commands listed below to SFTP servers.&lt;br /&gt;
&lt;br /&gt;
              This option can be used multiple times.&lt;br /&gt;
&lt;br /&gt;
              SFTP is a binary protocol. Unlike for FTP, curl interprets SFTP quote commands itself before sending them to the server. File names may be quoted shell-style to embed spaces or special  char‐&lt;br /&gt;
              acters. Following is the list of all supported SFTP quote commands:&lt;br /&gt;
&lt;br /&gt;
              atime date file&lt;br /&gt;
                     The atime command sets the last access time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3) man page for date ex‐&lt;br /&gt;
                     pression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              chgrp group file&lt;br /&gt;
                     The chgrp command sets the group ID of the file named by the file operand to the group ID specified by the group operand. The group operand is a decimal integer group ID.&lt;br /&gt;
&lt;br /&gt;
              chmod mode file&lt;br /&gt;
                     The chmod command modifies the file mode bits of the specified file. The mode operand is an octal integer mode number.&lt;br /&gt;
&lt;br /&gt;
              chown user file&lt;br /&gt;
                     The chown command sets the owner of the file named by the file operand to the user ID specified by the user operand. The user operand is a decimal integer user ID.&lt;br /&gt;
&lt;br /&gt;
              ln source_file target_file&lt;br /&gt;
                     The ln and symlink commands create a symbolic link at the target_file location pointing to the source_file location.&lt;br /&gt;
&lt;br /&gt;
              mkdir directory_name&lt;br /&gt;
                     The mkdir command creates the directory named by the directory_name operand.&lt;br /&gt;
&lt;br /&gt;
              mtime date file&lt;br /&gt;
                     The mtime command sets the last modification time of the file named by the file operand. The &amp;lt;date expression&amp;gt; can be all sorts of date strings, see the curl_getdate(3)  man  page  for&lt;br /&gt;
                     date expression details. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              pwd    The pwd command returns the absolute pathname of the current working directory.&lt;br /&gt;
&lt;br /&gt;
              rename source target&lt;br /&gt;
                     The rename command renames the file or directory named by the source operand to the destination path named by the target operand.&lt;br /&gt;
&lt;br /&gt;
              rm file&lt;br /&gt;
                     The rm command removes the file specified by the file operand.&lt;br /&gt;
&lt;br /&gt;
              rmdir directory&lt;br /&gt;
                     The rmdir command removes the directory entry specified by the directory operand, provided it is empty.&lt;br /&gt;
&lt;br /&gt;
              symlink source_file target_file&lt;br /&gt;
                     See ln.&lt;br /&gt;
&lt;br /&gt;
       -Q, --quote can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --quote &amp;quot;DELE file&amp;quot; ftp://example.com/foo&lt;br /&gt;
&lt;br /&gt;
       See also -X, --request.&lt;br /&gt;
&lt;br /&gt;
       --random-file &amp;lt;file&amp;gt;&lt;br /&gt;
              Deprecated option. This option is ignored by curl since 7.84.0. Prior to that it only had an effect on curl if built to use old versions of OpenSSL.&lt;br /&gt;
&lt;br /&gt;
              Specify the path name to file containing what will be considered as random data. The data may be used to seed the random engine for SSL connections.&lt;br /&gt;
&lt;br /&gt;
              If --random-file is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --random-file rubbish https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --egd-file.&lt;br /&gt;
&lt;br /&gt;
       -r, --range &amp;lt;range&amp;gt;&lt;br /&gt;
              (HTTP FTP SFTP FILE) Retrieve a byte range (i.e. a partial document) from an HTTP/1.1, FTP or SFTP server or a local FILE. Ranges can be specified in a number of ways.&lt;br /&gt;
&lt;br /&gt;
              0-499     specifies the first 500 bytes&lt;br /&gt;
&lt;br /&gt;
              500-999   specifies the second 500 bytes&lt;br /&gt;
&lt;br /&gt;
              -500      specifies the last 500 bytes&lt;br /&gt;
&lt;br /&gt;
              9500-     specifies the bytes from offset 9500 and forward&lt;br /&gt;
&lt;br /&gt;
              0-0,-1    specifies the first and last byte only(*)(HTTP)&lt;br /&gt;
&lt;br /&gt;
              100-199,500-599&lt;br /&gt;
                        specifies two separate 100-byte ranges(*) (HTTP)&lt;br /&gt;
&lt;br /&gt;
              (*)  =  NOTE that this will cause the server to reply with a multipart response, which will be returned as-is by curl! Parsing or otherwise transforming this response is the responsibility of&lt;br /&gt;
              the caller.&lt;br /&gt;
&lt;br /&gt;
              Only digit characters (0-9) are valid in the &#039;start&#039; and &#039;stop&#039; fields of the &#039;start-stop&#039; range syntax. If a non-digit character is given in the range, the server&#039;s response will be unspeci‐&lt;br /&gt;
              fied, depending on the server&#039;s configuration.&lt;br /&gt;
&lt;br /&gt;
              You should also be aware that many HTTP/1.1 servers do not have this feature enabled, so that when you attempt to get a range, you will instead get the whole document.&lt;br /&gt;
&lt;br /&gt;
              FTP and SFTP range downloads only support the simple &#039;start-stop&#039; syntax (optionally with one of the numbers omitted). FTP use depends on the extended FTP command SIZE.&lt;br /&gt;
&lt;br /&gt;
              If -r, --range is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --range 22-44 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -C, --continue-at and -a, --append.&lt;br /&gt;
&lt;br /&gt;
       --rate &amp;lt;max request rate&amp;gt;&lt;br /&gt;
              Specify the maximum transfer frequency you allow curl to use - in number of transfer starts per time unit (sometimes called request rate). Without this option, curl will start the next trans‐&lt;br /&gt;
              fer as fast as possible.&lt;br /&gt;
&lt;br /&gt;
              If given several URLs and a transfer completes faster than the allowed rate, curl will wait until the next transfer is started to maintain the requested rate. This option has no  effect  when&lt;br /&gt;
              -Z, --parallel is used.&lt;br /&gt;
&lt;br /&gt;
              The  request  rate is provided as &amp;quot;N/U&amp;quot; where N is an integer number and U is a time unit. Supported units are &#039;s&#039; (second), &#039;m&#039; (minute), &#039;h&#039; (hour) and &#039;d&#039; /(day, as in a 24 hour unit). The&lt;br /&gt;
              default time unit, if no &amp;quot;/U&amp;quot; is provided, is number of transfers per hour.&lt;br /&gt;
&lt;br /&gt;
              If curl is told to allow 10 requests per minute, it will not start the next request until 6 seconds have elapsed since the previous transfer was started.&lt;br /&gt;
&lt;br /&gt;
              This function uses millisecond resolution. If the allowed frequency is set more than 1000 per second, it will instead run unrestricted.&lt;br /&gt;
&lt;br /&gt;
              When retrying transfers, enabled with --retry, the separate retry delay logic is used and not this setting.&lt;br /&gt;
&lt;br /&gt;
              If --rate is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --rate 2/s https://example.com&lt;br /&gt;
               curl --rate 3/h https://example.com&lt;br /&gt;
               curl --rate 14/m https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --limit-rate and --retry-delay. Added in 7.84.0.&lt;br /&gt;
&lt;br /&gt;
       --raw  (HTTP) When used, it disables all internal HTTP decoding of content or transfer encodings and instead makes them passed on unaltered, raw.&lt;br /&gt;
&lt;br /&gt;
              Providing --raw multiple times has no extra effect.  Disable it again with --no-raw.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --raw https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tr-encoding.&lt;br /&gt;
&lt;br /&gt;
       -e, --referer &amp;lt;URL&amp;gt;&lt;br /&gt;
              (HTTP) Sends the &amp;quot;Referrer Page&amp;quot; information to the HTTP server. This can also be set with the -H, --header flag of course. When used with -L, --location you can append  &amp;quot;;auto&amp;quot;  to  the  -e,&lt;br /&gt;
              --referer URL to make curl automatically set the previous URL when it follows a Location: header. The &amp;quot;;auto&amp;quot; string can be used alone, even if you do not set an initial -e, --referer.&lt;br /&gt;
&lt;br /&gt;
              If -e, --referer is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example&amp;quot; https://example.com&lt;br /&gt;
               curl --referer &amp;quot;https://fake.example;auto&amp;quot; -L https://example.com&lt;br /&gt;
               curl --referer &amp;quot;;auto&amp;quot; -L https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -A, --user-agent and -H, --header.&lt;br /&gt;
&lt;br /&gt;
       -J, --remote-header-name&lt;br /&gt;
              (HTTP)  This option tells the -O, --remote-name option to use the server-specified Content-Disposition filename instead of extracting a filename from the URL. If the server-provided file name&lt;br /&gt;
              contains a path, that will be stripped off before the file name is used.&lt;br /&gt;
&lt;br /&gt;
              The file is saved in the current directory, or in the directory specified with --output-dir.&lt;br /&gt;
&lt;br /&gt;
              If the server specifies a file name and a file with that name already exists in the destination directory, it will not be overwritten and an error will occur - unless you allow  it  by  using&lt;br /&gt;
              the --clobber option. If the server does not specify a file name then this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              There&#039;s no attempt to decode %-sequences (yet) in the provided file name, so this option may provide you with rather unexpected file names.&lt;br /&gt;
&lt;br /&gt;
              This feature uses the name from the &amp;quot;filename&amp;quot; field, it does not yet support the &amp;quot;filename*&amp;quot; field (filenames with explicit character sets).&lt;br /&gt;
&lt;br /&gt;
              WARNING:  Exercise  judicious  use  of  this option, especially on Windows. A rogue server could send you the name of a DLL or other file that could be loaded automatically by Windows or some&lt;br /&gt;
              third party software.&lt;br /&gt;
&lt;br /&gt;
              Providing -J, --remote-header-name multiple times has no extra effect.  Disable it again with --no-remote-header-name.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -OJ https://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       --remote-name-all&lt;br /&gt;
              This option changes the default action for all given URLs to be dealt with as if -O, --remote-name were used for each one. So if you want to disable that for a specific  URL  after  --remote-&lt;br /&gt;
              name-all has been used, you must use &amp;quot;-o -&amp;quot; or --no-remote-name.&lt;br /&gt;
&lt;br /&gt;
              Providing --remote-name-all multiple times has no extra effect.  Disable it again with --no-remote-name-all.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name.&lt;br /&gt;
&lt;br /&gt;
       -O, --remote-name&lt;br /&gt;
              Write output to a local file named like the remote file we get. (Only the file part of the remote file is used, the path is cut off.)&lt;br /&gt;
&lt;br /&gt;
              The file will be saved in the current working directory. If you want the file saved in a different directory, make sure you change the current working directory before invoking curl with this&lt;br /&gt;
              option or use --output-dir.&lt;br /&gt;
&lt;br /&gt;
              The remote file name to use for saving is extracted from the given URL, nothing else, and if it already exists it will be overwritten. If you want the server to be able  to  choose  the  file&lt;br /&gt;
              name refer to -J, --remote-header-name which can be used in addition to this option. If the server chooses a file name and that name already exists it will not be overwritten.&lt;br /&gt;
&lt;br /&gt;
              There is no URL decoding done on the file name. If it has %20 or other URL encoded parts of the name, they will end up as-is as file name.&lt;br /&gt;
&lt;br /&gt;
              You may use this option as many times as the number of URLs you have.&lt;br /&gt;
&lt;br /&gt;
              -O, --remote-name can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -O https://example.com/filename&lt;br /&gt;
&lt;br /&gt;
              See also --remote-name-all, --output-dir and -J, --remote-header-name.&lt;br /&gt;
&lt;br /&gt;
       -R, --remote-time&lt;br /&gt;
              When used, this will make curl attempt to figure out the timestamp of the remote file, and if that is available make the local file get that same timestamp.&lt;br /&gt;
&lt;br /&gt;
              Providing -R, --remote-time multiple times has no extra effect.  Disable it again with --no-remote-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remote-time -o foo https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -O, --remote-name and -z, --time-cond.&lt;br /&gt;
&lt;br /&gt;
       --remove-on-error&lt;br /&gt;
              When curl returns an error when told to save output in a local file, this option removes that saved file before exiting. This prevents curl from leaving a partial file in the case of an error&lt;br /&gt;
              during transfer.&lt;br /&gt;
&lt;br /&gt;
              If the output is not a file, this option has no effect.&lt;br /&gt;
&lt;br /&gt;
              Providing --remove-on-error multiple times has no extra effect.  Disable it again with --no-remove-on-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --remove-on-error -o output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -f, --fail. Added in 7.83.0.&lt;br /&gt;
&lt;br /&gt;
       --request-target &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Tells curl to use an alternative &amp;quot;target&amp;quot; (path) instead of using the path as provided in the URL. Particularly useful when wanting to issue HTTP  requests  without  leading  slash  or&lt;br /&gt;
              other data that does not follow the regular URL pattern, like &amp;quot;OPTIONS *&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If --request-target is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --request-target &amp;quot;*&amp;quot; -X OPTIONS https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -X, --request. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       -X, --request &amp;lt;method&amp;gt;&lt;br /&gt;
              (HTTP)  Specifies  a  custom  request  method to use when communicating with the HTTP server. The specified request method will be used instead of the method otherwise used (which defaults to&lt;br /&gt;
              GET). Read the HTTP 1.1 specification for details and explanations. Common additional HTTP requests include PUT and DELETE, but related technologies like WebDAV offers  PROPFIND,  COPY,  MOVE&lt;br /&gt;
              and more.&lt;br /&gt;
&lt;br /&gt;
              Normally you do not need this option. All sorts of GET, HEAD, POST and PUT requests are rather invoked by using dedicated command line options.&lt;br /&gt;
&lt;br /&gt;
              This  option  only  changes  the actual word used in the HTTP request, it does not alter the way curl behaves. So for example if you want to make a proper HEAD request, using -X HEAD will not&lt;br /&gt;
              suffice. You need to use the -I, --head option.&lt;br /&gt;
&lt;br /&gt;
              The method string you set with -X, --request will be used for all requests, which if you for example use -L, --location may cause unintended side-effects when curl  does  not  change  request&lt;br /&gt;
              method according to the HTTP 30x response codes - and similar.&lt;br /&gt;
&lt;br /&gt;
              (FTP) Specifies a custom FTP command to use instead of LIST when doing file lists with FTP.&lt;br /&gt;
&lt;br /&gt;
              (POP3) Specifies a custom POP3 command to use instead of LIST or RETR.&lt;br /&gt;
&lt;br /&gt;
              (IMAP) Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)&lt;br /&gt;
&lt;br /&gt;
              (SMTP) Specifies a custom SMTP command to use instead of HELP or VRFY. (Added in 7.34.0)&lt;br /&gt;
&lt;br /&gt;
              If -X, --request is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -X &amp;quot;DELETE&amp;quot; https://example.com&lt;br /&gt;
               curl -X NLST ftp://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --request-target.&lt;br /&gt;
&lt;br /&gt;
       --resolve &amp;lt;[+]host:port:addr[,addr]...&amp;gt;&lt;br /&gt;
              Provide  a  custom  address  for a specific host and port pair. Using this, you can make the curl requests(s) use a specified address and prevent the otherwise normally resolved address to be&lt;br /&gt;
              used. Consider it a sort of /etc/hosts alternative provided on the command line. The port number should be the number used for the specific protocol the host will be used for.  It  means  you&lt;br /&gt;
              need several entries if you want to provide address for the same host but different ports.&lt;br /&gt;
&lt;br /&gt;
              By  specifying &#039;*&#039; as host you can tell curl to resolve any host and specific port pair to the specified address. Wildcard is resolved last so any --resolve with a specific host and port will&lt;br /&gt;
              be used first.&lt;br /&gt;
&lt;br /&gt;
              The provided address set by this option will be used even if -4, --ipv4 or -6, --ipv6 is set to make curl use another IP version.&lt;br /&gt;
&lt;br /&gt;
              By prefixing the host with a &#039;+&#039; you can make the entry time out after curl&#039;s default timeout (1 minute). Note that this will only make sense for long running parallel transfers with a lot of&lt;br /&gt;
              files. In such cases, if this option is used curl will try to resolve the host as it normally would once the timeout has expired.&lt;br /&gt;
&lt;br /&gt;
              Support for providing the IP address within [brackets] was added in 7.57.0.&lt;br /&gt;
&lt;br /&gt;
              Support for providing multiple IP addresses per entry was added in 7.59.0.&lt;br /&gt;
&lt;br /&gt;
              Support for resolving with wildcard was added in 7.64.0.&lt;br /&gt;
&lt;br /&gt;
              Support for the &#039;+&#039; prefix was was added in 7.75.0.&lt;br /&gt;
&lt;br /&gt;
              This option can be used many times to add many host names to resolve.&lt;br /&gt;
&lt;br /&gt;
              --resolve can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --resolve example.com:443:127.0.0.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --connect-to and --alt-svc.&lt;br /&gt;
&lt;br /&gt;
       --retry-all-errors&lt;br /&gt;
              Retry on any error. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              This  option  is the &amp;quot;sledgehammer&amp;quot; of retrying. Do not use this option by default (eg in curlrc), there may be unintended consequences such as sending or receiving duplicate data. Do not use&lt;br /&gt;
              with redirected input or output. You&#039;d be much better off handling your unique problems in shell script. Please read the example below.&lt;br /&gt;
&lt;br /&gt;
              WARNING: For server compatibility curl attempts to retry failed flaky transfers as close as possible to how they were started, but this is not possible with redirected input  or  output.  For&lt;br /&gt;
              example, before retrying it removes output data from a failed partial transfer that was written to an output file. However this is not true of data redirected to a | pipe or &amp;gt; file, which are&lt;br /&gt;
              not reset. We strongly suggest you do not parse or record output via redirect in combination with this option, since you may receive duplicate data.&lt;br /&gt;
&lt;br /&gt;
              By default curl will not error on an HTTP response code that indicates an HTTP error, if the transfer was successful. For example, if a server replies 404 Not Found and the reply is fully re‐&lt;br /&gt;
              ceived  then that is not an error. When --retry is used then curl will retry on some HTTP response codes that indicate transient HTTP errors, but that does not include most 4xx response codes&lt;br /&gt;
              such as 404. If you want to retry on all response codes that indicate HTTP errors (4xx and 5xx) then combine with -f, --fail.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-all-errors multiple times has no extra effect.  Disable it again with --no-retry-all-errors.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 5 --retry-all-errors https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry. Added in 7.71.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-connrefused&lt;br /&gt;
              In addition to the other conditions, consider ECONNREFUSED as a transient error too for --retry. This option is used together with --retry.&lt;br /&gt;
&lt;br /&gt;
              Providing --retry-connrefused multiple times has no extra effect.  Disable it again with --no-retry-connrefused.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-connrefused --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry and --retry-all-errors. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       --retry-delay &amp;lt;seconds&amp;gt;&lt;br /&gt;
              Make curl sleep this amount of time before each retry when a transfer has failed with a transient error (it changes the default backoff time algorithm between retries). This  option  is  only&lt;br /&gt;
              interesting if --retry is also used. Setting this delay to zero will make curl use the default backoff time.&lt;br /&gt;
&lt;br /&gt;
              If --retry-delay is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-delay 5 --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry-max-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              The retry timer is reset before the first transfer attempt. Retries will be done as usual (see --retry) as long as the timer has not reached this given limit. Notice that if the timer has not&lt;br /&gt;
              reached the limit, the request will be made and while performing, it may take longer than this given time period. To limit a single request&#039;s maximum time, use -m, --max-time. Set this option&lt;br /&gt;
              to zero to not timeout retries.&lt;br /&gt;
&lt;br /&gt;
              If --retry-max-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry-max-time 30 --retry 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry.&lt;br /&gt;
&lt;br /&gt;
       --retry &amp;lt;num&amp;gt;&lt;br /&gt;
              If a transient error is returned when curl tries to perform a transfer, it will retry this number of times before giving up. Setting the number to 0 makes curl do no retries (which is the de‐&lt;br /&gt;
              fault). Transient error means either: a timeout, an FTP 4xx response code or an HTTP 408, 429, 500, 502, 503 or 504 response code.&lt;br /&gt;
&lt;br /&gt;
              When curl is about to retry a transfer, it will first wait one second and then for all forthcoming retries it will double the waiting time until it reaches 10 minutes which then will  be  the&lt;br /&gt;
              delay between the rest of the retries. By using --retry-delay you disable this exponential backoff algorithm. See also --retry-max-time to limit the total time allowed for retries.&lt;br /&gt;
&lt;br /&gt;
              Since curl 7.66.0, curl will comply with the Retry-After: response header if one was present to know when to issue the next retry.&lt;br /&gt;
&lt;br /&gt;
              If --retry is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --retry 7 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --retry-max-time.&lt;br /&gt;
&lt;br /&gt;
       --sasl-authzid &amp;lt;identity&amp;gt;&lt;br /&gt;
              Use this authorization identity (authzid), during SASL PLAIN authentication, in addition to the authentication identity (authcid) as specified by -u, --user.&lt;br /&gt;
&lt;br /&gt;
              If  the option is not specified, the server will derive the authzid from the authcid, but if specified, and depending on the server implementation, it may be used to access another user&#039;s in‐&lt;br /&gt;
              box, that the user has been granted access to, or a shared mailbox for example.&lt;br /&gt;
&lt;br /&gt;
              If --sasl-authzid is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-authzid zid imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --login-options. Added in 7.66.0.&lt;br /&gt;
&lt;br /&gt;
       --sasl-ir&lt;br /&gt;
              Enable initial response in SASL authentication.&lt;br /&gt;
&lt;br /&gt;
              Providing --sasl-ir multiple times has no extra effect.  Disable it again with --no-sasl-ir.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sasl-ir imap://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --sasl-authzid. Added in 7.31.0.&lt;br /&gt;
&lt;br /&gt;
       --service-name &amp;lt;name&amp;gt;&lt;br /&gt;
              This option allows you to change the service name for SPNEGO.&lt;br /&gt;
&lt;br /&gt;
              Examples: --negotiate --service-name sockd would use sockd/server-name.&lt;br /&gt;
&lt;br /&gt;
              If --service-name is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --service-name sockd/server https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --negotiate and --proxy-service-name. Added in 7.43.0.&lt;br /&gt;
&lt;br /&gt;
       -S, --show-error&lt;br /&gt;
              When used with -s, --silent, it makes curl show an error message if it fails.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing -S, --show-error multiple times has no extra effect.  Disable it again with --no-show-error.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --show-error --silent https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       -s, --silent&lt;br /&gt;
              Silent or quiet mode. Do not show progress meter or error messages. Makes Curl mute. It will still output the data you ask for, potentially even to the terminal/stdout unless you redirect it.&lt;br /&gt;
&lt;br /&gt;
              Use -S, --show-error in addition to this option to disable progress meter but still show error messages.&lt;br /&gt;
&lt;br /&gt;
              Providing -s, --silent multiple times has no extra effect.  Disable it again with --no-silent.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -s https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose, --stderr and --no-progress-meter.&lt;br /&gt;
&lt;br /&gt;
       --socks4 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4 proxy. If the port number is not specified, it is assumed at port 1080. Using this socket type make curl resolve the host name and  passing  the  address  on  to  the&lt;br /&gt;
              proxy.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4 proxy with -x, --proxy using a socks4:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4a, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks4a &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS4a proxy. If the port number is not specified, it is assumed at port 1080. This asks the proxy to resolve the host name.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks4a://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks4a proxy with -x, --proxy using a socks4a:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks4a is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks4a hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks4, --socks5 and --socks5-hostname.&lt;br /&gt;
&lt;br /&gt;
       --socks5-basic&lt;br /&gt;
              Tells  curl  to  use username/password authentication when connecting to a SOCKS5 proxy.  The username/password authentication is enabled by default.  Use --socks5-gssapi to force GSS-API au‐&lt;br /&gt;
              thentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-basic multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-basic --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-nec&lt;br /&gt;
              As part of the GSS-API negotiation a protection mode is negotiated. RFC 1961 says in section 4.3/4.4 it should be protected,  but  the  NEC  reference  implementation  does  not.  The  option&lt;br /&gt;
              --socks5-gssapi-nec allows the unprotected exchange of the protection mode negotiation.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi-nec multiple times has no extra effect.  Disable it again with --no-socks5-gssapi-nec.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi-service &amp;lt;name&amp;gt;&lt;br /&gt;
              The default service name for a socks server is rcmd/server-fqdn. This option allows you to change it.&lt;br /&gt;
&lt;br /&gt;
              Examples:  --socks5  proxy-name  --socks5-gssapi-service sockd would use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-service sockd/real-name would use sockd/real-name for cases where&lt;br /&gt;
              the proxy-name does not match the principal name.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-gssapi-service is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5.&lt;br /&gt;
&lt;br /&gt;
       --socks5-gssapi&lt;br /&gt;
              Tells curl to use GSS-API authentication when connecting to a SOCKS5 proxy.  The GSS-API authentication is enabled by default (if curl is compiled with GSS-API support).   Use  --socks5-basic&lt;br /&gt;
              to force username/password authentication to SOCKS5 proxies.&lt;br /&gt;
&lt;br /&gt;
              Providing --socks5-gssapi multiple times has no extra effect.  Disable it again with --no-socks5-gssapi.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-gssapi --socks5 hostname:4096 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5. Added in 7.55.0.&lt;br /&gt;
&lt;br /&gt;
       --socks5-hostname &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5h://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 hostname proxy with -x, --proxy using a socks5h:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since  7.52.0,  --preproxy  can  be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the SOCKS proxy and then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              If --socks5-hostname is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5-hostname proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5 and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       --socks5 &amp;lt;host[:port]&amp;gt;&lt;br /&gt;
              Use the specified SOCKS5 proxy - but resolve the host name locally. If the port number is not specified, it is assumed at port 1080.&lt;br /&gt;
&lt;br /&gt;
              To specify proxy on a unix domain socket, use localhost for host, e.g.  socks5://localhost/path/to/socket.sock&lt;br /&gt;
&lt;br /&gt;
              This option overrides any previous use of -x, --proxy, as they are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
              This option is superfluous since you can specify a socks5 proxy with -x, --proxy using a socks5:// protocol prefix.&lt;br /&gt;
&lt;br /&gt;
              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time -x, --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to the  SOCKS  proxy  and  then&lt;br /&gt;
              connects (through SOCKS) to the HTTP or HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              This option (as well as --socks4) does not work with IPV6, FTPS or LDAP.&lt;br /&gt;
&lt;br /&gt;
              If --socks5 is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --socks5 proxy.example:7000 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --socks5-hostname and --socks4a.&lt;br /&gt;
&lt;br /&gt;
       -Y, --speed-limit &amp;lt;speed&amp;gt;&lt;br /&gt;
              If a transfer is slower than this given speed (in bytes per second) for speed-time seconds it gets aborted. speed-time is set with -y, --speed-time and is 30 if not set.&lt;br /&gt;
&lt;br /&gt;
              If -Y, --speed-limit is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -y, --speed-time, --limit-rate and -m, --max-time.&lt;br /&gt;
&lt;br /&gt;
       -y, --speed-time &amp;lt;seconds&amp;gt;&lt;br /&gt;
              If  a  transfer runs slower than speed-limit bytes per second during a speed-time period, the transfer is aborted. If speed-time is used, the default speed-limit will be 1 unless set with -Y,&lt;br /&gt;
              --speed-limit.&lt;br /&gt;
&lt;br /&gt;
              This option controls transfers (in both directions) but will not affect slow connects etc. If this is a concern for you, try the --connect-timeout option.&lt;br /&gt;
&lt;br /&gt;
              If -y, --speed-time is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --speed-limit 300 --speed-time 10 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -Y, --speed-limit and --limit-rate.&lt;br /&gt;
&lt;br /&gt;
       --ssl-allow-beast&lt;br /&gt;
              This option tells curl to not work around a security flaw in the SSL3 and TLS1.0 protocols known as BEAST.  If this option is not used, the SSL layer may use workarounds known to cause inter‐&lt;br /&gt;
              operability problems with some older SSL implementations.&lt;br /&gt;
&lt;br /&gt;
              WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-allow-beast multiple times has no extra effect.  Disable it again with --no-ssl-allow-beast.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-allow-beast https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-allow-beast and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-auto-client-cert&lt;br /&gt;
              Tell  libcurl  to  automatically  locate  and use a client certificate for authentication, when requested by the server. This option is only supported for Schannel (the native Windows SSL li‐&lt;br /&gt;
              brary). Prior to 7.77.0 this was the default behavior in libcurl with Schannel. Since the server can request any certificate that supports client authentication in the OS certificate store it&lt;br /&gt;
              could be a privacy violation and unexpected.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-auto-client-cert multiple times has no extra effect.  Disable it again with --no-ssl-auto-client-cert.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-auto-client-cert https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --proxy-ssl-auto-client-cert. Added in 7.77.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-no-revoke&lt;br /&gt;
              (Schannel) This option tells curl to disable certificate revocation checks.  WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-no-revoke multiple times has no extra effect.  Disable it again with --no-ssl-no-revoke.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-no-revoke https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile. Added in 7.44.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl-reqd&lt;br /&gt;
              (FTP IMAP POP3 SMTP LDAP) Require SSL/TLS for the connection. Terminates the connection if the transfer cannot be upgraded to use SSL/TLS.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and rejected by the generic ldap backend if explicit TLS is required.&lt;br /&gt;
&lt;br /&gt;
              This  option  is unnecessary if you use a URL scheme that in itself implies immediate and implicit use of TLS, like for FTPS, IMAPS, POP3S, SMTPS and LDAPS. Such transfers will always fail if&lt;br /&gt;
              the TLS handshake does not work.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-reqd multiple times has no extra effect.  Disable it again with --no-ssl-reqd.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-reqd ftp://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ssl and -k, --insecure.&lt;br /&gt;
&lt;br /&gt;
       --ssl-revoke-best-effort&lt;br /&gt;
              (Schannel) This option tells curl to ignore certificate revocation checks when they failed due to missing/offline distribution points for the revocation check lists.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl-revoke-best-effort multiple times has no extra effect.  Disable it again with --no-ssl-revoke-best-effort.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl-revoke-best-effort https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --crlfile and -k, --insecure. Added in 7.70.0.&lt;br /&gt;
&lt;br /&gt;
       --ssl  (FTP IMAP POP3 SMTP LDAP) Warning: this is considered an insecure option. Consider using --ssl-reqd instead to be sure curl upgrades to a secure connection.&lt;br /&gt;
&lt;br /&gt;
              Try to use SSL/TLS for the connection. Reverts to a non-secure connection if the server does not support SSL/TLS. See also --ftp-ssl-control and --ssl-reqd for different levels of  encryption&lt;br /&gt;
              required.&lt;br /&gt;
&lt;br /&gt;
              This option is handled in LDAP since version 7.81.0. It is fully supported by the OpenLDAP backend and ignored by the generic ldap backend.&lt;br /&gt;
&lt;br /&gt;
              Please note that a server may close the connection if the negotiation does not succeed.&lt;br /&gt;
&lt;br /&gt;
              This option was formerly known as --ftp-ssl. That option name can still be used but will be removed in a future version.&lt;br /&gt;
&lt;br /&gt;
              Providing --ssl multiple times has no extra effect.  Disable it again with --no-ssl.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --ssl pop3://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also --ssl-reqd, -k, --insecure and --ciphers.&lt;br /&gt;
&lt;br /&gt;
       -2, --sslv2&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv2, but starting in curl 7.77.0 this instruction is ignored. SSLv2 is widely considered insecure (see RFC 6176).&lt;br /&gt;
&lt;br /&gt;
              Providing -2, --sslv2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See  also  --http1.1 and --http2. -2, --sslv2 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       -3, --sslv3&lt;br /&gt;
              (SSL) This option previously asked curl to use SSLv3, but starting in curl 7.77.0 this instruction is ignored. SSLv3 is widely considered insecure (see RFC 7568).&lt;br /&gt;
&lt;br /&gt;
              Providing -3, --sslv3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --sslv3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -3, --sslv3 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to -2, --sslv2 and -1, --tlsv1 and  --tlsv1.1  and&lt;br /&gt;
              --tlsv1.2.&lt;br /&gt;
&lt;br /&gt;
       --stderr &amp;lt;file&amp;gt;&lt;br /&gt;
              Redirect all writes to stderr to the specified file instead. If the file name is a plain &#039;-&#039;, it is instead written to stdout.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --stderr is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --stderr output.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -s, --silent.&lt;br /&gt;
&lt;br /&gt;
       --styled-output&lt;br /&gt;
              Enables the automatic use of bold font styles when writing HTTP headers to the terminal. Use --no-styled-output to switch them off.&lt;br /&gt;
&lt;br /&gt;
              Styled output requires a terminal that supports bold fonts. This feature is not present on curl for Windows due to lack of this capability.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --styled-output multiple times has no extra effect.  Disable it again with --no-styled-output.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --styled-output -I https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -I, --head and -v, --verbose. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --suppress-connect-headers&lt;br /&gt;
              When  -p,  --proxytunnel  is used and a CONNECT request is made do not output proxy CONNECT response headers. This option is meant to be used with -D, --dump-header or -i, --include which are&lt;br /&gt;
              used to show protocol headers in the output. It has no effect on debug options such as -v, --verbose or --trace, or any statistics.&lt;br /&gt;
&lt;br /&gt;
              Providing --suppress-connect-headers multiple times has no extra effect.  Disable it again with --no-suppress-connect-headers.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --suppress-connect-headers --include -x proxy https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -D, --dump-header, -i, --include and -p, --proxytunnel. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-fastopen&lt;br /&gt;
              Enable use of TCP Fast Open (RFC7413).&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-fastopen multiple times has no extra effect.  Disable it again with --no-tcp-fastopen.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-fastopen https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --false-start. Added in 7.49.0.&lt;br /&gt;
&lt;br /&gt;
       --tcp-nodelay&lt;br /&gt;
              Turn on the TCP_NODELAY option. See the curl_easy_setopt(3) man page for details about this option.&lt;br /&gt;
&lt;br /&gt;
              Since 7.50.2, curl sets this option by default and you need to explicitly switch it off if you do not want it on.&lt;br /&gt;
&lt;br /&gt;
              Providing --tcp-nodelay multiple times has no extra effect.  Disable it again with --no-tcp-nodelay.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tcp-nodelay https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -N, --no-buffer.&lt;br /&gt;
&lt;br /&gt;
       -t, --telnet-option &amp;lt;opt=val&amp;gt;&lt;br /&gt;
              Pass options to the telnet protocol. Supported options are:&lt;br /&gt;
&lt;br /&gt;
              TTYPE=&amp;lt;term&amp;gt; Sets the terminal type.&lt;br /&gt;
&lt;br /&gt;
              XDISPLOC=&amp;lt;X display&amp;gt; Sets the X display location.&lt;br /&gt;
&lt;br /&gt;
              NEW_ENV=&amp;lt;var,val&amp;gt; Sets an environment variable.&lt;br /&gt;
&lt;br /&gt;
              -t, --telnet-option can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -t TTYPE=vt100 telnet://example.com/&lt;br /&gt;
&lt;br /&gt;
              See also -K, --config.&lt;br /&gt;
&lt;br /&gt;
       --tftp-blksize &amp;lt;value&amp;gt;&lt;br /&gt;
              (TFTP) Set TFTP BLKSIZE option (must be &amp;gt;512). This is the block size that curl will try to use when transferring data to or from a TFTP server. By default 512 bytes will be used.&lt;br /&gt;
&lt;br /&gt;
              If --tftp-blksize is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-blksize 1024 tftp://example.com/file&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
       --tftp-no-options&lt;br /&gt;
              (TFTP) Tells curl not to send TFTP options requests.&lt;br /&gt;
&lt;br /&gt;
              This option improves interop with some legacy servers that do not acknowledge or properly implement TFTP options. When this option is used --tftp-blksize is ignored.&lt;br /&gt;
&lt;br /&gt;
              Providing --tftp-no-options multiple times has no extra effect.  Disable it again with --no-tftp-no-options.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tftp-no-options tftp://192.168.0.1/&lt;br /&gt;
&lt;br /&gt;
              See also --tftp-blksize. Added in 7.48.0.&lt;br /&gt;
&lt;br /&gt;
       -z, --time-cond &amp;lt;time&amp;gt;&lt;br /&gt;
              (HTTP FTP) Request a file that has been modified later than the given time and date, or one that has been modified before that time. The &amp;lt;date expression&amp;gt; can be all sorts of date strings  or&lt;br /&gt;
              if it does not match any internal ones, it is taken as a filename and tries to get the modification date (mtime) from &amp;lt;file&amp;gt; instead. See the curl_getdate(3) man pages for date expression de‐&lt;br /&gt;
              tails.&lt;br /&gt;
&lt;br /&gt;
              Start the date expression with a dash (-) to make it request for a document that is older than the given date/time, default is a document that is newer than the specified date/time.&lt;br /&gt;
&lt;br /&gt;
              If -z, --time-cond is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -z &amp;quot;Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z &amp;quot;-Wed 01 Sep 2021 12:18:00&amp;quot; https://example.com&lt;br /&gt;
               curl -z file https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --etag-compare and -R, --remote-time.&lt;br /&gt;
&lt;br /&gt;
       --tls-max &amp;lt;VERSION&amp;gt;&lt;br /&gt;
              (SSL) VERSION defines maximum supported TLS version. The minimum acceptable version is set by tlsv1.0, tlsv1.1, tlsv1.2 or tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              default&lt;br /&gt;
                     Use up to recommended TLS version.&lt;br /&gt;
&lt;br /&gt;
              1.0    Use up to TLSv1.0.&lt;br /&gt;
&lt;br /&gt;
              1.1    Use up to TLSv1.1.&lt;br /&gt;
&lt;br /&gt;
              1.2    Use up to TLSv1.2.&lt;br /&gt;
&lt;br /&gt;
              1.3    Use up to TLSv1.3.&lt;br /&gt;
&lt;br /&gt;
       If --tls-max is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
       Examples:&lt;br /&gt;
        curl --tls-max 1.2 https://example.com&lt;br /&gt;
        curl --tls-max 1.3 --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
       See also --tlsv1.0, --tlsv1.1, --tlsv1.2 and --tlsv1.3. --tls-max requires that the underlying libcurl was built to support TLS. Added in 7.54.0.&lt;br /&gt;
&lt;br /&gt;
       --tls13-ciphers &amp;lt;ciphersuite list&amp;gt;&lt;br /&gt;
              (TLS) Specifies which cipher suites to use in the connection if it negotiates TLS 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3 cipher suite details  on  this&lt;br /&gt;
              URL:&lt;br /&gt;
&lt;br /&gt;
               https://curl.se/docs/ssl-ciphers.html&lt;br /&gt;
&lt;br /&gt;
              This  option is currently used only when curl is built to use OpenSSL 1.1.1 or later. If you are using a different SSL backend you can try setting TLS 1.3 cipher suites by using the --ciphers&lt;br /&gt;
              option.&lt;br /&gt;
&lt;br /&gt;
              If --tls13-ciphers is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --ciphers and --curves. Added in 7.61.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsauthtype &amp;lt;type&amp;gt;&lt;br /&gt;
              Set TLS authentication type. Currently, the only supported option is &amp;quot;SRP&amp;quot;, for TLS-SRP (RFC 5054). If --tlsuser and --tlspassword are specified but --tlsauthtype is not, then this option de‐&lt;br /&gt;
              faults to &amp;quot;SRP&amp;quot;. This option works only if the underlying libcurl is built with TLS-SRP support, which requires OpenSSL or GnuTLS with TLS-SRP support.&lt;br /&gt;
&lt;br /&gt;
              If --tlsauthtype is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsauthtype SRP https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlspassword &amp;lt;string&amp;gt;&lt;br /&gt;
              Set password for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlsuser also be set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlspassword is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsuser.&lt;br /&gt;
&lt;br /&gt;
       --tlsuser &amp;lt;name&amp;gt;&lt;br /&gt;
              Set username for use with the TLS authentication method specified with --tlsauthtype. Requires that --tlspassword also is set.&lt;br /&gt;
&lt;br /&gt;
              This option does not work with TLS 1.3.&lt;br /&gt;
&lt;br /&gt;
              If --tlsuser is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlspassword pwd --tlsuser user https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlspassword.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.0&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.0.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.0 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.0 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.1&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.1 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In old versions of curl this option was documented to allow _only_ TLS 1.1.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum  TLS  ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.2&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.2 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              In  old  versions of curl this option was documented to allow _only_ TLS 1.2.  That behavior was inconsistent depending on the TLS library. Use --tls-max if you want to set a maximum TLS ver‐&lt;br /&gt;
              sion.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.2 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.2 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.3 and --tls-max. Added in 7.34.0.&lt;br /&gt;
&lt;br /&gt;
       --tlsv1.3&lt;br /&gt;
              (TLS) Forces curl to use TLS version 1.3 or later when connecting to a remote TLS server.&lt;br /&gt;
&lt;br /&gt;
              If the connection is done without TLS, this option has no effect. This includes QUIC-using (HTTP/3) transfers.&lt;br /&gt;
&lt;br /&gt;
              Note that TLS 1.3 is not supported by all TLS backends.&lt;br /&gt;
&lt;br /&gt;
              Providing --tlsv1.3 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1.3 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --tlsv1.2 and --tls-max. Added in 7.52.0.&lt;br /&gt;
&lt;br /&gt;
       -1, --tlsv1&lt;br /&gt;
              (SSL) Tells curl to use at least TLS version 1.x when negotiating with a remote TLS server. That means TLS version 1.0 or higher&lt;br /&gt;
&lt;br /&gt;
              Providing -1, --tlsv1 multiple times has no extra effect.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tlsv1 https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --http1.1 and --http2. -1, --tlsv1 requires that the underlying libcurl was built to support TLS. This option is mutually exclusive to --tlsv1.1 and --tlsv1.2 and --tlsv1.3.&lt;br /&gt;
&lt;br /&gt;
       --tr-encoding&lt;br /&gt;
              (HTTP) Request a compressed Transfer-Encoding response using one of the algorithms curl supports, and uncompress the data while receiving it.&lt;br /&gt;
&lt;br /&gt;
              Providing --tr-encoding multiple times has no extra effect.  Disable it again with --no-tr-encoding.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --tr-encoding https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --compressed.&lt;br /&gt;
&lt;br /&gt;
       --trace-ascii &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to stdout.&lt;br /&gt;
&lt;br /&gt;
              This is similar to --trace, but leaves out the hex part and only shows the ASCII part of the dump. It makes smaller output that might be easier to read for untrained humans.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace-ascii is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-ascii log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and --trace. This option is mutually exclusive to --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace-time&lt;br /&gt;
              Prepends a time stamp to each trace or verbose line that curl displays.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Providing --trace-time multiple times has no extra effect.  Disable it again with --no-trace-time.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace-time --trace-ascii output https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
       --trace &amp;lt;file&amp;gt;&lt;br /&gt;
              Enables a full trace dump of all incoming and outgoing data, including descriptive information, to the given output file. Use &amp;quot;-&amp;quot; as filename to have the output sent to  stdout.  Use  &amp;quot;%&amp;quot;  as&lt;br /&gt;
              filename to have the output sent to stderr.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              If --trace is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --trace log.txt https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --trace-ascii and --trace-time. This option is mutually exclusive to -v, --verbose and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       --unix-socket &amp;lt;path&amp;gt;&lt;br /&gt;
              (HTTP) Connect through this Unix domain socket, instead of using the network.&lt;br /&gt;
&lt;br /&gt;
              If --unix-socket is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --unix-socket socket-path https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --abstract-unix-socket. Added in 7.40.0.&lt;br /&gt;
&lt;br /&gt;
       -T, --upload-file &amp;lt;file&amp;gt;&lt;br /&gt;
              This transfers the specified local file to the remote URL. If there is no file part in the specified URL, curl will append the local file name. NOTE that you must use a trailing / on the last&lt;br /&gt;
              directory to really prove to Curl that there is no file name or curl will think that your last directory name is the remote file name to use. That will most likely cause the upload  operation&lt;br /&gt;
              to fail. If this is used on an HTTP(S) server, the PUT command will be used.&lt;br /&gt;
&lt;br /&gt;
              Use the file name &amp;quot;-&amp;quot; (a single dash) to use stdin instead of a given file.  Alternately, the file name &amp;quot;.&amp;quot; (a single period) may be specified instead of &amp;quot;-&amp;quot; to use stdin in non-blocking mode&lt;br /&gt;
              to allow reading server output while stdin is being uploaded.&lt;br /&gt;
&lt;br /&gt;
              You can specify one -T, --upload-file for each URL on the command line. Each -T, --upload-file + URL pair specifies what to upload and to where. curl also supports &amp;quot;globbing&amp;quot; of the -T, --up‐&lt;br /&gt;
              load-file argument, meaning that you can upload multiple files to a single URL by using the same URL globbing style supported in the URL.&lt;br /&gt;
&lt;br /&gt;
              When  uploading  to an SMTP server: the uploaded data is assumed to be RFC 5322 formatted. It has to feature the necessary set of headers and mail body formatted correctly by the user as curl&lt;br /&gt;
              will not transcode nor encode it further in any way.&lt;br /&gt;
&lt;br /&gt;
              -T, --upload-file can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl -T file https://example.com&lt;br /&gt;
               curl -T &amp;quot;img[1-1000].png&amp;quot; ftp://ftp.example.com/&lt;br /&gt;
               curl --upload-file &amp;quot;{file1,file2}&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -G, --get and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --url-query &amp;lt;data&amp;gt;&lt;br /&gt;
              (all) This option adds a piece of data, usually a name + value pair, to the end of the URL query part. The syntax is identical to that used for --data-urlencode with one extension:&lt;br /&gt;
&lt;br /&gt;
              If the argument starts with a &#039;+&#039; (plus), the rest of the string is provided as-is unencoded.&lt;br /&gt;
&lt;br /&gt;
              The query part of a URL is the one following the question mark on the right end.&lt;br /&gt;
&lt;br /&gt;
              --url-query can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Examples:&lt;br /&gt;
               curl --url-query name=val https://example.com&lt;br /&gt;
               curl --url-query =encodethis http://example.net/foo&lt;br /&gt;
               curl --url-query name@file https://example.com&lt;br /&gt;
               curl --url-query @fileonly https://example.com&lt;br /&gt;
               curl --url-query &amp;quot;+name=%20foo&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also --data-urlencode and -G, --get. Added in 7.87.0.&lt;br /&gt;
&lt;br /&gt;
       --url &amp;lt;url&amp;gt;&lt;br /&gt;
              Specify a URL to fetch. This option is mostly handy when you want to specify URL(s) in a config file.&lt;br /&gt;
&lt;br /&gt;
              If the given URL is missing a scheme name (such as &amp;quot;http://&amp;quot; or &amp;quot;ftp://&amp;quot; etc) then curl will make a guess based on the host. If the outermost sub-domain name matches DICT,  FTP,  IMAP,  LDAP,&lt;br /&gt;
              POP3 or SMTP then that protocol will be used, otherwise HTTP will be used. Since 7.45.0 guessing can be disabled by setting a default protocol, see --proto-default for details.&lt;br /&gt;
&lt;br /&gt;
              To control where this URL is written, use the -o, --output or the -O, --remote-name options.&lt;br /&gt;
&lt;br /&gt;
              WARNING: On Windows, particular file:// accesses can be converted to network accesses by the operating system. Beware!&lt;br /&gt;
&lt;br /&gt;
              --url can be used several times in a command line&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --url https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -:, --next and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -B, --use-ascii&lt;br /&gt;
              (FTP LDAP) Enable ASCII transfer. For FTP, this can also be enforced by using a URL that ends with &amp;quot;;type=A&amp;quot;. This option causes data sent to stdout to be in text mode for win32 systems.&lt;br /&gt;
&lt;br /&gt;
              Providing -B, --use-ascii multiple times has no extra effect.  Disable it again with --no-use-ascii.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -B ftp://example.com/README&lt;br /&gt;
&lt;br /&gt;
              See also --crlf and --data-ascii.&lt;br /&gt;
&lt;br /&gt;
       -A, --user-agent &amp;lt;name&amp;gt;&lt;br /&gt;
              (HTTP) Specify the User-Agent string to send to the HTTP server. To encode blanks in the string, surround the string with single quote marks. This header can also be set with the -H, --header&lt;br /&gt;
              or the --proxy-header options.&lt;br /&gt;
&lt;br /&gt;
              If you give an empty argument to -A, --user-agent (&amp;quot;&amp;quot;), it will remove the header completely from the request. If you prefer a blank header, you can set it to a single space (&amp;quot; &amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              If -A, --user-agent is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -A &amp;quot;Agent 007&amp;quot; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -H, --header and --proxy-header.&lt;br /&gt;
&lt;br /&gt;
       -u, --user &amp;lt;user:password&amp;gt;&lt;br /&gt;
              Specify the user name and password to use for server authentication. Overrides -n, --netrc and --netrc-optional.&lt;br /&gt;
&lt;br /&gt;
              If you simply specify the user name, curl will prompt for a password.&lt;br /&gt;
&lt;br /&gt;
              The user name and passwords are split up on the first colon, which makes it impossible to use a colon in the user name with this option. The password can, still.&lt;br /&gt;
&lt;br /&gt;
              On systems where it works, curl will hide the given option argument from process listings. This is not enough to protect credentials from possibly getting seen by other users on the same sys‐&lt;br /&gt;
              tem as they will still be visible for a moment before cleared. Such sensitive data should be retrieved from a file instead or similar and never used in clear text in a command line.&lt;br /&gt;
&lt;br /&gt;
              When  using  Kerberos  V5  with a Windows based server you should include the Windows domain name in the user name, in order for the server to successfully obtain a Kerberos Ticket. If you do&lt;br /&gt;
              not, then the initial authentication handshake may fail.&lt;br /&gt;
&lt;br /&gt;
              When using NTLM, the user name can be specified simply as the user name, without the domain, if there is a single domain and forest in your setup for example.&lt;br /&gt;
&lt;br /&gt;
              To specify the domain name use either Down-Level Logon Name or UPN (User Principal Name) formats. For example, EXAMPLE\user and user@example.com respectively.&lt;br /&gt;
&lt;br /&gt;
              If you use a Windows SSPI-enabled curl binary and perform Kerberos V5, Negotiate, NTLM or Digest authentication then you can tell curl to select the user name and password from your  environ‐&lt;br /&gt;
              ment by specifying a single colon with this option: &amp;quot;-u :&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              If -u, --user is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -u user:secret https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -n, --netrc and -K, --config.&lt;br /&gt;
&lt;br /&gt;
       -v, --verbose&lt;br /&gt;
              Makes  curl  verbose during the operation. Useful for debugging and seeing what&#039;s going on &amp;quot;under the hood&amp;quot;. A line starting with &#039;&amp;gt;&#039; means &amp;quot;header data&amp;quot; sent by curl, &#039;&amp;lt;&#039; means &amp;quot;header data&amp;quot;&lt;br /&gt;
              received by curl that is hidden in normal cases, and a line starting with &#039;*&#039; means additional info provided by curl.&lt;br /&gt;
&lt;br /&gt;
              If you only want HTTP headers in the output, -i, --include might be the option you are looking for.&lt;br /&gt;
&lt;br /&gt;
              If you think this option still does not give you enough details, consider using --trace or --trace-ascii instead.&lt;br /&gt;
&lt;br /&gt;
              This option is global and does not need to be specified for each use of -:, --next.&lt;br /&gt;
&lt;br /&gt;
              Use -s, --silent to make curl really quiet.&lt;br /&gt;
&lt;br /&gt;
              Providing -v, --verbose multiple times has no extra effect.  Disable it again with --no-verbose.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --verbose https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -i, --include. This option is mutually exclusive to --trace and --trace-ascii.&lt;br /&gt;
&lt;br /&gt;
       -V, --version&lt;br /&gt;
              Displays information about curl and the libcurl version it uses.&lt;br /&gt;
&lt;br /&gt;
              The first line includes the full version of curl, libcurl and other 3rd party libraries linked with the executable.&lt;br /&gt;
&lt;br /&gt;
              The second line (starts with &amp;quot;Protocols:&amp;quot;) shows all protocols that libcurl reports to support.&lt;br /&gt;
&lt;br /&gt;
              The third line (starts with &amp;quot;Features:&amp;quot;) shows specific features libcurl reports to offer. Available features include:&lt;br /&gt;
&lt;br /&gt;
              alt-svc&lt;br /&gt;
                     Support for the Alt-Svc: header is provided.&lt;br /&gt;
&lt;br /&gt;
              AsynchDNS&lt;br /&gt;
                     This curl uses asynchronous name resolves. Asynchronous name resolves can be done using either the c-ares or the threaded resolver backends.&lt;br /&gt;
&lt;br /&gt;
              brotli Support for automatic brotli compression over HTTP(S).&lt;br /&gt;
&lt;br /&gt;
              CharConv&lt;br /&gt;
                     curl was built with support for character set conversions (like EBCDIC)&lt;br /&gt;
&lt;br /&gt;
              Debug  This curl uses a libcurl built with Debug. This enables more error-tracking and memory debugging etc. For curl-developers only!&lt;br /&gt;
&lt;br /&gt;
              gsasl  The built-in SASL authentication includes extensions to support SCRAM because libcurl was built with libgsasl.&lt;br /&gt;
&lt;br /&gt;
              GSS-API&lt;br /&gt;
                     GSS-API is supported.&lt;br /&gt;
&lt;br /&gt;
              HSTS   HSTS support is present.&lt;br /&gt;
&lt;br /&gt;
              HTTP2  HTTP/2 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTP3  HTTP/3 support has been built-in.&lt;br /&gt;
&lt;br /&gt;
              HTTPS-proxy&lt;br /&gt;
                     This curl is built to support HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
              IDN    This curl supports IDN - international domain names.&lt;br /&gt;
&lt;br /&gt;
              IPv6   You can use IPv6 with this.&lt;br /&gt;
&lt;br /&gt;
              Kerberos&lt;br /&gt;
                     Kerberos V5 authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              Largefile&lt;br /&gt;
                     This curl supports transfers of large files, files larger than 2GB.&lt;br /&gt;
&lt;br /&gt;
              libz   Automatic decompression (via gzip, deflate) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
              MultiSSL&lt;br /&gt;
                     This curl supports multiple TLS backends.&lt;br /&gt;
&lt;br /&gt;
              NTLM   NTLM authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              NTLM_WB&lt;br /&gt;
                     NTLM delegation to winbind helper is supported.&lt;br /&gt;
&lt;br /&gt;
              PSL    PSL is short for Public Suffix List and means that this curl has been built with knowledge about &amp;quot;public suffixes&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              SPNEGO SPNEGO authentication is supported.&lt;br /&gt;
&lt;br /&gt;
              SSL    SSL versions of various protocols are supported, such as HTTPS, FTPS, POP3S and so on.&lt;br /&gt;
&lt;br /&gt;
              SSPI   SSPI is supported.&lt;br /&gt;
&lt;br /&gt;
              TLS-SRP&lt;br /&gt;
                     SRP (Secure Remote Password) authentication is supported for TLS.&lt;br /&gt;
&lt;br /&gt;
              TrackMemory&lt;br /&gt;
                     Debug memory tracking is supported.&lt;br /&gt;
&lt;br /&gt;
              Unicode&lt;br /&gt;
                     Unicode support on Windows.&lt;br /&gt;
&lt;br /&gt;
              UnixSockets&lt;br /&gt;
                     Unix sockets support is provided.&lt;br /&gt;
&lt;br /&gt;
              zstd   Automatic decompression (via zstd) of compressed files over HTTP is supported.&lt;br /&gt;
&lt;br /&gt;
       Example:&lt;br /&gt;
        curl --version&lt;br /&gt;
&lt;br /&gt;
       See also -h, --help and -M, --manual.&lt;br /&gt;
&lt;br /&gt;
       -w, --write-out &amp;lt;format&amp;gt;&lt;br /&gt;
              Make curl display information on stdout after a completed transfer. The format is a string that may contain plain text mixed with any number of variables. The format can  be  specified  as  a&lt;br /&gt;
              literal &amp;quot;string&amp;quot;, or you can have curl read the format from a file with &amp;quot;@filename&amp;quot; and to tell curl to read the format from stdin you write &amp;quot;@-&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              The  variables  present in the output format will be substituted by the value or text that curl thinks fit, as described below. All variables are specified as %{variable_name} and to output a&lt;br /&gt;
              normal % you just write them as %%. You can output a newline by using \n, a carriage return with \r and a tab space with \t.&lt;br /&gt;
&lt;br /&gt;
              The output will be written to standard output, but this can be switched to standard error by using %{stderr}.&lt;br /&gt;
&lt;br /&gt;
              Output HTTP headers from the most recent request by using %header{name} where name is the case insensitive name of the header (without the trailing colon). The header contents are exactly  as&lt;br /&gt;
              sent over the network, with leading and trailing whitespace trimmed. Added in curl 7.84.0.&lt;br /&gt;
&lt;br /&gt;
              NOTE:  In Windows the %-symbol is a special symbol used to expand environment variables. In batch files all occurrences of % must be doubled when using this option to properly escape. If this&lt;br /&gt;
              option is used at the command prompt then the % cannot be escaped and unintended expansion is possible.&lt;br /&gt;
&lt;br /&gt;
              The variables available are:&lt;br /&gt;
&lt;br /&gt;
              certs          Output the certificate chain with details. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              content_type   The Content-Type of the requested document, if there was any.&lt;br /&gt;
&lt;br /&gt;
              errormsg       The error message. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              exitcode       The numerical exitcode of the transfer. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              filename_effective&lt;br /&gt;
                             The ultimate filename that curl writes out to. This is only meaningful if curl is told to write to a file with the -O, --remote-name or -o, --output option. It&#039;s most useful in&lt;br /&gt;
                             combination with the -J, --remote-header-name option.&lt;br /&gt;
&lt;br /&gt;
              ftp_entry_path The initial path curl ended up in when logging on to the remote FTP server.&lt;br /&gt;
&lt;br /&gt;
              header_json    A JSON object with all HTTP response headers from the recent transfer. Values are provided as arrays, since in the case of multiple headers there can be multiple values. (Added&lt;br /&gt;
                             in 7.83.0)&lt;br /&gt;
&lt;br /&gt;
                             The header names provided in lowercase, listed in order of appearance over the wire. Except for duplicated headers. They are grouped on the first  occurrence  of  that  header,&lt;br /&gt;
                             each value is presented in the JSON array.&lt;br /&gt;
&lt;br /&gt;
              http_code      The numerical response code that was found in the last retrieved HTTP(S) or FTP(s) transfer.&lt;br /&gt;
&lt;br /&gt;
              http_connect   The numerical code that was found in the last response (from a proxy) to a curl CONNECT request.&lt;br /&gt;
&lt;br /&gt;
              http_version   The http version that was effectively used. (Added in 7.50.0)&lt;br /&gt;
&lt;br /&gt;
              json           A JSON object with all available keys.&lt;br /&gt;
&lt;br /&gt;
              local_ip       The IP address of the local end of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              local_port     The local port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              method         The http method used in the most recent HTTP request. (Added in 7.72.0)&lt;br /&gt;
&lt;br /&gt;
              num_certs      Number of server certificates received in the TLS handshake. Supported only by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and Secure Transport backends (Added in 7.88.0)&lt;br /&gt;
&lt;br /&gt;
              num_connects   Number of new connects made in the recent transfer.&lt;br /&gt;
&lt;br /&gt;
              num_headers    The number of response headers in the most recent request (restarted at each redirect). Note that the status line IS NOT a header. (Added in 7.73.0)&lt;br /&gt;
&lt;br /&gt;
              num_redirects  Number of redirects that were followed in the request.&lt;br /&gt;
&lt;br /&gt;
              onerror        The rest of the output is only shown if the transfer returned a non-zero error (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              proxy_ssl_verify_result&lt;br /&gt;
                             The result of the HTTPS proxy&#039;s SSL peer certificate verification that was requested. 0 means the verification was successful. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              redirect_url   When an HTTP request was made without -L, --location to follow redirects (or when --max-redirs is met), this variable will show the actual URL a redirect would have gone to.&lt;br /&gt;
&lt;br /&gt;
              referer        The Referer: header, if there was any. (Added in 7.76.0)&lt;br /&gt;
&lt;br /&gt;
              remote_ip      The remote IP address of the most recently done connection - can be either IPv4 or IPv6.&lt;br /&gt;
&lt;br /&gt;
              remote_port    The remote port number of the most recently done connection.&lt;br /&gt;
&lt;br /&gt;
              response_code  The numerical response code that was found in the last transfer (formerly known as &amp;quot;http_code&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
              scheme         The URL scheme (sometimes called protocol) that was effectively used. (Added in 7.52.0)&lt;br /&gt;
&lt;br /&gt;
              size_download  The total amount of bytes that were downloaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              size_header    The total amount of bytes of the downloaded headers.&lt;br /&gt;
&lt;br /&gt;
              size_request   The total amount of bytes that were sent in the HTTP request.&lt;br /&gt;
&lt;br /&gt;
              size_upload    The total amount of bytes that were uploaded. This is the size of the body/data that was transferred, excluding headers.&lt;br /&gt;
&lt;br /&gt;
              speed_download The average download speed that curl measured for the complete download. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              speed_upload   The average upload speed that curl measured for the complete upload. Bytes per second.&lt;br /&gt;
&lt;br /&gt;
              ssl_verify_result&lt;br /&gt;
                             The result of the SSL peer certificate verification that was requested. 0 means the verification was successful.&lt;br /&gt;
&lt;br /&gt;
              stderr         From this point on, the -w, --write-out output will be written to standard error. (Added in 7.63.0)&lt;br /&gt;
&lt;br /&gt;
              stdout         From  this  point  on, the -w, --write-out output will be written to standard output.  This is the default, but can be used to switch back after switching to stderr.  (Added in&lt;br /&gt;
                             7.63.0)&lt;br /&gt;
&lt;br /&gt;
              time_appconnect&lt;br /&gt;
                             The time, in seconds, it took from the start until the SSL/SSH/etc connect/handshake to the remote host was completed.&lt;br /&gt;
&lt;br /&gt;
              time_connect   The time, in seconds, it took from the start until the TCP connect to the remote host (or proxy) was completed.&lt;br /&gt;
&lt;br /&gt;
              time_namelookup&lt;br /&gt;
                             The time, in seconds, it took from the start until the name resolving was completed.&lt;br /&gt;
&lt;br /&gt;
              time_pretransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the file transfer was just about to begin. This includes all pre-transfer commands and negotiations that are specific to  the&lt;br /&gt;
                             particular protocol(s) involved.&lt;br /&gt;
&lt;br /&gt;
              time_redirect  The  time,  in seconds, it took for all redirection steps including name lookup, connect, pretransfer and transfer before the final transaction was started. time_redirect shows&lt;br /&gt;
                             the complete execution time for multiple redirections.&lt;br /&gt;
&lt;br /&gt;
              time_starttransfer&lt;br /&gt;
                             The time, in seconds, it took from the start until the first byte was just about to be transferred. This includes time_pretransfer and also the time the server needed to calcu‐&lt;br /&gt;
                             late the result.&lt;br /&gt;
&lt;br /&gt;
              time_total     The total time, in seconds, that the full operation lasted.&lt;br /&gt;
&lt;br /&gt;
              url            The URL that was fetched. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              urlnum         The URL index number of this transfer, 0-indexed. De-globbed URLs share the same index number as the origin globbed URL. (Added in 7.75.0)&lt;br /&gt;
&lt;br /&gt;
              url_effective  The URL that was fetched last. This is most meaningful if you have told curl to follow location: headers.&lt;br /&gt;
&lt;br /&gt;
              If -w, --write-out is provided several times, the last set value will be used.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl -w &#039;%{http_code}\n&#039; https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -v, --verbose and -I, --head.&lt;br /&gt;
&lt;br /&gt;
       --xattr&lt;br /&gt;
              When  saving  output  to a file, this option tells curl to store certain file metadata in extended file attributes. Currently, the URL is stored in the xdg.origin.url attribute and, for HTTP,&lt;br /&gt;
              the content type is stored in the mime_type attribute. If the file system does not support extended attributes, a warning is issued.&lt;br /&gt;
&lt;br /&gt;
              Providing --xattr multiple times has no extra effect.  Disable it again with --no-xattr.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
               curl --xattr -o storage https://example.com&lt;br /&gt;
&lt;br /&gt;
              See also -R, --remote-time, -w, --write-out and -v, --verbose.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       ~/.curlrc&lt;br /&gt;
              Default config file, see -K, --config for details.&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       The environment variables can be specified in lower case or upper case. The lower case version has precedence. http_proxy is an exception as it is only available in lower case.&lt;br /&gt;
&lt;br /&gt;
       Using an environment variable to set the proxy has the same effect as using the -x, --proxy option.&lt;br /&gt;
&lt;br /&gt;
       http_proxy [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTP.&lt;br /&gt;
&lt;br /&gt;
       HTTPS_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for HTTPS.&lt;br /&gt;
&lt;br /&gt;
       [url-protocol]_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use for [url-protocol], where the protocol is a protocol that curl supports and as specified in a URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP, etc.&lt;br /&gt;
&lt;br /&gt;
       ALL_PROXY [protocol://]&amp;lt;host&amp;gt;[:port]&lt;br /&gt;
              Sets the proxy server to use if no protocol-specific proxy is set.&lt;br /&gt;
&lt;br /&gt;
       NO_PROXY &amp;lt;comma-separated list of hosts/domains&amp;gt;&lt;br /&gt;
              list of host names that should not go through any proxy. If set to an asterisk &#039;*&#039; only, it matches all hosts. Each name in this list is matched as either a domain  name  which  contains  the&lt;br /&gt;
              hostname, or the hostname itself.&lt;br /&gt;
&lt;br /&gt;
              This  environment  variable disables use of the proxy even when specified with the -x, --proxy option. That is NO_PROXY=direct.example.com curl -x http://proxy.example.com http://direct.exam‐&lt;br /&gt;
              ple.com accesses the target URL directly, and NO_PROXY=direct.example.com curl -x http://proxy.example.com http://somewhere.example.com accesses the target URL through the proxy.&lt;br /&gt;
&lt;br /&gt;
              The list of host names can also be include numerical IP addresses, and IPv6 versions should then be given without enclosing brackets.&lt;br /&gt;
&lt;br /&gt;
              Since 7.86.0, IP addresses can be specified using CIDR notation: an appended slash and number specifies the number of &amp;quot;network bits&amp;quot; out of the address to use in the comparison.  For  example&lt;br /&gt;
              &amp;quot;192.168.0.0/16&amp;quot; would match all addresses starting with &amp;quot;192.168&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       APPDATA &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the primary home variable are all unset.&lt;br /&gt;
&lt;br /&gt;
       COLUMNS &amp;lt;terminal width&amp;gt;&lt;br /&gt;
              If set, the specified number of characters will be used as the terminal width when the alternative progress-bar is shown. If not set, curl will try to figure it out using other ways.&lt;br /&gt;
&lt;br /&gt;
       CURL_CA_BUNDLE &amp;lt;file&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       CURL_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, is the first variable curl checks when trying to find its home directory. If not set, it continues to check XDG_CONFIG_HOME&lt;br /&gt;
&lt;br /&gt;
       CURL_SSL_BACKEND &amp;lt;TLS backend&amp;gt;&lt;br /&gt;
              If  curl  was  built  with support for &amp;quot;MultiSSL&amp;quot;, meaning that it has built-in support for more than one TLS backend, this environment variable can be set to the case insensitive name of the&lt;br /&gt;
              particular backend to use when curl is invoked. Setting a name that is not a built-in alternative will make curl stay with the default.&lt;br /&gt;
&lt;br /&gt;
              SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls, nss, openssl, rustls, schannel, secure-transport, wolfssl&lt;br /&gt;
&lt;br /&gt;
       HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, this is used to find the home directory when that is needed. Like when looking for the default .curlrc. CURL_HOME and XDG_CONFIG_HOME have preference.&lt;br /&gt;
&lt;br /&gt;
       QLOGDIR &amp;lt;directory name&amp;gt;&lt;br /&gt;
              If curl was built with HTTP/3 support, setting this environment variable to a local directory will make curl produce qlogs in that directory, using file names named after the destination con‐&lt;br /&gt;
              nection id (in hex). Do note that these files can become rather large. Works with both QUIC backends.&lt;br /&gt;
&lt;br /&gt;
       SHELL  Used on VMS when trying to detect if using a DCL or a &amp;quot;unix&amp;quot; shell.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_DIR &amp;lt;dir&amp;gt;&lt;br /&gt;
              If set, will be used as the --capath value.&lt;br /&gt;
&lt;br /&gt;
       SSL_CERT_FILE &amp;lt;path&amp;gt;&lt;br /&gt;
              If set, will be used as the --cacert value.&lt;br /&gt;
&lt;br /&gt;
       SSLKEYLOGFILE &amp;lt;file name&amp;gt;&lt;br /&gt;
              If  you  set  this  environment variable to a file name, curl will store TLS secrets from its connections in that file when invoked to enable you to analyze the TLS traffic in real time using&lt;br /&gt;
              network analyzing tools such as Wireshark. This works with the following TLS backends: OpenSSL, libressl, BoringSSL, GnuTLS, NSS and wolfSSL.&lt;br /&gt;
&lt;br /&gt;
       USERPROFILE &amp;lt;dir&amp;gt;&lt;br /&gt;
              On Windows, this variable is used when trying to find the home directory. If the other, primary, variable are all unset. If set, curl will use the path &amp;quot;$USERPROFILE\Application Data&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       XDG_CONFIG_HOME &amp;lt;dir&amp;gt;&lt;br /&gt;
              If CURL_HOME is not set, this variable is checked when looking for a default .curlrc file.&lt;br /&gt;
&lt;br /&gt;
PROXY PROTOCOL PREFIXES&lt;br /&gt;
       The proxy string may be specified with a protocol:// prefix to specify alternative proxy protocols.&lt;br /&gt;
&lt;br /&gt;
       If no protocol is specified in the proxy string or if the string does not match a supported one, the proxy will be treated as an HTTP proxy.&lt;br /&gt;
&lt;br /&gt;
       The supported proxy protocol prefixes are as follows:&lt;br /&gt;
&lt;br /&gt;
       http://&lt;br /&gt;
              Makes it use it as an HTTP proxy. The default if no scheme prefix is used.&lt;br /&gt;
&lt;br /&gt;
       https://&lt;br /&gt;
              Makes it treated as an HTTPS proxy.&lt;br /&gt;
&lt;br /&gt;
       socks4://&lt;br /&gt;
              Makes it the equivalent of --socks4&lt;br /&gt;
&lt;br /&gt;
       socks4a://&lt;br /&gt;
              Makes it the equivalent of --socks4a&lt;br /&gt;
&lt;br /&gt;
       socks5://&lt;br /&gt;
              Makes it the equivalent of --socks5&lt;br /&gt;
&lt;br /&gt;
       socks5h://&lt;br /&gt;
              Makes it the equivalent of --socks5-hostname&lt;br /&gt;
&lt;br /&gt;
EXIT CODES&lt;br /&gt;
       There are a bunch of different error codes and their corresponding error messages that may appear under error conditions. At the time of this writing, the exit codes are:&lt;br /&gt;
&lt;br /&gt;
       0      Success. The operation completed successfully according to the instructions.&lt;br /&gt;
&lt;br /&gt;
       1      Unsupported protocol. This build of curl has no support for this protocol.&lt;br /&gt;
&lt;br /&gt;
       2      Failed to initialize.&lt;br /&gt;
&lt;br /&gt;
       3      URL malformed. The syntax was not correct.&lt;br /&gt;
&lt;br /&gt;
       4      A feature or option that was needed to perform the desired request was not enabled or was explicitly disabled at build-time. To make curl able to do this, you probably need another  build  of&lt;br /&gt;
              libcurl.&lt;br /&gt;
&lt;br /&gt;
       5      Could not resolve proxy. The given proxy host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       6      Could not resolve host. The given remote host could not be resolved.&lt;br /&gt;
&lt;br /&gt;
       7      Failed to connect to host.&lt;br /&gt;
&lt;br /&gt;
       8      Weird server reply. The server sent data curl could not parse.&lt;br /&gt;
&lt;br /&gt;
       9      FTP  access  denied. The server denied login or denied access to the particular resource or directory you wanted to reach. Most often you tried to change to a directory that does not exist on&lt;br /&gt;
              the server.&lt;br /&gt;
&lt;br /&gt;
       10     FTP accept failed. While waiting for the server to connect back when an active FTP session is used, an error code was sent over the control connection or similar.&lt;br /&gt;
&lt;br /&gt;
       11     FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.&lt;br /&gt;
&lt;br /&gt;
       12     During an active FTP session while waiting for the server to connect back to curl, the timeout expired.&lt;br /&gt;
&lt;br /&gt;
       13     FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.&lt;br /&gt;
&lt;br /&gt;
       14     FTP weird 227 format. Curl could not parse the 227-line the server sent.&lt;br /&gt;
&lt;br /&gt;
       15     FTP cannot use host. Could not resolve the host IP we got in the 227-line.&lt;br /&gt;
&lt;br /&gt;
       16     HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       17     FTP could not set binary. Could not change transfer method to binary.&lt;br /&gt;
&lt;br /&gt;
       18     Partial file. Only a part of the file was transferred.&lt;br /&gt;
&lt;br /&gt;
       19     FTP could not download/access the given file, the RETR (or similar) command failed.&lt;br /&gt;
&lt;br /&gt;
       21     FTP quote error. A quote command returned error from the server.&lt;br /&gt;
&lt;br /&gt;
       22     HTTP page not retrieved. The requested URL was not found or returned another error with the HTTP error code being 400 or above. This return code only appears if -f, --fail is used.&lt;br /&gt;
&lt;br /&gt;
       23     Write error. Curl could not write data to a local filesystem or similar.&lt;br /&gt;
&lt;br /&gt;
       25     FTP could not STOR file. The server denied the STOR operation, used for FTP uploading.&lt;br /&gt;
&lt;br /&gt;
       26     Read error. Various reading problems.&lt;br /&gt;
&lt;br /&gt;
       27     Out of memory. A memory allocation request failed.&lt;br /&gt;
&lt;br /&gt;
       28     Operation timeout. The specified time-out period was reached according to the conditions.&lt;br /&gt;
&lt;br /&gt;
       30     FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT command, try doing a transfer using PASV instead!&lt;br /&gt;
&lt;br /&gt;
       31     FTP could not use REST. The REST command failed. This command is used for resumed FTP transfers.&lt;br /&gt;
&lt;br /&gt;
       33     HTTP range error. The range &amp;quot;command&amp;quot; did not work.&lt;br /&gt;
&lt;br /&gt;
       34     HTTP post error. Internal post-request generation error.&lt;br /&gt;
&lt;br /&gt;
       35     SSL connect error. The SSL handshaking failed.&lt;br /&gt;
&lt;br /&gt;
       36     Bad download resume. Could not continue an earlier aborted download.&lt;br /&gt;
&lt;br /&gt;
       37     FILE could not read file. Failed to open the file. Permissions?&lt;br /&gt;
&lt;br /&gt;
       38     LDAP cannot bind. LDAP bind operation failed.&lt;br /&gt;
&lt;br /&gt;
       39     LDAP search failed.&lt;br /&gt;
&lt;br /&gt;
       41     Function not found. A required LDAP function was not found.&lt;br /&gt;
&lt;br /&gt;
       42     Aborted by callback. An application told curl to abort the operation.&lt;br /&gt;
&lt;br /&gt;
       43     Internal error. A function was called with a bad parameter.&lt;br /&gt;
&lt;br /&gt;
       45     Interface error. A specified outgoing interface could not be used.&lt;br /&gt;
&lt;br /&gt;
       47     Too many redirects. When following redirects, curl hit the maximum amount.&lt;br /&gt;
&lt;br /&gt;
       48     Unknown option specified to libcurl. This indicates that you passed a weird option to curl that was passed on to libcurl and rejected. Read up in the manual!&lt;br /&gt;
&lt;br /&gt;
       49     Malformed telnet option.&lt;br /&gt;
&lt;br /&gt;
       52     The server did not reply anything, which here is considered an error.&lt;br /&gt;
&lt;br /&gt;
       53     SSL crypto engine not found.&lt;br /&gt;
&lt;br /&gt;
       54     Cannot set SSL crypto engine as default.&lt;br /&gt;
&lt;br /&gt;
       55     Failed sending network data.&lt;br /&gt;
&lt;br /&gt;
       56     Failure in receiving network data.&lt;br /&gt;
&lt;br /&gt;
       58     Problem with the local certificate.&lt;br /&gt;
&lt;br /&gt;
       59     Could not use specified SSL cipher.&lt;br /&gt;
&lt;br /&gt;
       60     Peer certificate cannot be authenticated with known CA certificates.&lt;br /&gt;
&lt;br /&gt;
       61     Unrecognized transfer encoding.&lt;br /&gt;
&lt;br /&gt;
       63     Maximum file size exceeded.&lt;br /&gt;
&lt;br /&gt;
       64     Requested FTP SSL level failed.&lt;br /&gt;
&lt;br /&gt;
       65     Sending the data requires a rewind that failed.&lt;br /&gt;
&lt;br /&gt;
       66     Failed to initialise SSL Engine.&lt;br /&gt;
&lt;br /&gt;
       67     The user name, password, or similar was not accepted and curl failed to log in.&lt;br /&gt;
&lt;br /&gt;
       68     File not found on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       69     Permission problem on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       70     Out of disk space on TFTP server.&lt;br /&gt;
&lt;br /&gt;
       71     Illegal TFTP operation.&lt;br /&gt;
&lt;br /&gt;
       72     Unknown TFTP transfer ID.&lt;br /&gt;
&lt;br /&gt;
       73     File already exists (TFTP).&lt;br /&gt;
&lt;br /&gt;
       74     No such user (TFTP).&lt;br /&gt;
&lt;br /&gt;
       77     Problem reading the SSL CA cert (path? access rights?).&lt;br /&gt;
&lt;br /&gt;
       78     The resource referenced in the URL does not exist.&lt;br /&gt;
&lt;br /&gt;
       79     An unspecified error occurred during the SSH session.&lt;br /&gt;
&lt;br /&gt;
       80     Failed to shut down the SSL connection.&lt;br /&gt;
&lt;br /&gt;
       82     Could not load CRL file, missing or wrong format.&lt;br /&gt;
&lt;br /&gt;
       83     Issuer check failed.&lt;br /&gt;
&lt;br /&gt;
       84     The FTP PRET command failed.&lt;br /&gt;
&lt;br /&gt;
       85     Mismatch of RTSP CSeq numbers.&lt;br /&gt;
&lt;br /&gt;
       86     Mismatch of RTSP Session Identifiers.&lt;br /&gt;
&lt;br /&gt;
       87     Unable to parse FTP file list.&lt;br /&gt;
&lt;br /&gt;
       88     FTP chunk callback reported error.&lt;br /&gt;
&lt;br /&gt;
       89     No connection available, the session will be queued.&lt;br /&gt;
&lt;br /&gt;
       90     SSL public key does not matched pinned public key.&lt;br /&gt;
&lt;br /&gt;
       91     Invalid SSL certificate status.&lt;br /&gt;
&lt;br /&gt;
       92     Stream error in HTTP/2 framing layer.&lt;br /&gt;
&lt;br /&gt;
       93     An API function was called from inside a callback.&lt;br /&gt;
&lt;br /&gt;
       94     An authentication function returned an error.&lt;br /&gt;
&lt;br /&gt;
       95     A problem was detected in the HTTP/3 layer. This is somewhat generic and can be one out of several problems, see the error message for details.&lt;br /&gt;
&lt;br /&gt;
       96     QUIC connection error. This error may be caused by an SSL library error. QUIC is the protocol used for HTTP/3 transfers.&lt;br /&gt;
&lt;br /&gt;
       XX     More error codes will appear here in future releases. The existing ones are meant to never change.&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       If you experience any problems with curl, submit an issue in the project&#039;s bug tracker on GitHub: https://github.com/curl/curl/issues&lt;br /&gt;
&lt;br /&gt;
AUTHORS / CONTRIBUTORS&lt;br /&gt;
       Daniel Stenberg is the main author, but the whole list of contributors is found in the separate THANKS file.&lt;br /&gt;
&lt;br /&gt;
WWW&lt;br /&gt;
       https://curl.se&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       ftp(1), wget(1)&lt;br /&gt;
&lt;br /&gt;
curl 7.88.1                                                                                    February 19 2023                                                                                       curl(1)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=HOSTNAME_-_Manpage&amp;diff=1142</id>
		<title>HOSTNAME - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=HOSTNAME_-_Manpage&amp;diff=1142"/>
		<updated>2026-02-25T12:38:24Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Quick Example ==&lt;br /&gt;
&lt;br /&gt;
Get the FQDN of one machine :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
hostname -f&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== hostname Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
HOSTNAME(1)                                                                               Linux Programmer&#039;s Manual                                                                               HOSTNAME(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       hostname - show or set the system&#039;s host name&lt;br /&gt;
       domainname - show or set the system&#039;s NIS/YP domain name&lt;br /&gt;
       ypdomainname - show or set the system&#039;s NIS/YP domain name&lt;br /&gt;
       nisdomainname - show or set the system&#039;s NIS/YP domain name&lt;br /&gt;
       dnsdomainname - show the system&#039;s DNS domain name&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       hostname [-a|--alias] [-d|--domain] [-f|--fqdn|--long] [-A|--all-fqdns] [-i|--ip-address] [-I|--all-ip-addresses] [-s|--short] [-y|--yp|--nis]&lt;br /&gt;
       hostname [-b|--boot] [-F|--file filename] [hostname]&lt;br /&gt;
       hostname [-h|--help] [-V|--version]&lt;br /&gt;
&lt;br /&gt;
       domainname [nisdomain] [-F file]&lt;br /&gt;
       ypdomainname [nisdomain] [-F file]&lt;br /&gt;
       nisdomainname [nisdomain] [-F file]&lt;br /&gt;
&lt;br /&gt;
       dnsdomainname&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       Hostname is used to display the system&#039;s DNS name, and to display or set its hostname or NIS domain name.&lt;br /&gt;
&lt;br /&gt;
   GET NAME&lt;br /&gt;
       When called without any arguments, the program displays the current names:&lt;br /&gt;
&lt;br /&gt;
       hostname will print the name of the system as returned by the gethostname(2) function.&lt;br /&gt;
&lt;br /&gt;
       domainname will print the NIS domainname of the system.  domainname uses the gethostname(2) function, while ypdomainname and nisdomainname use the getdomainname(2).&lt;br /&gt;
&lt;br /&gt;
       dnsdomainname will print the domain part of the FQDN (Fully Qualified Domain Name). The complete FQDN of the system is returned with hostname --fqdn (but see the warnings in section THE FQDN below).&lt;br /&gt;
&lt;br /&gt;
   SET NAME&lt;br /&gt;
       When  called with one argument or with the --file option, the commands set the host name or the NIS/YP domain name.  hostname uses the sethostname(2) function, while all of the three domainname, yp‐&lt;br /&gt;
       domainname and nisdomainname use setdomainname(2).  Note, that this is effective only until the next reboot.  Edit /etc/hostname for permanent change.&lt;br /&gt;
&lt;br /&gt;
       Note, that only the super-user can change the names.&lt;br /&gt;
&lt;br /&gt;
       It is not possible to set the FQDN or the DNS domain name with the dnsdomainname command (see THE FQDN below).&lt;br /&gt;
&lt;br /&gt;
       The host name is usually set once at system startup in /etc/init.d/hostname.sh (normally by reading the contents of a file which contains the host name, e.g.  /etc/hostname).&lt;br /&gt;
&lt;br /&gt;
   THE FQDN&lt;br /&gt;
       The FQDN (Fully Qualified Domain Name) of the system is the name that the resolver(3) returns for the host name, such as, ursula.example.com.  It is usually the hostname followed by the  DNS  domain&lt;br /&gt;
       name (the part after the first dot).  You can check the FQDN using hostname --fqdn or the domain name using dnsdomainname.&lt;br /&gt;
&lt;br /&gt;
       You cannot change the FQDN with hostname or dnsdomainname.&lt;br /&gt;
&lt;br /&gt;
       The recommended method of setting the FQDN is to make the hostname be an alias for the fully qualified name using /etc/hosts, DNS, or NIS. For example, if the hostname was &amp;quot;ursula&amp;quot;, one might have a&lt;br /&gt;
       line in /etc/hosts which reads&lt;br /&gt;
&lt;br /&gt;
              127.0.1.1    ursula.example.com ursula&lt;br /&gt;
&lt;br /&gt;
       Technically: The FQDN is the name getaddrinfo(3) returns for the host name returned by gethostname(2).  The DNS domain name is the part after the first dot.&lt;br /&gt;
&lt;br /&gt;
       Therefore it depends on the configuration of the resolver (usually in /etc/host.conf) how you can change it. Usually the hosts file is parsed before DNS or NIS, so it is most common  to  change  the&lt;br /&gt;
       FQDN in /etc/hosts.&lt;br /&gt;
&lt;br /&gt;
       If  a machine has multiple network interfaces/addresses or is used in a mobile environment, then it may either have multiple FQDNs/domain names or none at all. Therefore avoid using hostname --fqdn,&lt;br /&gt;
       hostname --domain and dnsdomainname.  hostname --ip-address is subject to the same limitations so it should be avoided as well.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       -a, --alias&lt;br /&gt;
              Display the alias name of the host (if used). This option is deprecated and should not be used anymore.&lt;br /&gt;
&lt;br /&gt;
       -A, --all-fqdns&lt;br /&gt;
              Displays all FQDNs of the machine. This option enumerates all configured network addresses on all configured network interfaces, and translates them to DNS domain names. Addresses that cannot&lt;br /&gt;
              be  translated (i.e. because they do not have an appropriate reverse IP entry) are skipped. Note that different addresses may resolve to the same name, therefore the output may contain dupli‐&lt;br /&gt;
              cate entries. Do not make any assumptions about the order of the output.&lt;br /&gt;
&lt;br /&gt;
       -b, --boot&lt;br /&gt;
              Always set a hostname; this allows the file specified by -F to be non-existent or empty, in which case the default hostname localhost will be used if none is yet set.&lt;br /&gt;
&lt;br /&gt;
       -d, --domain&lt;br /&gt;
              Display the name of the DNS domain.  Don&#039;t use the command domainname to get the DNS domain name because it will show the NIS domain name and not the DNS domain name.  Use  dnsdomainname  in‐&lt;br /&gt;
              stead. See the warnings in section THE FQDN above, and avoid using this option.&lt;br /&gt;
&lt;br /&gt;
       -f, --fqdn, --long&lt;br /&gt;
              Display the FQDN (Fully Qualified Domain Name). A FQDN consists of a short host name and the DNS domain name. Unless you are using bind or NIS for host lookups you can change the FQDN and the&lt;br /&gt;
              DNS domain name (which is part of the FQDN) in the /etc/hosts file. See the warnings in section THE FQDN above und use hostname --all-fqdns instead wherever possible.&lt;br /&gt;
&lt;br /&gt;
       -F, --file filename&lt;br /&gt;
              Read the host name from the specified file. Comments (lines starting with a `#&#039;) are ignored.&lt;br /&gt;
&lt;br /&gt;
       -i, --ip-address&lt;br /&gt;
              Display the network address(es) of the host name. Note that this works only if the host name can be resolved. Avoid using this option; use hostname --all-ip-addresses instead.&lt;br /&gt;
&lt;br /&gt;
       -I, --all-ip-addresses&lt;br /&gt;
              Display all network addresses of the host. This option enumerates all configured addresses on all network interfaces. The loopback interface and IPv6 link-local addresses  are  omitted.  Con‐&lt;br /&gt;
              trary to option -i, this option does not depend on name resolution. Do not make any assumptions about the order of the output.&lt;br /&gt;
&lt;br /&gt;
       -s, --short&lt;br /&gt;
              Display the short host name. This is the host name cut at the first dot.&lt;br /&gt;
&lt;br /&gt;
       -V, --version&lt;br /&gt;
              Print version information on standard output and exit successfully.&lt;br /&gt;
&lt;br /&gt;
       -y, --yp, --nis&lt;br /&gt;
              Display the NIS domain name. If a parameter is given (or --file name ) then root can also set a new NIS domain.&lt;br /&gt;
&lt;br /&gt;
       -h, --help&lt;br /&gt;
              Print a usage message and exit.&lt;br /&gt;
&lt;br /&gt;
NOTES&lt;br /&gt;
       The  address families hostname tries when looking up the FQDN, aliases and network addresses of the host are determined by the configuration of your resolver.  For instance, on GNU Libc systems, the&lt;br /&gt;
       resolver can be instructed to try IPv6 lookups first by using the inet6 option in /etc/resolv.conf.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       /etc/hostname Historically this file was supposed to only contain the hostname and not the full canonical FQDN. Nowadays most software is able to cope with a full FQDN here. This  file  is  read  at&lt;br /&gt;
       boot time by the system initialization scripts to set the hostname.&lt;br /&gt;
&lt;br /&gt;
       /etc/hosts Usually, this is where one sets the domain name by aliasing the host name to the FQDN.&lt;br /&gt;
&lt;br /&gt;
AUTHORS&lt;br /&gt;
       Peter Tobias, &amp;lt;tobias@et-inf.fho-emden.de&amp;gt;&lt;br /&gt;
       Bernd Eckenfels, &amp;lt;net-tools@lina.inka.de&amp;gt; (NIS and manpage).&lt;br /&gt;
       Michael Meskes, &amp;lt;meskes@debian.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
net-tools                                                                                         2009-09-16                                                                                      HOSTNAME(1)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1141</id>
		<title>SORT - Base Documentation</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1141"/>
		<updated>2026-02-18T10:30:14Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Common Errors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Basic Usage of the `sort` Command ===&lt;br /&gt;
&lt;br /&gt;
The most basic usage of `sort` is to sort lines in a file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command sorts the content of the specified file in ascending order (alphabetically for text or numerically for numbers).&lt;br /&gt;
&lt;br /&gt;
=== Sorting in Reverse Order ===&lt;br /&gt;
&lt;br /&gt;
To reverse the order of sorting, use the `-r` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -r &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sorts the file in descending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting Numerically ===&lt;br /&gt;
&lt;br /&gt;
To sort lines based on numeric values, use the `-n` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -n &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, given a file with the following numbers:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
10&lt;br /&gt;
1&lt;br /&gt;
5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -n` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
1&lt;br /&gt;
2&lt;br /&gt;
5&lt;br /&gt;
10&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting by a Specific Column ===&lt;br /&gt;
&lt;br /&gt;
You can sort by a specific column of data using the `-k` option. For example, to sort by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming the following data in the file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
apple 3&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -k 2` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&lt;br /&gt;
apple 3&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Custom Delimiters ===&lt;br /&gt;
&lt;br /&gt;
You can specify a custom delimiter using the `-t` option. For instance, to sort a CSV file by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -t &#039;,&#039; -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Case-insensitive Sorting ===&lt;br /&gt;
&lt;br /&gt;
To sort in a case-insensitive manner, use the `-f` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -f &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This treats uppercase and lowercase letters as equal during sorting.&lt;br /&gt;
&lt;br /&gt;
=== Sorting and Removing Duplicates ===&lt;br /&gt;
&lt;br /&gt;
You can combine `sort` with the `-u` option to sort data and remove duplicate lines:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -u &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will eliminate any repeated lines while sorting the file.&lt;br /&gt;
&lt;br /&gt;
== Advanced Sorting Features ==&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Multiple Keys ===&lt;br /&gt;
&lt;br /&gt;
You can sort by multiple keys (columns) by specifying multiple `-k` options. For example, to sort first by the second column and then by the third column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 -k 3 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows more complex sorting, where data can be ordered based on multiple attributes.&lt;br /&gt;
&lt;br /&gt;
=== Using `sort` with Pipelines ===&lt;br /&gt;
&lt;br /&gt;
You can use `sort` in combination with other commands via pipes. For example, to sort the output of `ls`:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ls -l | sort -k 5 -n&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will sort the files by file size in ascending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Date or Time ===&lt;br /&gt;
&lt;br /&gt;
If you have data that includes date and time, you can sort it based on the date. For example, with log files:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 1,1 -k 2,2 &amp;lt;log_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will sort the log entries by date and then by time.&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Random Order ===&lt;br /&gt;
&lt;br /&gt;
To sort the file in a random order, use the `-R` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -R &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command shuffles the lines in the file randomly.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Common Errors ===&lt;br /&gt;
&lt;br /&gt;
==== sort: invalid option ====&lt;br /&gt;
This error usually occurs when an invalid option is used. Double-check the syntax and the options you are passing to ensure they are valid for your version of `sort`.&lt;br /&gt;
&lt;br /&gt;
==== Sorting Not Working as Expected ==== &lt;br /&gt;
If sorting does not appear to work, it might be due to:&lt;br /&gt;
- Sorting alphabetically when you expect numerical sorting.&lt;br /&gt;
- The data might have leading spaces or non-visible characters affecting the sort order. Use the `-b` option to ignore leading spaces or check for hidden characters.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -b &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Sort Not Handling Large Files Efficiently ==== &lt;br /&gt;
Sorting large files can sometimes be slow. Ensure that your system has sufficient memory to handle large datasets. If needed, use the `-S` option to specify the amount of memory to use for sorting.&lt;br /&gt;
&lt;br /&gt;
==== Unexpected Case Sensitivity ====&lt;br /&gt;
If the sort seems case-sensitive but you need case-insensitive sorting, remember to include the `-f` option.&lt;br /&gt;
&lt;br /&gt;
==== File Not Found ====&lt;br /&gt;
Ensure the file you are trying to sort exists in the directory you&#039;re working in. If the file is missing, `sort` will return an error: `&amp;lt;file_name&amp;gt;: No such file or directory`.&lt;br /&gt;
&lt;br /&gt;
=== Performance Optimization ===&lt;br /&gt;
&lt;br /&gt;
Use the `-S` option to specify the amount of memory used for sorting, which can improve performance for large files.&lt;br /&gt;
  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -S 50% &amp;lt;large_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If sorting from a very large dataset, consider splitting the data into smaller chunks and sorting them individually before combining them.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [GNU Sort Manual](https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html)&lt;br /&gt;
* [Linux `sort` Command Guide](https://www.geeksforgeeks.org/sort-command-in-linux-with-examples/)&lt;br /&gt;
* [Unix `sort` Command Tutorial](https://www.tutorialspoint.com/unix_commands/sort.htm)&lt;br /&gt;
* [Linux Sorting Commands](https://linux.die.net/man/1/sort)&lt;br /&gt;
* [Linux `sort` Cheatsheet](https://cheatography.com/david-pickering/cheat-sheets/sort-command-linux/)&lt;br /&gt;
* [Stack Overflow - Troubleshooting `sort`](https://stackoverflow.com/questions/tagged/sort)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1140</id>
		<title>SORT - Base Documentation</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1140"/>
		<updated>2026-02-18T10:29:18Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Common Errors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Basic Usage of the `sort` Command ===&lt;br /&gt;
&lt;br /&gt;
The most basic usage of `sort` is to sort lines in a file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command sorts the content of the specified file in ascending order (alphabetically for text or numerically for numbers).&lt;br /&gt;
&lt;br /&gt;
=== Sorting in Reverse Order ===&lt;br /&gt;
&lt;br /&gt;
To reverse the order of sorting, use the `-r` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -r &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sorts the file in descending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting Numerically ===&lt;br /&gt;
&lt;br /&gt;
To sort lines based on numeric values, use the `-n` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -n &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, given a file with the following numbers:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
10&lt;br /&gt;
1&lt;br /&gt;
5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -n` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
1&lt;br /&gt;
2&lt;br /&gt;
5&lt;br /&gt;
10&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting by a Specific Column ===&lt;br /&gt;
&lt;br /&gt;
You can sort by a specific column of data using the `-k` option. For example, to sort by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming the following data in the file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
apple 3&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -k 2` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&lt;br /&gt;
apple 3&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Custom Delimiters ===&lt;br /&gt;
&lt;br /&gt;
You can specify a custom delimiter using the `-t` option. For instance, to sort a CSV file by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -t &#039;,&#039; -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Case-insensitive Sorting ===&lt;br /&gt;
&lt;br /&gt;
To sort in a case-insensitive manner, use the `-f` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -f &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This treats uppercase and lowercase letters as equal during sorting.&lt;br /&gt;
&lt;br /&gt;
=== Sorting and Removing Duplicates ===&lt;br /&gt;
&lt;br /&gt;
You can combine `sort` with the `-u` option to sort data and remove duplicate lines:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -u &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will eliminate any repeated lines while sorting the file.&lt;br /&gt;
&lt;br /&gt;
== Advanced Sorting Features ==&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Multiple Keys ===&lt;br /&gt;
&lt;br /&gt;
You can sort by multiple keys (columns) by specifying multiple `-k` options. For example, to sort first by the second column and then by the third column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 -k 3 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows more complex sorting, where data can be ordered based on multiple attributes.&lt;br /&gt;
&lt;br /&gt;
=== Using `sort` with Pipelines ===&lt;br /&gt;
&lt;br /&gt;
You can use `sort` in combination with other commands via pipes. For example, to sort the output of `ls`:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ls -l | sort -k 5 -n&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will sort the files by file size in ascending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Date or Time ===&lt;br /&gt;
&lt;br /&gt;
If you have data that includes date and time, you can sort it based on the date. For example, with log files:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 1,1 -k 2,2 &amp;lt;log_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will sort the log entries by date and then by time.&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Random Order ===&lt;br /&gt;
&lt;br /&gt;
To sort the file in a random order, use the `-R` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -R &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command shuffles the lines in the file randomly.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Common Errors ===&lt;br /&gt;
&lt;br /&gt;
1. **&amp;quot;sort: invalid option&amp;quot;**  &lt;br /&gt;
This error usually occurs when an invalid option is used. Double-check the syntax and the options you are passing to ensure they are valid for your version of `sort`.&lt;br /&gt;
&lt;br /&gt;
2. **Sorting Not Working as Expected**  &lt;br /&gt;
If sorting does not appear to work, it might be due to:&lt;br /&gt;
- Sorting alphabetically when you expect numerical sorting.&lt;br /&gt;
- The data might have leading spaces or non-visible characters affecting the sort order. Use the `-b` option to ignore leading spaces or check for hidden characters.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -b &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Sort Not Handling Large Files Efficiently**  &lt;br /&gt;
Sorting large files can sometimes be slow. Ensure that your system has sufficient memory to handle large datasets. If needed, use the `-S` option to specify the amount of memory to use for sorting.&lt;br /&gt;
&lt;br /&gt;
4. **Unexpected Case Sensitivity**  &lt;br /&gt;
If the sort seems case-sensitive but you need case-insensitive sorting, remember to include the `-f` option.&lt;br /&gt;
&lt;br /&gt;
5. **File Not Found**  &lt;br /&gt;
Ensure the file you are trying to sort exists in the directory you&#039;re working in. If the file is missing, `sort` will return an error: `&amp;lt;file_name&amp;gt;: No such file or directory`.&lt;br /&gt;
&lt;br /&gt;
=== Performance Optimization ===&lt;br /&gt;
&lt;br /&gt;
Use the `-S` option to specify the amount of memory used for sorting, which can improve performance for large files.&lt;br /&gt;
  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -S 50% &amp;lt;large_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If sorting from a very large dataset, consider splitting the data into smaller chunks and sorting them individually before combining them.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [GNU Sort Manual](https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html)&lt;br /&gt;
* [Linux `sort` Command Guide](https://www.geeksforgeeks.org/sort-command-in-linux-with-examples/)&lt;br /&gt;
* [Unix `sort` Command Tutorial](https://www.tutorialspoint.com/unix_commands/sort.htm)&lt;br /&gt;
* [Linux Sorting Commands](https://linux.die.net/man/1/sort)&lt;br /&gt;
* [Linux `sort` Cheatsheet](https://cheatography.com/david-pickering/cheat-sheets/sort-command-linux/)&lt;br /&gt;
* [Stack Overflow - Troubleshooting `sort`](https://stackoverflow.com/questions/tagged/sort)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1139</id>
		<title>SORT - Base Documentation</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=SORT_-_Base_Documentation&amp;diff=1139"/>
		<updated>2026-02-18T10:28:27Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  === Basic Usage of the `sort` Command ===  The most basic usage of `sort` is to sort lines in a file:   &amp;lt;nowiki&amp;gt; sort &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;  This command sorts the content of the specified file in ascending order (alphabetically for text or numerically for numbers).  === Sorting in Reverse Order ===  To reverse the order of sorting, use the `-r` option:   &amp;lt;nowiki&amp;gt; sort -r &amp;lt;fil...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Basic Usage of the `sort` Command ===&lt;br /&gt;
&lt;br /&gt;
The most basic usage of `sort` is to sort lines in a file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command sorts the content of the specified file in ascending order (alphabetically for text or numerically for numbers).&lt;br /&gt;
&lt;br /&gt;
=== Sorting in Reverse Order ===&lt;br /&gt;
&lt;br /&gt;
To reverse the order of sorting, use the `-r` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -r &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sorts the file in descending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting Numerically ===&lt;br /&gt;
&lt;br /&gt;
To sort lines based on numeric values, use the `-n` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -n &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, given a file with the following numbers:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
2&lt;br /&gt;
10&lt;br /&gt;
1&lt;br /&gt;
5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -n` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
1&lt;br /&gt;
2&lt;br /&gt;
5&lt;br /&gt;
10&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting by a Specific Column ===&lt;br /&gt;
&lt;br /&gt;
You can sort by a specific column of data using the `-k` option. For example, to sort by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Assuming the following data in the file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
apple 3&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The command `sort -k 2` will result in:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
banana 1&lt;br /&gt;
cherry 2&lt;br /&gt;
apple 3&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Custom Delimiters ===&lt;br /&gt;
&lt;br /&gt;
You can specify a custom delimiter using the `-t` option. For instance, to sort a CSV file by the second column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -t &#039;,&#039; -k 2 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Case-insensitive Sorting ===&lt;br /&gt;
&lt;br /&gt;
To sort in a case-insensitive manner, use the `-f` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -f &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This treats uppercase and lowercase letters as equal during sorting.&lt;br /&gt;
&lt;br /&gt;
=== Sorting and Removing Duplicates ===&lt;br /&gt;
&lt;br /&gt;
You can combine `sort` with the `-u` option to sort data and remove duplicate lines:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -u &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will eliminate any repeated lines while sorting the file.&lt;br /&gt;
&lt;br /&gt;
== Advanced Sorting Features ==&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Multiple Keys ===&lt;br /&gt;
&lt;br /&gt;
You can sort by multiple keys (columns) by specifying multiple `-k` options. For example, to sort first by the second column and then by the third column:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 2 -k 3 &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows more complex sorting, where data can be ordered based on multiple attributes.&lt;br /&gt;
&lt;br /&gt;
=== Using `sort` with Pipelines ===&lt;br /&gt;
&lt;br /&gt;
You can use `sort` in combination with other commands via pipes. For example, to sort the output of `ls`:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ls -l | sort -k 5 -n&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will sort the files by file size in ascending order.&lt;br /&gt;
&lt;br /&gt;
=== Sorting by Date or Time ===&lt;br /&gt;
&lt;br /&gt;
If you have data that includes date and time, you can sort it based on the date. For example, with log files:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -k 1,1 -k 2,2 &amp;lt;log_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will sort the log entries by date and then by time.&lt;br /&gt;
&lt;br /&gt;
=== Sorting with Random Order ===&lt;br /&gt;
&lt;br /&gt;
To sort the file in a random order, use the `-R` option:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -R &amp;lt;file_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command shuffles the lines in the file randomly.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Common Errors ===&lt;br /&gt;
&lt;br /&gt;
1. **&amp;quot;sort: invalid option&amp;quot;**  &lt;br /&gt;
   This error usually occurs when an invalid option is used. Double-check the syntax and the options you are passing to ensure they are valid for your version of `sort`.&lt;br /&gt;
&lt;br /&gt;
2. **Sorting Not Working as Expected**  &lt;br /&gt;
   If sorting does not appear to work, it might be due to:&lt;br /&gt;
   - Sorting alphabetically when you expect numerical sorting.&lt;br /&gt;
   - The data might have leading spaces or non-visible characters affecting the sort order. Use the `-b` option to ignore leading spaces or check for hidden characters.&lt;br /&gt;
&lt;br /&gt;
   Example:&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;&lt;br /&gt;
   sort -b &amp;lt;file_name&amp;gt;&lt;br /&gt;
   &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Sort Not Handling Large Files Efficiently**  &lt;br /&gt;
   Sorting large files can sometimes be slow. Ensure that your system has sufficient memory to handle large datasets. If needed, use the `-S` option to specify the amount of memory to use for sorting.&lt;br /&gt;
&lt;br /&gt;
4. **Unexpected Case Sensitivity**  &lt;br /&gt;
   If the sort seems case-sensitive but you need case-insensitive sorting, remember to include the `-f` option.&lt;br /&gt;
&lt;br /&gt;
5. **File Not Found**  &lt;br /&gt;
   Ensure the file you are trying to sort exists in the directory you&#039;re working in. If the file is missing, `sort` will return an error: `&amp;lt;file_name&amp;gt;: No such file or directory`.&lt;br /&gt;
&lt;br /&gt;
=== Performance Optimization ===&lt;br /&gt;
&lt;br /&gt;
Use the `-S` option to specify the amount of memory used for sorting, which can improve performance for large files.&lt;br /&gt;
  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sort -S 50% &amp;lt;large_file&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If sorting from a very large dataset, consider splitting the data into smaller chunks and sorting them individually before combining them.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [GNU Sort Manual](https://www.gnu.org/software/coreutils/manual/html_node/sort-invocation.html)&lt;br /&gt;
* [Linux `sort` Command Guide](https://www.geeksforgeeks.org/sort-command-in-linux-with-examples/)&lt;br /&gt;
* [Unix `sort` Command Tutorial](https://www.tutorialspoint.com/unix_commands/sort.htm)&lt;br /&gt;
* [Linux Sorting Commands](https://linux.die.net/man/1/sort)&lt;br /&gt;
* [Linux `sort` Cheatsheet](https://cheatography.com/david-pickering/cheat-sheets/sort-command-linux/)&lt;br /&gt;
* [Stack Overflow - Troubleshooting `sort`](https://stackoverflow.com/questions/tagged/sort)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1138</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1138"/>
		<updated>2026-02-18T10:22:21Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Filters &amp;amp; Descriptions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cs-client-addr&#039;&#039;&#039;: The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-client-port&#039;&#039;&#039;: The (client) source port on the clientside of the connection.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-addr&#039;&#039;&#039;: The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
* &#039;&#039;&#039;cs-server-port&#039;&#039;&#039;: The (server) destination port on the clientside of the connection (i.e. the Virtual Server port).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-addr&#039;&#039;&#039;: The (client) source IP address on the serverside of the connection (i.e. the SNAT address).&lt;br /&gt;
* &#039;&#039;&#039;ss-client-port&#039;&#039;&#039;: The (client) source port on the serverside of the connection (i.e. the SNAT port).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-addr&#039;&#039;&#039;: The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address).&lt;br /&gt;
* &#039;&#039;&#039;ss-server-port&#039;&#039;&#039;: The (server) destination port on the serverside of the connection (i.e., the Pool Member port).&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1137</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1137"/>
		<updated>2026-02-18T10:21:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* USEFUL LINKS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1136</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1136"/>
		<updated>2026-02-18T10:20:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* SHOW VS STATISTICS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1135</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1135"/>
		<updated>2026-02-18T10:20:00Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* SHOW VS LOGS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1134</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1134"/>
		<updated>2026-02-18T10:19:39Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Filters &amp;amp; Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Descriptions ===&lt;br /&gt;
&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1133</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1133"/>
		<updated>2026-02-18T10:19:25Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* SHOW VS CONNECTIONS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Filters &amp;amp; Description ===&lt;br /&gt;
&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1132</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1132"/>
		<updated>2026-02-18T10:18:30Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Filter                                # Description&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1131</id>
		<title>F5 BIG-IP - LTM Survival Guide</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_Survival_Guide&amp;diff=1131"/>
		<updated>2026-02-18T10:17:18Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == CHOOSE PARTITION ==  Enter tmsh and choose partition :   &amp;lt;nowiki&amp;gt; tmsh cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;    == SHOW VS CONFIG ==   &amp;lt;nowiki&amp;gt; # show running-config ltm virtual &amp;lt;VS_NAME&amp;gt; ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {     destination 1.2.3.4%1094:443     ip-protocol tcp     mask 255.255.255.255     partition LBP3-LBPFM     pool Pool_&amp;lt;VS_NAME&amp;gt;     profiles {         /Common/tcp { }...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== CHOOSE PARTITION ==&lt;br /&gt;
&lt;br /&gt;
Enter tmsh and choose partition :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh&lt;br /&gt;
cd /&amp;lt;PARTITION_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONFIG ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
ltm virtual &amp;lt;VS_NAME&amp;gt;_443 {&lt;br /&gt;
    destination 1.2.3.4%1094:443&lt;br /&gt;
    ip-protocol tcp&lt;br /&gt;
    mask 255.255.255.255&lt;br /&gt;
    partition LBP3-LBPFM&lt;br /&gt;
    pool Pool_&amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
    profiles {&lt;br /&gt;
        /Common/tcp { }&lt;br /&gt;
        clientssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context clientside&lt;br /&gt;
        }&lt;br /&gt;
        serverssl_&amp;lt;VS_NAME&amp;gt; {&lt;br /&gt;
            context serverside&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    serverssl-use-sni disabled&lt;br /&gt;
    source 0.0.0.0/0&lt;br /&gt;
    source-address-translation {&lt;br /&gt;
        type automap&lt;br /&gt;
    }&lt;br /&gt;
    translate-address enabled&lt;br /&gt;
    translate-port enabled&lt;br /&gt;
    vs-index 147&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL CONFIG ==&lt;br /&gt;
&lt;br /&gt;
Show Configuration :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show running-config ltm pool &amp;lt;POOL_NAME&amp;gt;&lt;br /&gt;
ltm pool &amp;lt;POOL_NAME&amp;gt; {&lt;br /&gt;
    members {&lt;br /&gt;
        SERVER1:PORT {&lt;br /&gt;
            address 1.2.3.4&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
        SERVER2:PORT {&lt;br /&gt;
            address 4.3.2.1&lt;br /&gt;
            session monitor-enabled&lt;br /&gt;
            state up&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    monitor /Common/tcp&lt;br /&gt;
    partition PARTITION_NAME&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
== SHOW POOL STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool &amp;lt;POOL_NAME&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW SSL PROFILES ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS CONNECTIONS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys conn cs-server-addr &amp;lt;IP&amp;gt; | awk &#039;{print $1}&#039; | cut -d &amp;quot;:&amp;quot; -f1 | sort -u&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
To get :&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
IP SRC cliente      IP VS             Floating VS        IP node&lt;br /&gt;
cs-client-addr      cs-server-addr    ss-client-addr     ss-server-addr&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
# Filter                                # Description&lt;br /&gt;
*cs-client-addr&lt;br /&gt;
**The (client) source IP address on the clientside of the connection. Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-client-port&lt;br /&gt;
** The (client) source port on the clientside of the connection&lt;br /&gt;
*cs-server-addr&lt;br /&gt;
** The (server) destination IP address on the clientside of the connection (i.e. the Virtual Server IP address). Subnets are allowed by specifying an optional prefix length up to /24 and /56 for IPv4 and IPv6 respectively.&lt;br /&gt;
*cs-server-port&lt;br /&gt;
** The (server) destination port on the clientside of the connection (i.e. the Virtual Server port)&lt;br /&gt;
*ss-client-addr&lt;br /&gt;
**The (client) source IP address on the serverside of the connection (i.e. the SNAT address)&lt;br /&gt;
*ss-client-port&lt;br /&gt;
**The (client) source port on the serverside of the connection (i.e. the SNAT port)&lt;br /&gt;
*ss-server-addr&lt;br /&gt;
**The (server) destination IP address on the serverside of the connection (i.e., the Pool Member address)&lt;br /&gt;
*ss-server-port&lt;br /&gt;
** The (server) destination port on the serverside of the connection (i.e., the Pool Member port)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SHOW VS LOGS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail /var/log/ltm | grep &amp;lt;VS_NAME&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The /var/log/ltm will show the time according to the Time Zone configured while the tmsh show sys log ltm  will show the UTC time.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
== SHOW VS STATISTICS ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# show ltm virtual &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Ltm::Virtual Server: &amp;lt;VS_NAME&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Status&lt;br /&gt;
  Availability     : available&lt;br /&gt;
  State            : enabled&lt;br /&gt;
  Reason           : The virtual server is available&lt;br /&gt;
  CMP              : enabled&lt;br /&gt;
  CMP Mode         : all-cpus&lt;br /&gt;
  Destination      : 1.2.3.4:443&lt;br /&gt;
  PVA Acceleration : none&lt;br /&gt;
&lt;br /&gt;
Traffic                             ClientSide  Ephemeral  General&lt;br /&gt;
  Bits In                                26.2G          0        -&lt;br /&gt;
  Bits Out                              100.2G          0        -&lt;br /&gt;
  Packets In                             10.9M          0        -&lt;br /&gt;
  Packets Out                            16.0M          0        -&lt;br /&gt;
  Current Connections                        0          0        -&lt;br /&gt;
  Maximum Connections                       77          0        -&lt;br /&gt;
  Total Connections                       1.7M          0        -&lt;br /&gt;
  Evicted Connections                        0          0        -&lt;br /&gt;
  Slow Connections Killed                    0          0        -&lt;br /&gt;
  Min Conn Duration/msec                     -          -        2&lt;br /&gt;
  Max Conn Duration/msec                     -          -     1.8M&lt;br /&gt;
  Mean Conn Duration/msec                    -          -        6&lt;br /&gt;
  Total Requests                             -          -        0&lt;br /&gt;
&lt;br /&gt;
SYN Cookies&lt;br /&gt;
  Status                         not-activated&lt;br /&gt;
  Hardware SYN Cookie Instances              0&lt;br /&gt;
  Software SYN Cookie Instances              0&lt;br /&gt;
  Current SYN Cache                          0&lt;br /&gt;
  SYN Cache Overflow                         0&lt;br /&gt;
  Total Software                             0&lt;br /&gt;
  Total Software Accepted                    0&lt;br /&gt;
  Total Software Rejected                    0&lt;br /&gt;
  Total Hardware                             0&lt;br /&gt;
  Total Hardware Accepted                    0&lt;br /&gt;
&lt;br /&gt;
Message Routing Framework                   In        Out&lt;br /&gt;
  Message                                    0          0&lt;br /&gt;
  Request                                    0          0&lt;br /&gt;
  Response                                   0          0&lt;br /&gt;
&lt;br /&gt;
CPU Usage Ratio (%)&lt;br /&gt;
  Last 5 Seconds                             0&lt;br /&gt;
  Last 1 Minute                              0&lt;br /&gt;
  Last 5 Minutes                             0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== USEFUL LINKS ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Command Line Interface (CLI) Guide](https://my.f5.com/manage/s/article/K40033505)&lt;br /&gt;
  - This guide provides an overview of **F5 BIG-IP LTM CLI commands** and their usage, ideal for network administrators working with F5 load balancers.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Troubleshooting and Logs](https://my.f5.com/manage/s/article/K53851362)&lt;br /&gt;
  - A detailed article covering various **troubleshooting techniques** for F5 BIG-IP LTM, including analyzing logs, inspecting performance statistics, and diagnosing issues.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP LTM Configuration Examples](https://my.f5.com/manage/s/article/K28245234)&lt;br /&gt;
  - A collection of useful **configuration examples** for **F5 BIG-IP LTM**. This includes virtual server, pool, SSL, and other common configuration scenarios.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
  - Documentation on **iRules** for customizing traffic handling, load balancing, SSL offloading, and other network-level operations in **F5 BIG-IP LTM**.&lt;br /&gt;
&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
  - The official **F5 Knowledge Base** for accessing articles, troubleshooting tips, and frequently asked questions (FAQs) related to **F5 BIG-IP** products.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP System Performance Monitoring](https://techdocs.f5.com/t/d/s/article/K85011825)&lt;br /&gt;
  - Information on how to monitor the **performance** of your **F5 BIG-IP LTM** system, including system stats, metrics, and performance tuning guidelines.&lt;br /&gt;
&lt;br /&gt;
* [F5 SSL Offloading Configuration](https://techdocs.f5.com/t/d/s/article/K15153940)&lt;br /&gt;
  - Step-by-step guide for **SSL offloading** using **F5 BIG-IP LTM**, which helps optimize the decryption of HTTPS traffic.&lt;br /&gt;
&lt;br /&gt;
* [F5 iHealth](https://ihealth.f5.com/)&lt;br /&gt;
  - A diagnostic tool for **F5 BIG-IP LTM** devices to perform system health checks, collect logs, and get recommendations for system optimization.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP SSL Certificate Management](https://techdocs.f5.com/t/d/s/article/K11841)&lt;br /&gt;
  - This article provides information on managing **SSL certificates** for **F5 BIG-IP LTM**, including importing, configuring, and troubleshooting SSL certificates.&lt;br /&gt;
&lt;br /&gt;
* [F5 DevCentral Community](https://community.f5.com/)&lt;br /&gt;
  - **F5 DevCentral** is an active online community for F5 professionals, offering forums, discussions, and resources about **F5 BIG-IP LTM** configuration, troubleshooting, and best practices.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP High Availability and Failover Configuration](https://support.f5.com/csp/article/K11897)&lt;br /&gt;
  - An essential guide on setting up **high availability** and **failover** between F5 devices, ensuring reliability and continuous service availability.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Latest Release Notes](https://support.f5.com/csp/article/K13008)&lt;br /&gt;
  - The **release notes** for **F5 BIG-IP LTM** provide important information about new features, bug fixes, and changes in each software version.&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Examples and Best Practices](https://devcentral.f5.com/s/articles/best-practices-for-irules-13372)&lt;br /&gt;
  - A helpful resource with practical **iRule examples** and best practices to efficiently handle traffic manipulation and load balancing on F5 devices.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1129</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1129"/>
		<updated>2026-02-18T10:03:18Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Important Notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
**Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
**Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1128</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1128"/>
		<updated>2026-02-18T10:02:57Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Verify Cluster Synchronization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
- **Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- **Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
- **Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1127</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1127"/>
		<updated>2026-02-18T10:02:38Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Break the Failover */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
- **Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- **Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
- **Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1126</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1126"/>
		<updated>2026-02-18T10:02:26Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Check Cluster Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
- **Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- **Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
- **Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1125</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1125"/>
		<updated>2026-02-18T10:02:01Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;nowiki&amp;gt;show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
- **Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- **Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
- **Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1124</id>
		<title>CISCO-ASA - Cluster Factory Reset</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=CISCO-ASA_-_Cluster_Factory_Reset&amp;diff=1124"/>
		<updated>2026-02-18T10:00:56Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == Removing Contexts in a Cisco ASA Cluster ==  In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below.   === Steps to Remove a Context ===  1. **Access the ASA CLI**:    - Log in to the ASA device using S...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Removing Contexts in a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
In a **multi-context configuration** on Cisco ASA devices, each context functions as a virtual firewall with its own configuration, interfaces, and policies. If you need to remove a context from your ASA, follow the steps below. &lt;br /&gt;
&lt;br /&gt;
=== Steps to Remove a Context ===&lt;br /&gt;
&lt;br /&gt;
1. **Access the ASA CLI**:&lt;br /&gt;
   - Log in to the ASA device using SSH, console, or other access methods.&lt;br /&gt;
&lt;br /&gt;
2. **Enter Privileged Exec Mode**:&lt;br /&gt;
   - Once logged in, enter privileged exec mode:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. **Enter Configuration Mode**:&lt;br /&gt;
   - Enter configuration mode to make changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config terminal&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
4. **Switch to System Context**:&lt;br /&gt;
   - Since you are working in a multi-context setup, you need to enter the **system context** (the default context):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. **Remove the Context**:&lt;br /&gt;
   - Use the following command to remove the context:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context &amp;lt;context_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
- If the context name is `Sales`, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
no context Sales&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
6. **Verify the Removal**:&lt;br /&gt;
   - After the context is removed, verify it has been deleted using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
show context&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   This will list all remaining contexts. The context you removed should no longer appear.&lt;br /&gt;
&lt;br /&gt;
7. **Return to the System Context**:&lt;br /&gt;
   - If you were previously in a specific context, return to the system context using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
changeto system&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. **Save the Configuration**:&lt;br /&gt;
   - Once the context is removed, save the configuration to ensure changes are persistent:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write memory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Removing a Context ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# changeto system&lt;br /&gt;
ASA(system)# no context Sales&lt;br /&gt;
ASA(system)# show context&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Factory Reset of a Cisco ASA Cluster ==&lt;br /&gt;
&lt;br /&gt;
Performing a factory reset on a **Cisco ASA Cluster** (e.g., ASA 5500-X or other models) will erase all configurations, including interfaces, routing, VPN settings, and security policies, returning the device to its default settings. Follow the steps below to reset both the active and standby units of an ASA cluster.&lt;br /&gt;
&lt;br /&gt;
=== Steps for Factory Reset of a Cisco ASA Cluster ===&lt;br /&gt;
&lt;br /&gt;
==== Access the ASA CLI ====&lt;br /&gt;
Log in to each ASA unit in the cluster (both active and standby units) using SSH, console, or any other method.&lt;br /&gt;
&lt;br /&gt;
==== Check Cluster Configuration ====&lt;br /&gt;
Before performing the reset, check the cluster status to ensure you are on the correct member:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;nowiki&amp;gt;show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Break the Failover ====&lt;br /&gt;
To reset the cluster configuration, you must first break the failover between the active and standby units. Enter the following command on both units:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;no failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Erase the Configuration ====&lt;br /&gt;
Erase the **startup configuration** on both units using:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
write erase&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Or alternatively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
erase startup-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will remove all configuration settings.&lt;br /&gt;
&lt;br /&gt;
==== Reboot the ASA Unit ====&lt;br /&gt;
After erasing the configuration, reboot the ASA unit to apply the changes:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reload&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When prompted to save the configuration, select **No**, as you just erased it.&lt;br /&gt;
&lt;br /&gt;
==== Repeat for Standby Unit ====&lt;br /&gt;
After performing the reset on the active unit, repeat the same steps on the **standby unit** in the cluster.&lt;br /&gt;
&lt;br /&gt;
==== Re-enable Failover ====&lt;br /&gt;
Once both units are factory reset and rebooted, re-enable the failover process to restore the cluster:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verify Cluster Synchronization ====&lt;br /&gt;
After re-enabling failover, verify that both units in the cluster are synchronized and that the failover is working correctly:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
show failover&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example CLI Session for Factory Reset ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA# enable&lt;br /&gt;
Password: ********&lt;br /&gt;
&lt;br /&gt;
ASA# config terminal&lt;br /&gt;
ASA(config)# no failover&lt;br /&gt;
ASA(config)# write erase&lt;br /&gt;
ASA(config)# reload&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After performing the reset on both the active and standby units, re-enable failover and check synchronization:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ASA(config)# failover&lt;br /&gt;
ASA(config)# show failover&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Notes ==&lt;br /&gt;
&lt;br /&gt;
- **Backup Configuration**: Always **backup your configuration** before performing a factory reset or removing contexts. Use the following command to back up the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
copy running-config tftp://&amp;lt;TFTP_server_IP&amp;gt;/backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- **Impact**: Resetting the device or removing contexts will erase all configurations associated with the context or unit, including interfaces, security policies, routing, and VPN configurations.&lt;br /&gt;
&lt;br /&gt;
- **Multi-Context Licensing**: Ensure that your device is licensed for multi-context operation if you plan to use multiple contexts. The reset or removal of contexts will impact how interfaces and resources are allocated.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [Cisco ASA Documentation](https://www.cisco.com/c/en/us/support/security/asa-5500-series-next-generation-firewalls/tsd-products-support-series-home.html)&lt;br /&gt;
* [Cisco ASA Configuration Guides](https://www.cisco.com/c/en/us/td/docs/security/asa/)&lt;br /&gt;
* [Cisco Knowledge Base](https://support.cisco.com/)&lt;br /&gt;
* [Cisco ASA Failover Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa914/configuration-guide/firewall/intro-failover.html)&lt;br /&gt;
* [Cisco ASA Cluster Configuration](https://www.cisco.com/c/en/us/td/docs/security/asa/asa92/configuration/firewall-cluster.html)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1123</id>
		<title>F5 BIG-IP - iRules</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1123"/>
		<updated>2026-02-18T08:14:31Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Viewing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing All iRules ===&lt;br /&gt;
To display all configured iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists all iRules on the system along with their current status.&lt;br /&gt;
&lt;br /&gt;
=== Viewing a Specific iRule ===&lt;br /&gt;
To view a specific iRule by name, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the full content of the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
== Creating and Managing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Creating a New iRule ===&lt;br /&gt;
To create a new iRule, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This creates an iRule named `myrule` that logs an entry for each HTTP request received.&lt;br /&gt;
&lt;br /&gt;
=== Modifying an Existing iRule ===&lt;br /&gt;
To modify an existing iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;new_iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request with URI: [HTTP::uri]&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This modifies the `myrule` iRule to log the URI of each HTTP request.&lt;br /&gt;
&lt;br /&gt;
=== Deleting an iRule ===&lt;br /&gt;
To delete an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This deletes the `myrule` iRule from the system.&lt;br /&gt;
&lt;br /&gt;
== iRule Syntax and Components ==&lt;br /&gt;
&lt;br /&gt;
### Basic iRule Syntax&lt;br /&gt;
&lt;br /&gt;
An iRule consists of **event blocks**, which trigger actions based on specific traffic events. The basic syntax of an iRule looks like this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when &amp;lt;event&amp;gt; {&lt;br /&gt;
    &amp;lt;action&amp;gt;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when CLIENTSSL_HANDSHAKE {&lt;br /&gt;
    log local0. &amp;quot;SSL handshake initiated&amp;quot;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
### Common Events in iRules&lt;br /&gt;
&lt;br /&gt;
- **HTTP_REQUEST**: Triggered when an HTTP request is received.&lt;br /&gt;
- **HTTP_RESPONSE**: Triggered when an HTTP response is generated.&lt;br /&gt;
- **CLIENTSSL_HANDSHAKE**: Triggered during the SSL handshake.&lt;br /&gt;
- **TCP_REQUEST**: Triggered for TCP traffic.&lt;br /&gt;
&lt;br /&gt;
### Common Actions in iRules&lt;br /&gt;
&lt;br /&gt;
- **log**: Logs information to the system log.&lt;br /&gt;
- **reject**: Rejects the connection.&lt;br /&gt;
- **forward**: Forwards the traffic to the next step.&lt;br /&gt;
- **pool**: Directs the traffic to a specific pool or server.&lt;br /&gt;
&lt;br /&gt;
### Example iRule for HTTP Request Logging&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when HTTP_REQUEST {&lt;br /&gt;
    log local0. &amp;quot;Received HTTP request: [HTTP::uri]&amp;quot;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This iRule logs each HTTP request&#039;s URI to the system log.&lt;br /&gt;
&lt;br /&gt;
== Assigning iRules to Virtual Servers ==&lt;br /&gt;
&lt;br /&gt;
To assign an iRule to a virtual server, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules add { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules add { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command adds the `myrule` iRule to the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
=== Removing an iRule from a Virtual Server ===&lt;br /&gt;
To remove an iRule from a virtual server, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules delete { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules delete { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This removes the `myrule` iRule from the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing iRule Logs ===&lt;br /&gt;
To view the logs generated by iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail -f /var/log/ltm&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the log entries created by iRules on the system.&lt;br /&gt;
&lt;br /&gt;
=== Checking iRule Syntax ===&lt;br /&gt;
Before deploying an iRule, it is important to ensure that there are no syntax errors. To validate the syntax of an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt; syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command checks for syntax errors in the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
=== Debugging iRules ===&lt;br /&gt;
For debugging iRules, use the **log** command to print debug messages to the system log. You can enable verbose logging to track the execution flow of the iRule:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
log local0. &amp;quot;Debugging iRule execution: [HTTP::uri]&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, you can use the following command to increase log verbosity:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify /sys log-config level debug&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will increase the level of logging on the system, helping to debug any issues with iRule execution.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 BIG-IP iRule Examples](https://techdocs.f5.com/)&lt;br /&gt;
* [F5 iRule Tutorials](https://community.f5.com/)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 Downloads](https://downloads.f5.com/)&lt;br /&gt;
* [F5 iRules GitHub Repository](https://github.com/f5devcentral)&lt;br /&gt;
* [F5 iRules YouTube Channel](https://www.youtube.com/user/F5Networks)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1122</id>
		<title>F5 BIG-IP - iRules</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1122"/>
		<updated>2026-02-18T08:14:12Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* iRule Syntax and Components */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Viewing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing All iRules ===&lt;br /&gt;
To display all configured iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists all iRules on the system along with their current status.&lt;br /&gt;
&lt;br /&gt;
=== Viewing a Specific iRule ===&lt;br /&gt;
To view a specific iRule by name, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the full content of the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
== Creating and Managing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Creating a New iRule ===&lt;br /&gt;
To create a new iRule, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This creates an iRule named `myrule` that logs an entry for each HTTP request received.&lt;br /&gt;
&lt;br /&gt;
=== Modifying an Existing iRule ===&lt;br /&gt;
To modify an existing iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;new_iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request with URI: [HTTP::uri]&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This modifies the `myrule` iRule to log the URI of each HTTP request.&lt;br /&gt;
&lt;br /&gt;
=== Deleting an iRule ===&lt;br /&gt;
To delete an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This deletes the `myrule` iRule from the system.&lt;br /&gt;
&lt;br /&gt;
== iRule Syntax and Components ==&lt;br /&gt;
&lt;br /&gt;
### Basic iRule Syntax&lt;br /&gt;
&lt;br /&gt;
An iRule consists of **event blocks**, which trigger actions based on specific traffic events. The basic syntax of an iRule looks like this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when &amp;lt;event&amp;gt; {&lt;br /&gt;
    &amp;lt;action&amp;gt;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when CLIENTSSL_HANDSHAKE {&lt;br /&gt;
    log local0. &amp;quot;SSL handshake initiated&amp;quot;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
### Common Events in iRules&lt;br /&gt;
&lt;br /&gt;
- **HTTP_REQUEST**: Triggered when an HTTP request is received.&lt;br /&gt;
- **HTTP_RESPONSE**: Triggered when an HTTP response is generated.&lt;br /&gt;
- **CLIENTSSL_HANDSHAKE**: Triggered during the SSL handshake.&lt;br /&gt;
- **TCP_REQUEST**: Triggered for TCP traffic.&lt;br /&gt;
&lt;br /&gt;
### Common Actions in iRules&lt;br /&gt;
&lt;br /&gt;
- **log**: Logs information to the system log.&lt;br /&gt;
- **reject**: Rejects the connection.&lt;br /&gt;
- **forward**: Forwards the traffic to the next step.&lt;br /&gt;
- **pool**: Directs the traffic to a specific pool or server.&lt;br /&gt;
&lt;br /&gt;
### Example iRule for HTTP Request Logging&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
when HTTP_REQUEST {&lt;br /&gt;
    log local0. &amp;quot;Received HTTP request: [HTTP::uri]&amp;quot;&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This iRule logs each HTTP request&#039;s URI to the system log.&lt;br /&gt;
&lt;br /&gt;
== Assigning iRules to Virtual Servers ==&lt;br /&gt;
&lt;br /&gt;
To assign an iRule to a virtual server, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules add { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules add { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command adds the `myrule` iRule to the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
=== Removing an iRule from a Virtual Server ===&lt;br /&gt;
To remove an iRule from a virtual server, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules delete { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules delete { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This removes the `myrule` iRule from the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing iRule Logs ===&lt;br /&gt;
To view the logs generated by iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail -f /var/log/ltm&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the log entries created by iRules on the system.&lt;br /&gt;
&lt;br /&gt;
=== Checking iRule Syntax ===&lt;br /&gt;
Before deploying an iRule, it is important to ensure that there are no syntax errors. To validate the syntax of an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt; syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command checks for syntax errors in the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
=== Debugging iRules ===&lt;br /&gt;
For debugging iRules, use the **log** command to print debug messages to the system log. You can enable verbose logging to track the execution flow of the iRule:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
log local0. &amp;quot;Debugging iRule execution: [HTTP::uri]&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, you can use the following command to increase log verbosity:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify /sys log-config level debug&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will increase the level of logging on the system, helping to debug any issues with iRule execution.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 BIG-IP iRule Examples](https://techdocs.f5.com/)&lt;br /&gt;
* [F5 iRule Tutorials](https://community.f5.com/)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 Downloads](https://downloads.f5.com/)&lt;br /&gt;
* [F5 iRules GitHub Repository](https://github.com/f5devcentral)&lt;br /&gt;
* [F5 iRules YouTube Channel](https://www.youtube.com/user/F5Networks)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1121</id>
		<title>F5 BIG-IP - iRules</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1121"/>
		<updated>2026-02-18T08:13:44Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Viewing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing All iRules ===&lt;br /&gt;
To display all configured iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists all iRules on the system along with their current status.&lt;br /&gt;
&lt;br /&gt;
=== Viewing a Specific iRule ===&lt;br /&gt;
To view a specific iRule by name, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the full content of the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
== Creating and Managing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Creating a New iRule ===&lt;br /&gt;
To create a new iRule, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This creates an iRule named `myrule` that logs an entry for each HTTP request received.&lt;br /&gt;
&lt;br /&gt;
=== Modifying an Existing iRule ===&lt;br /&gt;
To modify an existing iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;new_iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request with URI: [HTTP::uri]&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This modifies the `myrule` iRule to log the URI of each HTTP request.&lt;br /&gt;
&lt;br /&gt;
=== Deleting an iRule ===&lt;br /&gt;
To delete an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh delete ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This deletes the `myrule` iRule from the system.&lt;br /&gt;
&lt;br /&gt;
== iRule Syntax and Components ==&lt;br /&gt;
&lt;br /&gt;
### Basic iRule Syntax&lt;br /&gt;
&lt;br /&gt;
An iRule consists of **event blocks**, which trigger actions based on specific traffic events. The basic syntax of an iRule looks like this:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
when &amp;lt;event&amp;gt; {&lt;br /&gt;
    &amp;lt;action&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
when CLIENTSSL_HANDSHAKE {&lt;br /&gt;
    log local0. &amp;quot;SSL handshake initiated&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
### Common Events in iRules&lt;br /&gt;
&lt;br /&gt;
- **HTTP_REQUEST**: Triggered when an HTTP request is received.&lt;br /&gt;
- **HTTP_RESPONSE**: Triggered when an HTTP response is generated.&lt;br /&gt;
- **CLIENTSSL_HANDSHAKE**: Triggered during the SSL handshake.&lt;br /&gt;
- **TCP_REQUEST**: Triggered for TCP traffic.&lt;br /&gt;
&lt;br /&gt;
### Common Actions in iRules&lt;br /&gt;
&lt;br /&gt;
- **log**: Logs information to the system log.&lt;br /&gt;
- **reject**: Rejects the connection.&lt;br /&gt;
- **forward**: Forwards the traffic to the next step.&lt;br /&gt;
- **pool**: Directs the traffic to a specific pool or server.&lt;br /&gt;
&lt;br /&gt;
### Example iRule for HTTP Request Logging&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
when HTTP_REQUEST {&lt;br /&gt;
    log local0. &amp;quot;Received HTTP request: [HTTP::uri]&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This iRule logs each HTTP request&#039;s URI to the system log.&lt;br /&gt;
&lt;br /&gt;
== Assigning iRules to Virtual Servers ==&lt;br /&gt;
&lt;br /&gt;
To assign an iRule to a virtual server, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules add { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules add { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command adds the `myrule` iRule to the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
=== Removing an iRule from a Virtual Server ===&lt;br /&gt;
To remove an iRule from a virtual server, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules delete { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual my_virtual_server rules delete { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This removes the `myrule` iRule from the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing iRule Logs ===&lt;br /&gt;
To view the logs generated by iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail -f /var/log/ltm&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the log entries created by iRules on the system.&lt;br /&gt;
&lt;br /&gt;
=== Checking iRule Syntax ===&lt;br /&gt;
Before deploying an iRule, it is important to ensure that there are no syntax errors. To validate the syntax of an iRule, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule &amp;lt;iRule_name&amp;gt; syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm rule myrule syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command checks for syntax errors in the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
=== Debugging iRules ===&lt;br /&gt;
For debugging iRules, use the **log** command to print debug messages to the system log. You can enable verbose logging to track the execution flow of the iRule:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
log local0. &amp;quot;Debugging iRule execution: [HTTP::uri]&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, you can use the following command to increase log verbosity:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify /sys log-config level debug&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will increase the level of logging on the system, helping to debug any issues with iRule execution.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 BIG-IP iRule Examples](https://techdocs.f5.com/)&lt;br /&gt;
* [F5 iRule Tutorials](https://community.f5.com/)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 Downloads](https://downloads.f5.com/)&lt;br /&gt;
* [F5 iRules GitHub Repository](https://github.com/f5devcentral)&lt;br /&gt;
* [F5 iRules YouTube Channel](https://www.youtube.com/user/F5Networks)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1120</id>
		<title>F5 BIG-IP - iRules</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_iRules&amp;diff=1120"/>
		<updated>2026-02-18T08:12:57Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == Viewing iRules ==  === Viewing All iRules === To display all configured iRules, use the following command:  &amp;lt;nowiki&amp;gt;tmsh show ltm rule&amp;lt;/nowiki&amp;gt;  This command lists all iRules on the system along with their current status.  === Viewing a Specific iRule === To view a specific iRule by name, use:  &amp;lt;nowiki&amp;gt;tmsh show ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;  Example: &amp;lt;nowiki&amp;gt;tmsh show lt...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Viewing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing All iRules ===&lt;br /&gt;
To display all configured iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh show ltm rule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists all iRules on the system along with their current status.&lt;br /&gt;
&lt;br /&gt;
=== Viewing a Specific iRule ===&lt;br /&gt;
To view a specific iRule by name, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh show ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh show ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the full content of the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
== Creating and Managing iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Creating a New iRule ===&lt;br /&gt;
To create a new iRule, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh create ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh create ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This creates an iRule named `myrule` that logs an entry for each HTTP request received.&lt;br /&gt;
&lt;br /&gt;
=== Modifying an Existing iRule ===&lt;br /&gt;
To modify an existing iRule, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm rule &amp;lt;iRule_name&amp;gt; { &amp;lt;new_iRule_script&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm rule myrule { when HTTP_REQUEST { log local0. &amp;quot;Received HTTP request with URI: [HTTP::uri]&amp;quot; } }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This modifies the `myrule` iRule to log the URI of each HTTP request.&lt;br /&gt;
&lt;br /&gt;
=== Deleting an iRule ===&lt;br /&gt;
To delete an iRule, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh delete ltm rule &amp;lt;iRule_name&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh delete ltm rule myrule&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This deletes the `myrule` iRule from the system.&lt;br /&gt;
&lt;br /&gt;
== iRule Syntax and Components ==&lt;br /&gt;
&lt;br /&gt;
### Basic iRule Syntax&lt;br /&gt;
&lt;br /&gt;
An iRule consists of **event blocks**, which trigger actions based on specific traffic events. The basic syntax of an iRule looks like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
when &amp;lt;event&amp;gt; {&lt;br /&gt;
    &amp;lt;action&amp;gt;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
when CLIENTSSL_HANDSHAKE {&lt;br /&gt;
    log local0. &amp;quot;SSL handshake initiated&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
### Common Events in iRules&lt;br /&gt;
&lt;br /&gt;
- **HTTP_REQUEST**: Triggered when an HTTP request is received.&lt;br /&gt;
- **HTTP_RESPONSE**: Triggered when an HTTP response is generated.&lt;br /&gt;
- **CLIENTSSL_HANDSHAKE**: Triggered during the SSL handshake.&lt;br /&gt;
- **TCP_REQUEST**: Triggered for TCP traffic.&lt;br /&gt;
&lt;br /&gt;
### Common Actions in iRules&lt;br /&gt;
&lt;br /&gt;
- **log**: Logs information to the system log.&lt;br /&gt;
- **reject**: Rejects the connection.&lt;br /&gt;
- **forward**: Forwards the traffic to the next step.&lt;br /&gt;
- **pool**: Directs the traffic to a specific pool or server.&lt;br /&gt;
&lt;br /&gt;
### Example iRule for HTTP Request Logging&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
when HTTP_REQUEST {&lt;br /&gt;
    log local0. &amp;quot;Received HTTP request: [HTTP::uri]&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This iRule logs each HTTP request&#039;s URI to the system log.&lt;br /&gt;
&lt;br /&gt;
== Assigning iRules to Virtual Servers ==&lt;br /&gt;
&lt;br /&gt;
To assign an iRule to a virtual server, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules add { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm virtual my_virtual_server rules add { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command adds the `myrule` iRule to the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
=== Removing an iRule from a Virtual Server ===&lt;br /&gt;
To remove an iRule from a virtual server, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm virtual &amp;lt;vs_name&amp;gt; rules delete { &amp;lt;iRule_name&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify ltm virtual my_virtual_server rules delete { myrule }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This removes the `myrule` iRule from the `my_virtual_server` virtual server.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting iRules ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing iRule Logs ===&lt;br /&gt;
To view the logs generated by iRules, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tail -f /var/log/ltm&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will display the log entries created by iRules on the system.&lt;br /&gt;
&lt;br /&gt;
=== Checking iRule Syntax ===&lt;br /&gt;
Before deploying an iRule, it is important to ensure that there are no syntax errors. To validate the syntax of an iRule, use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh show ltm rule &amp;lt;iRule_name&amp;gt; syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh show ltm rule myrule syntax&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command checks for syntax errors in the `myrule` iRule.&lt;br /&gt;
&lt;br /&gt;
=== Debugging iRules ===&lt;br /&gt;
For debugging iRules, use the **log** command to print debug messages to the system log. You can enable verbose logging to track the execution flow of the iRule:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;log local0. &amp;quot;Debugging iRule execution: [HTTP::uri]&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, you can use the following command to increase log verbosity:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;tmsh modify /sys log-config level debug&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will increase the level of logging on the system, helping to debug any issues with iRule execution.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP iRule Documentation](https://support.f5.com/csp/article/K19240)&lt;br /&gt;
* [F5 BIG-IP iRule Examples](https://techdocs.f5.com/)&lt;br /&gt;
* [F5 iRule Tutorials](https://community.f5.com/)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 Downloads](https://downloads.f5.com/)&lt;br /&gt;
* [F5 iRules GitHub Repository](https://github.com/f5devcentral)&lt;br /&gt;
* [F5 iRules YouTube Channel](https://www.youtube.com/user/F5Networks)&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_CLI_Commands&amp;diff=1119</id>
		<title>F5 BIG-IP - LTM CLI Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=F5_BIG-IP_-_LTM_CLI_Commands&amp;diff=1119"/>
		<updated>2026-02-18T08:11:16Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;   == Viewing System Information == To display system information, including the software version, platform, and other relevant details, use the following command:   &amp;lt;nowiki&amp;gt; tmsh show sys version&amp;lt;/nowiki&amp;gt;  This command will output the software version, platform type, and more.  == Managing Configuration Files == You can list, view, and manage system configuration files. The co...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Viewing System Information ==&lt;br /&gt;
To display system information, including the software version, platform, and other relevant details, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys version&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will output the software version, platform type, and more.&lt;br /&gt;
&lt;br /&gt;
== Managing Configuration Files ==&lt;br /&gt;
You can list, view, and manage system configuration files. The command below displays all configuration files:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh list /sys config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To view a specific configuration file, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show /sys config &amp;lt;filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Viewing System Status ==&lt;br /&gt;
To view the overall status of the system, including all major components, run:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This shows the status of hardware, software, and critical system components.&lt;br /&gt;
&lt;br /&gt;
== Network Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing Network Interfaces ===&lt;br /&gt;
To list the available network interfaces, run:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show net interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command displays all physical interfaces and their status, including throughput and error counts.&lt;br /&gt;
&lt;br /&gt;
=== Configuring Network Interfaces ===&lt;br /&gt;
To configure a specific network interface, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify /net interface &amp;lt;interface_name&amp;gt; mtu &amp;lt;mtu_value&amp;gt; address &amp;lt;ip_address&amp;gt; netmask &amp;lt;netmask_value&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, configuring `eth0` with an MTU of 1500, IP address `192.168.1.10`, and netmask `255.255.255.0` would be:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify /net interface eth0 mtu 1500 address 192.168.1.10 netmask 255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Viewing Routing Information ===&lt;br /&gt;
To show routing information, including routes, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show net route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command outputs the active routes in the routing table.&lt;br /&gt;
&lt;br /&gt;
== LTM (Local Traffic Manager) Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing Pools ===&lt;br /&gt;
To view the configuration and status of load balancing pools, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm pool&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command provides a list of all configured pools, along with their status, members, and other relevant details.&lt;br /&gt;
&lt;br /&gt;
=== Creating and Managing Pools ===&lt;br /&gt;
To create a new pool, the following command can be used:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm pool &amp;lt;pool_name&amp;gt; members add { &amp;lt;ip_address&amp;gt;:&amp;lt;port&amp;gt; }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm pool mypool members add { 192.168.1.20:80 192.168.1.21:80 }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To modify a pool, use the `modify` keyword, and to delete a pool, use the `delete` keyword:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm pool mypool members add { 192.168.1.22:80 }&lt;br /&gt;
tmsh delete ltm pool mypool&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Viewing Virtual Servers ===&lt;br /&gt;
To list the virtual servers and their statuses:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm virtual&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This shows the configured virtual servers, their IP addresses, and their current status.&lt;br /&gt;
&lt;br /&gt;
=== Creating and Managing Virtual Servers ===&lt;br /&gt;
To create a new virtual server, the following command is used:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm virtual &amp;lt;vs_name&amp;gt; destination &amp;lt;vs_ip&amp;gt;:&amp;lt;vs_port&amp;gt; pool &amp;lt;pool_name&amp;gt; profiles add { http }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm virtual myvirtualserver destination 192.168.1.100:80 pool mypool profiles add { http }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To modify or delete a virtual server, use the `modify` and `delete` commands respectively:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh modify ltm virtual myvirtualserver destination 192.168.1.101:80&lt;br /&gt;
tmsh delete ltm virtual myvirtualserver&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SSL Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing SSL Profiles ===&lt;br /&gt;
To display SSL profile configurations, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show ltm profile client-ssl&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists the SSL profiles used by virtual servers for handling encrypted traffic.&lt;br /&gt;
&lt;br /&gt;
=== Creating and Managing SSL Profiles ===&lt;br /&gt;
To create an SSL client profile, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm profile client-ssl &amp;lt;profile_name&amp;gt; cert &amp;lt;cert_file&amp;gt; key &amp;lt;key_file&amp;gt; options &amp;lt;ssl_options&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh create ltm profile client-ssl mysslprofile cert /config/ssl/certs/mycert.crt key /config/ssl/keys/mykey.key options { no-ssl-verify }&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Viewing SSL Certificates ===&lt;br /&gt;
To display SSL certificates:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys crypto cert&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command lists all the certificates installed on the system.&lt;br /&gt;
&lt;br /&gt;
== Traffic and Session Management ==&lt;br /&gt;
&lt;br /&gt;
=== Viewing Active Connections ===&lt;br /&gt;
To view active connections on the system, run:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys connection&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command displays all current connections, including the source and destination IPs, port numbers, and connection states.&lt;br /&gt;
&lt;br /&gt;
=== Managing Sessions ===&lt;br /&gt;
To display the current user sessions, use:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show /sys user session&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command provides a list of active user sessions along with their associated IP addresses.&lt;br /&gt;
&lt;br /&gt;
== System Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
=== Running a Packet Capture ===&lt;br /&gt;
To run a packet capture, the following command can be used:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -i &amp;lt;interface_name&amp;gt; -w /var/tmp/capture.pcap&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, to capture packets on interface `eth0`:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tcpdump -i eth0 -w /var/tmp/capture.pcap&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Logs ==&lt;br /&gt;
To view the system logs, run:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tail -f /var/log/ltm&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command continuously displays logs from the Local Traffic Manager.&lt;br /&gt;
&lt;br /&gt;
=== Viewing System Events ===&lt;br /&gt;
For viewing events logged by the system, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys event&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command shows a list of system events and their details.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Checking System Performance ===&lt;br /&gt;
To check the system&#039;s performance, including CPU and memory usage:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys performance&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display CPU and memory usage, as well as disk and network performance.&lt;br /&gt;
&lt;br /&gt;
=== Checking System Health ===&lt;br /&gt;
To check the health status of various system components:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
tmsh show sys health&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command gives an overview of the system&#039;s health, including hardware status, disk health, and more.&lt;br /&gt;
&lt;br /&gt;
=== Rebooting the System ===&lt;br /&gt;
To reboot the F5 BIG-IP system:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
reboot&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will initiate a system reboot.&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* [F5 BIG-IP Documentation](https://support.f5.com/csp/article/K12820)&lt;br /&gt;
* [F5 BIG-IP Command Line Interface (CLI) Guide](https://techdocs.f5.com/)&lt;br /&gt;
* [F5 Community](https://community.f5.com/)&lt;br /&gt;
* [F5 Knowledge Base](https://support.f5.com/csp/)&lt;br /&gt;
* [F5 Downloads](https://downloads.f5.com/)&lt;br /&gt;
* [F5 Deployment Guide](https://f5.com/products/big-ip)&lt;br /&gt;
* [F5 YouTube Channel](https://www.youtube.com/user/F5Networks)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1118</id>
		<title>ALTEON - Menu Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1118"/>
		<updated>2026-02-18T08:05:13Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Hard Reset (Factory Defaults) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== System Access and Privilege Modes ==&lt;br /&gt;
&lt;br /&gt;
=== User EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Accesses the user EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Privileged EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Switches to the privileged EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exit and Session Termination ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&lt;br /&gt;
/logout&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Hostname Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Banner Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Time and NTP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/timezone UTC 0&lt;br /&gt;
/cfg/system/ntp server 192.168.100.10&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ntp server 10.10.10.5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management IP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Interface and VLAN Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Physical Port Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/enable&lt;br /&gt;
/cfg/network/port 5/disable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 3/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Assign IP Address to Interface ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100&lt;br /&gt;
/cfg/network/vlan 100/name DMZ&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200&lt;br /&gt;
/cfg/network/vlan 200/name INTERNAL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Port Assignment ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/tagged 1&lt;br /&gt;
/cfg/network/vlan 100/untagged 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200/tagged 3&lt;br /&gt;
/cfg/network/vlan 200/untagged 4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Routing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Default Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 192.168.1.1&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Static Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 10.10.0.0/16 192.168.1.254&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== High Availability Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== HA Group Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 1&lt;br /&gt;
/cfg/ha/group 1/peer 10.0.0.2&lt;br /&gt;
/cfg/ha/group 1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 10&lt;br /&gt;
/cfg/ha/group 10/peer 192.168.100.2&lt;br /&gt;
/cfg/ha/group 10/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HA Status Verification ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Server Load Balancing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Real Server Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server WEB1 10.0.1.11/80&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Health Check Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/type http&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/url &amp;quot;/health&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK/type tcp&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Service Group Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group WEB-GRP&lt;br /&gt;
/cfg/slb/group WEB-GRP/add WEB1&lt;br /&gt;
/cfg/slb/group WEB-GRP/method roundrobin&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group APP-GRP&lt;br /&gt;
/cfg/slb/group APP-GRP/add APP1&lt;br /&gt;
/cfg/slb/group APP-GRP/method leastconn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Virtual Server Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server VIP1 203.0.113.10/80&lt;br /&gt;
/cfg/slb/virtual-server VIP1/service WEB-GRP&lt;br /&gt;
/cfg/slb/virtual-server VIP1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS 198.51.100.10/443&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/service APP-GRP&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== SSH Access ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&lt;br /&gt;
/cfg/system/ssh version 2&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== User Account Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user admin password StrongPass! role admin&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management Access Restriction ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 10.10.10.0/255.255.255.0&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring and Logging ==&lt;br /&gt;
&lt;br /&gt;
=== Display Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Interface Monitoring ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&lt;br /&gt;
/cfg/system/show interface port 5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Routing Table Display ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show ip-route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 10.1.1.50&lt;br /&gt;
/cfg/system/logging level info&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 192.168.100.50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration Management ==&lt;br /&gt;
&lt;br /&gt;
=== Save Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Backup Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 10.0.0.50 backup.cfg&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Connectivity Tests ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ping 8.8.8.8&lt;br /&gt;
/cfg/system/traceroute 8.8.8.8&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Verify reachability and routing path.&lt;br /&gt;
&lt;br /&gt;
=== Interface Issues ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check link status, administrative state, and error counters.&lt;br /&gt;
&lt;br /&gt;
=== HA Problems ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Confirm active/standby role and synchronization state.&lt;br /&gt;
&lt;br /&gt;
=== SLB Service Not Responding ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/show group&lt;br /&gt;
/cfg/slb/show real-server&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Verify health check status and server availability.&lt;br /&gt;
&lt;br /&gt;
=== Configuration Not Persisted ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure configuration is saved using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resetting Configuration ==&lt;br /&gt;
&lt;br /&gt;
This chapter outlines the process for resetting the configuration on an **Alteon Application Switch 5208**. There are different methods for resetting the configuration, including clearing all settings, restoring factory defaults, or performing a soft reset.&lt;br /&gt;
&lt;br /&gt;
=== Soft Reset (Reboot) ===&lt;br /&gt;
&lt;br /&gt;
A soft reset allows the switch to reboot without clearing the configuration. It can be used when you need to refresh the system without losing any saved settings.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will reboot the system, retaining all current configurations.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== After Reboot ====  &lt;br /&gt;
Once the switch reboots, you can verify the status with the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display the current state of the system and confirm that the reboot was successful.&lt;br /&gt;
&lt;br /&gt;
=== Hard Reset (Factory Defaults) ===&lt;br /&gt;
&lt;br /&gt;
A **hard reset** restores the switch to its factory default settings. This means that all configurations will be lost, and the switch will revert to the default IP address, hostname, and settings.&lt;br /&gt;
&lt;br /&gt;
To perform a factory reset, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1. Connect to the switch via the **console port** using a terminal client like PuTTY or HyperTerminal.&lt;br /&gt;
2. Power off the switch.&lt;br /&gt;
3. Press and hold the **reset button** on the front panel of the switch.&lt;br /&gt;
4. Power the switch on while still holding the reset button for about **10-15 seconds**.&lt;br /&gt;
5. Release the reset button. The switch will now boot up with factory default settings.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the following command can be used to perform a hard reset via the CLI:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/boot/conf factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command restores the factory default configuration. It erases all user configurations and resets the switch to its out-of-the-box state.&lt;br /&gt;
&lt;br /&gt;
After this process, the switch will require reconfiguration from scratch, including setting the management IP, hostname, and network settings.&lt;br /&gt;
&lt;br /&gt;
==== Verify Reset to Factory Defaults ====&lt;br /&gt;
To confirm that the switch has been reset to factory defaults, you can check the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should show minimal or default configurations such as the default IP address `192.168.1.1`, default hostname, and other initial settings.&lt;br /&gt;
&lt;br /&gt;
=== Resetting Specific Configuration Elements ===&lt;br /&gt;
&lt;br /&gt;
In some cases, you might only need to reset certain elements, such as VLAN configurations or interfaces, rather than the entire system.&lt;br /&gt;
&lt;br /&gt;
==== Reset VLAN Configuration ====&lt;br /&gt;
To remove a specific VLAN configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan &amp;lt;vlan_id&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will reset the specified VLAN to its default settings.&lt;br /&gt;
&lt;br /&gt;
==== Reset Interface Configuration ====&lt;br /&gt;
To reset an individual interface configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port &amp;lt;port_number&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will reset the settings for that particular interface, including IP addresses, VLAN assignments, and other configurations.&lt;br /&gt;
&lt;br /&gt;
=== Clearing the Configuration from the Flash Memory ===&lt;br /&gt;
&lt;br /&gt;
If you want to delete the current configuration completely from the switch&#039;s flash memory, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will completely clear the configuration stored in the flash memory, requiring a reboot to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the configuration is cleared, the system will boot with the default configuration.&lt;br /&gt;
&lt;br /&gt;
=== Important Notes ===&lt;br /&gt;
&lt;br /&gt;
* **Backup Configurations**: Before performing any reset actions, it is crucial to back up your current configuration to avoid losing important settings. Use the following command to back up to a TFTP server:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp &amp;lt;tftp_ip&amp;gt; &amp;lt;backup_filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **Reconfiguration**: After performing a hard reset, you will need to reconfigure the switch from scratch. This includes setting up VLANs, IP addresses, HA groups, and other configurations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* Radware Support Portal — https://support.radware.com/&lt;br /&gt;
* Radware Knowledge Center — https://support.radware.com/Knowledge-Center/&lt;br /&gt;
* Radware Community — https://community.radware.com/&lt;br /&gt;
* Radware Documentation Library — https://www.radware.com/resources/&lt;br /&gt;
* Alteon CLI Reference Guide — https://www.radware.com/products/alteon/&lt;br /&gt;
* Alteon Support Page — https://www.radware.com/products/alteon-support/&lt;br /&gt;
* Alteon Application Switch Technical Documentation — https://www.radware.com/products/alteon/documentation/&lt;br /&gt;
* Alteon Product Page — https://www.radware.com/products/alteon-application-switch/&lt;br /&gt;
* Radware Download Center — https://support.radware.com/Downloads/&lt;br /&gt;
* Radware Knowledge Base — https://support.radware.com/knowledgebase/&lt;br /&gt;
* Radware YouTube Channel (for tutorials) — https://www.youtube.com/user/RadwareOfficial/&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1117</id>
		<title>ALTEON - Menu Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1117"/>
		<updated>2026-02-18T08:04:34Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== System Access and Privilege Modes ==&lt;br /&gt;
&lt;br /&gt;
=== User EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Accesses the user EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Privileged EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Switches to the privileged EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exit and Session Termination ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&lt;br /&gt;
/logout&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Hostname Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Banner Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Time and NTP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/timezone UTC 0&lt;br /&gt;
/cfg/system/ntp server 192.168.100.10&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ntp server 10.10.10.5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management IP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Interface and VLAN Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Physical Port Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/enable&lt;br /&gt;
/cfg/network/port 5/disable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 3/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Assign IP Address to Interface ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100&lt;br /&gt;
/cfg/network/vlan 100/name DMZ&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200&lt;br /&gt;
/cfg/network/vlan 200/name INTERNAL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Port Assignment ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/tagged 1&lt;br /&gt;
/cfg/network/vlan 100/untagged 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200/tagged 3&lt;br /&gt;
/cfg/network/vlan 200/untagged 4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Routing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Default Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 192.168.1.1&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Static Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 10.10.0.0/16 192.168.1.254&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== High Availability Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== HA Group Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 1&lt;br /&gt;
/cfg/ha/group 1/peer 10.0.0.2&lt;br /&gt;
/cfg/ha/group 1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 10&lt;br /&gt;
/cfg/ha/group 10/peer 192.168.100.2&lt;br /&gt;
/cfg/ha/group 10/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HA Status Verification ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Server Load Balancing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Real Server Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server WEB1 10.0.1.11/80&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Health Check Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/type http&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/url &amp;quot;/health&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK/type tcp&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Service Group Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group WEB-GRP&lt;br /&gt;
/cfg/slb/group WEB-GRP/add WEB1&lt;br /&gt;
/cfg/slb/group WEB-GRP/method roundrobin&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group APP-GRP&lt;br /&gt;
/cfg/slb/group APP-GRP/add APP1&lt;br /&gt;
/cfg/slb/group APP-GRP/method leastconn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Virtual Server Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server VIP1 203.0.113.10/80&lt;br /&gt;
/cfg/slb/virtual-server VIP1/service WEB-GRP&lt;br /&gt;
/cfg/slb/virtual-server VIP1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS 198.51.100.10/443&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/service APP-GRP&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== SSH Access ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&lt;br /&gt;
/cfg/system/ssh version 2&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== User Account Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user admin password StrongPass! role admin&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management Access Restriction ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 10.10.10.0/255.255.255.0&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring and Logging ==&lt;br /&gt;
&lt;br /&gt;
=== Display Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Interface Monitoring ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&lt;br /&gt;
/cfg/system/show interface port 5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Routing Table Display ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show ip-route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 10.1.1.50&lt;br /&gt;
/cfg/system/logging level info&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 192.168.100.50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration Management ==&lt;br /&gt;
&lt;br /&gt;
=== Save Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Backup Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 10.0.0.50 backup.cfg&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Connectivity Tests ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ping 8.8.8.8&lt;br /&gt;
/cfg/system/traceroute 8.8.8.8&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Verify reachability and routing path.&lt;br /&gt;
&lt;br /&gt;
=== Interface Issues ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check link status, administrative state, and error counters.&lt;br /&gt;
&lt;br /&gt;
=== HA Problems ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Confirm active/standby role and synchronization state.&lt;br /&gt;
&lt;br /&gt;
=== SLB Service Not Responding ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/show group&lt;br /&gt;
/cfg/slb/show real-server&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Verify health check status and server availability.&lt;br /&gt;
&lt;br /&gt;
=== Configuration Not Persisted ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure configuration is saved using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resetting Configuration ==&lt;br /&gt;
&lt;br /&gt;
This chapter outlines the process for resetting the configuration on an **Alteon Application Switch 5208**. There are different methods for resetting the configuration, including clearing all settings, restoring factory defaults, or performing a soft reset.&lt;br /&gt;
&lt;br /&gt;
=== Soft Reset (Reboot) ===&lt;br /&gt;
&lt;br /&gt;
A soft reset allows the switch to reboot without clearing the configuration. It can be used when you need to refresh the system without losing any saved settings.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will reboot the system, retaining all current configurations.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== After Reboot ====  &lt;br /&gt;
Once the switch reboots, you can verify the status with the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display the current state of the system and confirm that the reboot was successful.&lt;br /&gt;
&lt;br /&gt;
=== Hard Reset (Factory Defaults) ===&lt;br /&gt;
&lt;br /&gt;
A **hard reset** restores the switch to its factory default settings. This means that all configurations will be lost, and the switch will revert to the default IP address, hostname, and settings.&lt;br /&gt;
&lt;br /&gt;
To perform a factory reset, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1. Connect to the switch via the **console port** using a terminal client like PuTTY or HyperTerminal.&lt;br /&gt;
2. Power off the switch.&lt;br /&gt;
3. Press and hold the **reset button** on the front panel of the switch.&lt;br /&gt;
4. Power the switch on while still holding the reset button for about **10-15 seconds**.&lt;br /&gt;
5. Release the reset button. The switch will now boot up with factory default settings.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the following command can be used to perform a hard reset via the CLI:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/boot/conf factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command restores the factory default configuration. It erases all user configurations and resets the switch to its out-of-the-box state.&lt;br /&gt;
&lt;br /&gt;
After this process, the switch will require reconfiguration from scratch, including setting the management IP, hostname, and network settings.&lt;br /&gt;
&lt;br /&gt;
==== Verify Reset to Factory Defaults ====&lt;br /&gt;
To confirm that the switch has been reset to factory defaults, you can check the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should show minimal or default configurations such as the default IP address `192.168.1.1`, default hostname, and other initial settings.&lt;br /&gt;
&lt;br /&gt;
=== Resetting Specific Configuration Elements ===&lt;br /&gt;
&lt;br /&gt;
In some cases, you might only need to reset certain elements, such as VLAN configurations or interfaces, rather than the entire system.&lt;br /&gt;
&lt;br /&gt;
==== Reset VLAN Configuration ====&lt;br /&gt;
To remove a specific VLAN configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan &amp;lt;vlan_id&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will reset the specified VLAN to its default settings.&lt;br /&gt;
&lt;br /&gt;
==== Reset Interface Configuration ====&lt;br /&gt;
To reset an individual interface configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port &amp;lt;port_number&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will reset the settings for that particular interface, including IP addresses, VLAN assignments, and other configurations.&lt;br /&gt;
&lt;br /&gt;
=== Clearing the Configuration from the Flash Memory ===&lt;br /&gt;
&lt;br /&gt;
If you want to delete the current configuration completely from the switch&#039;s flash memory, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will completely clear the configuration stored in the flash memory, requiring a reboot to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the configuration is cleared, the system will boot with the default configuration.&lt;br /&gt;
&lt;br /&gt;
=== Important Notes ===&lt;br /&gt;
&lt;br /&gt;
* **Backup Configurations**: Before performing any reset actions, it is crucial to back up your current configuration to avoid losing important settings. Use the following command to back up to a TFTP server:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp &amp;lt;tftp_ip&amp;gt; &amp;lt;backup_filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **Reconfiguration**: After performing a hard reset, you will need to reconfigure the switch from scratch. This includes setting up VLANs, IP addresses, HA groups, and other configurations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* Radware Support Portal — https://support.radware.com/&lt;br /&gt;
* Radware Knowledge Center — https://support.radware.com/Knowledge-Center/&lt;br /&gt;
* Radware Community — https://community.radware.com/&lt;br /&gt;
* Radware Documentation Library — https://www.radware.com/resources/&lt;br /&gt;
* Alteon CLI Reference Guide — https://www.radware.com/products/alteon/&lt;br /&gt;
* Alteon Support Page — https://www.radware.com/products/alteon-support/&lt;br /&gt;
* Alteon Application Switch Technical Documentation — https://www.radware.com/products/alteon/documentation/&lt;br /&gt;
* Alteon Product Page — https://www.radware.com/products/alteon-application-switch/&lt;br /&gt;
* Radware Download Center — https://support.radware.com/Downloads/&lt;br /&gt;
* Radware Knowledge Base — https://support.radware.com/knowledgebase/&lt;br /&gt;
* Radware YouTube Channel (for tutorials) — https://www.youtube.com/user/RadwareOfficial/&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1116</id>
		<title>ALTEON - Menu Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1116"/>
		<updated>2026-02-18T08:04:17Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== System Access and Privilege Modes ==&lt;br /&gt;
&lt;br /&gt;
=== User EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Accesses the user EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Privileged EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Switches to the privileged EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Exit and Session Termination ====&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&lt;br /&gt;
/logout&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Hostname Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Banner Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Time and NTP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/timezone UTC 0&lt;br /&gt;
/cfg/system/ntp server 192.168.100.10&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ntp server 10.10.10.5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management IP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Interface and VLAN Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Physical Port Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/enable&lt;br /&gt;
/cfg/network/port 5/disable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 3/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Assign IP Address to Interface ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100&lt;br /&gt;
/cfg/network/vlan 100/name DMZ&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200&lt;br /&gt;
/cfg/network/vlan 200/name INTERNAL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Port Assignment ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/tagged 1&lt;br /&gt;
/cfg/network/vlan 100/untagged 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200/tagged 3&lt;br /&gt;
/cfg/network/vlan 200/untagged 4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Routing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Default Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 192.168.1.1&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Static Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 10.10.0.0/16 192.168.1.254&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== High Availability Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== HA Group Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 1&lt;br /&gt;
/cfg/ha/group 1/peer 10.0.0.2&lt;br /&gt;
/cfg/ha/group 1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 10&lt;br /&gt;
/cfg/ha/group 10/peer 192.168.100.2&lt;br /&gt;
/cfg/ha/group 10/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HA Status Verification ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Server Load Balancing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Real Server Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server WEB1 10.0.1.11/80&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Health Check Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/type http&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/url &amp;quot;/health&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK/type tcp&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Service Group Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group WEB-GRP&lt;br /&gt;
/cfg/slb/group WEB-GRP/add WEB1&lt;br /&gt;
/cfg/slb/group WEB-GRP/method roundrobin&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group APP-GRP&lt;br /&gt;
/cfg/slb/group APP-GRP/add APP1&lt;br /&gt;
/cfg/slb/group APP-GRP/method leastconn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Virtual Server Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server VIP1 203.0.113.10/80&lt;br /&gt;
/cfg/slb/virtual-server VIP1/service WEB-GRP&lt;br /&gt;
/cfg/slb/virtual-server VIP1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS 198.51.100.10/443&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/service APP-GRP&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== SSH Access ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&lt;br /&gt;
/cfg/system/ssh version 2&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== User Account Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user admin password StrongPass! role admin&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management Access Restriction ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 10.10.10.0/255.255.255.0&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring and Logging ==&lt;br /&gt;
&lt;br /&gt;
=== Display Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Interface Monitoring ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&lt;br /&gt;
/cfg/system/show interface port 5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Routing Table Display ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show ip-route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 10.1.1.50&lt;br /&gt;
/cfg/system/logging level info&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 192.168.100.50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration Management ==&lt;br /&gt;
&lt;br /&gt;
=== Save Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Backup Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 10.0.0.50 backup.cfg&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Connectivity Tests ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ping 8.8.8.8&lt;br /&gt;
/cfg/system/traceroute 8.8.8.8&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Verify reachability and routing path.&lt;br /&gt;
&lt;br /&gt;
=== Interface Issues ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check link status, administrative state, and error counters.&lt;br /&gt;
&lt;br /&gt;
=== HA Problems ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Confirm active/standby role and synchronization state.&lt;br /&gt;
&lt;br /&gt;
=== SLB Service Not Responding ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/show group&lt;br /&gt;
/cfg/slb/show real-server&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Verify health check status and server availability.&lt;br /&gt;
&lt;br /&gt;
=== Configuration Not Persisted ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure configuration is saved using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resetting Configuration ==&lt;br /&gt;
&lt;br /&gt;
This chapter outlines the process for resetting the configuration on an **Alteon Application Switch 5208**. There are different methods for resetting the configuration, including clearing all settings, restoring factory defaults, or performing a soft reset.&lt;br /&gt;
&lt;br /&gt;
=== Soft Reset (Reboot) ===&lt;br /&gt;
&lt;br /&gt;
A soft reset allows the switch to reboot without clearing the configuration. It can be used when you need to refresh the system without losing any saved settings.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will reboot the system, retaining all current configurations.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== After Reboot ====  &lt;br /&gt;
Once the switch reboots, you can verify the status with the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display the current state of the system and confirm that the reboot was successful.&lt;br /&gt;
&lt;br /&gt;
=== Hard Reset (Factory Defaults) ===&lt;br /&gt;
&lt;br /&gt;
A **hard reset** restores the switch to its factory default settings. This means that all configurations will be lost, and the switch will revert to the default IP address, hostname, and settings.&lt;br /&gt;
&lt;br /&gt;
To perform a factory reset, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1. Connect to the switch via the **console port** using a terminal client like PuTTY or HyperTerminal.&lt;br /&gt;
2. Power off the switch.&lt;br /&gt;
3. Press and hold the **reset button** on the front panel of the switch.&lt;br /&gt;
4. Power the switch on while still holding the reset button for about **10-15 seconds**.&lt;br /&gt;
5. Release the reset button. The switch will now boot up with factory default settings.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the following command can be used to perform a hard reset via the CLI:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;/boot/conf factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command restores the factory default configuration. It erases all user configurations and resets the switch to its out-of-the-box state.&lt;br /&gt;
&lt;br /&gt;
After this process, the switch will require reconfiguration from scratch, including setting the management IP, hostname, and network settings.&lt;br /&gt;
&lt;br /&gt;
==== Verify Reset to Factory Defaults ====&lt;br /&gt;
To confirm that the switch has been reset to factory defaults, you can check the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should show minimal or default configurations such as the default IP address `192.168.1.1`, default hostname, and other initial settings.&lt;br /&gt;
&lt;br /&gt;
=== Resetting Specific Configuration Elements ===&lt;br /&gt;
&lt;br /&gt;
In some cases, you might only need to reset certain elements, such as VLAN configurations or interfaces, rather than the entire system.&lt;br /&gt;
&lt;br /&gt;
==== Reset VLAN Configuration ====&lt;br /&gt;
To remove a specific VLAN configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan &amp;lt;vlan_id&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will reset the specified VLAN to its default settings.&lt;br /&gt;
&lt;br /&gt;
==== Reset Interface Configuration ====&lt;br /&gt;
To reset an individual interface configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port &amp;lt;port_number&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will reset the settings for that particular interface, including IP addresses, VLAN assignments, and other configurations.&lt;br /&gt;
&lt;br /&gt;
=== Clearing the Configuration from the Flash Memory ===&lt;br /&gt;
&lt;br /&gt;
If you want to delete the current configuration completely from the switch&#039;s flash memory, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will completely clear the configuration stored in the flash memory, requiring a reboot to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the configuration is cleared, the system will boot with the default configuration.&lt;br /&gt;
&lt;br /&gt;
=== Important Notes ===&lt;br /&gt;
&lt;br /&gt;
* **Backup Configurations**: Before performing any reset actions, it is crucial to back up your current configuration to avoid losing important settings. Use the following command to back up to a TFTP server:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp &amp;lt;tftp_ip&amp;gt; &amp;lt;backup_filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **Reconfiguration**: After performing a hard reset, you will need to reconfigure the switch from scratch. This includes setting up VLANs, IP addresses, HA groups, and other configurations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* Radware Support Portal — https://support.radware.com/&lt;br /&gt;
* Radware Knowledge Center — https://support.radware.com/Knowledge-Center/&lt;br /&gt;
* Radware Community — https://community.radware.com/&lt;br /&gt;
* Radware Documentation Library — https://www.radware.com/resources/&lt;br /&gt;
* Alteon CLI Reference Guide — https://www.radware.com/products/alteon/&lt;br /&gt;
* Alteon Support Page — https://www.radware.com/products/alteon-support/&lt;br /&gt;
* Alteon Application Switch Technical Documentation — https://www.radware.com/products/alteon/documentation/&lt;br /&gt;
* Alteon Product Page — https://www.radware.com/products/alteon-application-switch/&lt;br /&gt;
* Radware Download Center — https://support.radware.com/Downloads/&lt;br /&gt;
* Radware Knowledge Base — https://support.radware.com/knowledgebase/&lt;br /&gt;
* Radware YouTube Channel (for tutorials) — https://www.youtube.com/user/RadwareOfficial/&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1115</id>
		<title>ALTEON - Menu Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1115"/>
		<updated>2026-02-18T08:00:50Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== System Access and Privilege Modes ==&lt;br /&gt;
&lt;br /&gt;
=== User EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Accesses the user EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Privileged EXEC Mode ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Switches to the privileged EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Exit and Session Termination ====&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&lt;br /&gt;
/logout&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Hostname Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Banner Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Time and NTP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/timezone UTC 0&lt;br /&gt;
/cfg/system/ntp server 192.168.100.10&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ntp server 10.10.10.5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management IP Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Interface and VLAN Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Physical Port Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/enable&lt;br /&gt;
/cfg/network/port 5/disable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 3/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Assign IP Address to Interface ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100&lt;br /&gt;
/cfg/network/vlan 100/name DMZ&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200&lt;br /&gt;
/cfg/network/vlan 200/name INTERNAL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Port Assignment ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/tagged 1&lt;br /&gt;
/cfg/network/vlan 100/untagged 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200/tagged 3&lt;br /&gt;
/cfg/network/vlan 200/untagged 4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Routing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Default Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 192.168.1.1&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Static Route ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 10.10.0.0/16 192.168.1.254&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== High Availability Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== HA Group Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 1&lt;br /&gt;
/cfg/ha/group 1/peer 10.0.0.2&lt;br /&gt;
/cfg/ha/group 1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 10&lt;br /&gt;
/cfg/ha/group 10/peer 192.168.100.2&lt;br /&gt;
/cfg/ha/group 10/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HA Status Verification ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Server Load Balancing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Real Server Definition ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server WEB1 10.0.1.11/80&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Health Check Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/type http&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/url &amp;quot;/health&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK/type tcp&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Service Group Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group WEB-GRP&lt;br /&gt;
/cfg/slb/group WEB-GRP/add WEB1&lt;br /&gt;
/cfg/slb/group WEB-GRP/method roundrobin&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group APP-GRP&lt;br /&gt;
/cfg/slb/group APP-GRP/add APP1&lt;br /&gt;
/cfg/slb/group APP-GRP/method leastconn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Virtual Server Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server VIP1 203.0.113.10/80&lt;br /&gt;
/cfg/slb/virtual-server VIP1/service WEB-GRP&lt;br /&gt;
/cfg/slb/virtual-server VIP1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS 198.51.100.10/443&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/service APP-GRP&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== SSH Access ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&lt;br /&gt;
/cfg/system/ssh version 2&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== User Account Creation ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user admin password StrongPass! role admin&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management Access Restriction ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 10.10.10.0/255.255.255.0&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring and Logging ==&lt;br /&gt;
&lt;br /&gt;
=== Display Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Interface Monitoring ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&lt;br /&gt;
/cfg/system/show interface port 5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Routing Table Display ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show ip-route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 10.1.1.50&lt;br /&gt;
/cfg/system/logging level info&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 192.168.100.50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration Management ==&lt;br /&gt;
&lt;br /&gt;
=== Save Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Backup Configuration ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 10.0.0.50 backup.cfg&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Connectivity Tests ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ping 8.8.8.8&lt;br /&gt;
/cfg/system/traceroute 8.8.8.8&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Verify reachability and routing path.&lt;br /&gt;
&lt;br /&gt;
=== Interface Issues ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check link status, administrative state, and error counters.&lt;br /&gt;
&lt;br /&gt;
=== HA Problems ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Confirm active/standby role and synchronization state.&lt;br /&gt;
&lt;br /&gt;
=== SLB Service Not Responding ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/show group&lt;br /&gt;
/cfg/slb/show real-server&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Verify health check status and server availability.&lt;br /&gt;
&lt;br /&gt;
=== Configuration Not Persisted ===&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure configuration is saved using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resetting Configuration ==&lt;br /&gt;
&lt;br /&gt;
This chapter outlines the process for resetting the configuration on an **Alteon Application Switch 5208**. There are different methods for resetting the configuration, including clearing all settings, restoring factory defaults, or performing a soft reset.&lt;br /&gt;
&lt;br /&gt;
=== Soft Reset (Reboot) ===&lt;br /&gt;
&lt;br /&gt;
A soft reset allows the switch to reboot without clearing the configuration. It can be used when you need to refresh the system without losing any saved settings.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will reboot the system, retaining all current configurations.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== After Reboot ====  &lt;br /&gt;
Once the switch reboots, you can verify the status with the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display the current state of the system and confirm that the reboot was successful.&lt;br /&gt;
&lt;br /&gt;
=== Hard Reset (Factory Defaults) ===&lt;br /&gt;
&lt;br /&gt;
A **hard reset** restores the switch to its factory default settings. This means that all configurations will be lost, and the switch will revert to the default IP address, hostname, and settings.&lt;br /&gt;
&lt;br /&gt;
To perform a factory reset, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1. Connect to the switch via the **console port** using a terminal client like PuTTY or HyperTerminal.&lt;br /&gt;
2. Power off the switch.&lt;br /&gt;
3. Press and hold the **reset button** on the front panel of the switch.&lt;br /&gt;
4. Power the switch on while still holding the reset button for about **10-15 seconds**.&lt;br /&gt;
5. Release the reset button. The switch will now boot up with factory default settings.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the following command can be used to perform a hard reset via the CLI:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/reset-factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will erase all configurations and reset the switch to its factory defaults.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/reset-factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this process, the switch will require reconfiguration from scratch, including setting the management IP, hostname, and network settings.&lt;br /&gt;
&lt;br /&gt;
==== Verify Reset to Factory Defaults ====&lt;br /&gt;
To confirm that the switch has been reset to factory defaults, you can check the configuration:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should show minimal or default configurations such as the default IP address `192.168.1.1`, default hostname, and other initial settings.&lt;br /&gt;
&lt;br /&gt;
=== Resetting Specific Configuration Elements ===&lt;br /&gt;
&lt;br /&gt;
In some cases, you might only need to reset certain elements, such as VLAN configurations or interfaces, rather than the entire system.&lt;br /&gt;
&lt;br /&gt;
==== Reset VLAN Configuration ====&lt;br /&gt;
To remove a specific VLAN configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan &amp;lt;vlan_id&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will reset the specified VLAN to its default settings.&lt;br /&gt;
&lt;br /&gt;
==== Reset Interface Configuration ====&lt;br /&gt;
To reset an individual interface configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port &amp;lt;port_number&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will reset the settings for that particular interface, including IP addresses, VLAN assignments, and other configurations.&lt;br /&gt;
&lt;br /&gt;
=== Clearing the Configuration from the Flash Memory ===&lt;br /&gt;
&lt;br /&gt;
If you want to delete the current configuration completely from the switch&#039;s flash memory, use the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will completely clear the configuration stored in the flash memory, requiring a reboot to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the configuration is cleared, the system will boot with the default configuration.&lt;br /&gt;
&lt;br /&gt;
=== Important Notes ===&lt;br /&gt;
&lt;br /&gt;
* **Backup Configurations**: Before performing any reset actions, it is crucial to back up your current configuration to avoid losing important settings. Use the following command to back up to a TFTP server:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp &amp;lt;tftp_ip&amp;gt; &amp;lt;backup_filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **Reconfiguration**: After performing a hard reset, you will need to reconfigure the switch from scratch. This includes setting up VLANs, IP addresses, HA groups, and other configurations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* Radware Support Portal — https://support.radware.com/&lt;br /&gt;
* Radware Knowledge Center — https://support.radware.com/Knowledge-Center/&lt;br /&gt;
* Radware Community — https://community.radware.com/&lt;br /&gt;
* Radware Documentation Library — https://www.radware.com/resources/&lt;br /&gt;
* Alteon CLI Reference Guide — https://www.radware.com/products/alteon/&lt;br /&gt;
* Alteon Support Page — https://www.radware.com/products/alteon-support/&lt;br /&gt;
* Alteon Application Switch Technical Documentation — https://www.radware.com/products/alteon/documentation/&lt;br /&gt;
* Alteon Product Page — https://www.radware.com/products/alteon-application-switch/&lt;br /&gt;
* Radware Download Center — https://support.radware.com/Downloads/&lt;br /&gt;
* Radware Knowledge Base — https://support.radware.com/knowledgebase/&lt;br /&gt;
* Radware YouTube Channel (for tutorials) — https://www.youtube.com/user/RadwareOfficial/&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1114</id>
		<title>ALTEON - Menu Commands</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ALTEON_-_Menu_Commands&amp;diff=1114"/>
		<updated>2026-02-18T08:00:00Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == System Access and Privilege Modes ==  === User EXEC Mode === &amp;lt;nowiki&amp;gt; /cfg/login&amp;lt;/nowiki&amp;gt;  Description:   Accesses the user EXEC mode.  Example: &amp;lt;nowiki&amp;gt; /cfg/login&amp;lt;/nowiki&amp;gt;  === Privileged EXEC Mode === &amp;lt;nowiki&amp;gt; /cfg/enable&amp;lt;/nowiki&amp;gt;  Description:   Switches to the privileged EXEC mode.  Example: &amp;lt;nowiki&amp;gt; /cfg/enable&amp;lt;/nowiki&amp;gt;  ==== Exit and Session Termination ==== &amp;lt;nowiki...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== System Access and Privilege Modes ==&lt;br /&gt;
&lt;br /&gt;
=== User EXEC Mode ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Accesses the user EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/login&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Privileged EXEC Mode ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
Switches to the privileged EXEC mode.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Exit and Session Termination ====&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&lt;br /&gt;
/logout&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/exit&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== System Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Hostname Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/hostname Alteon-5208&lt;br /&gt;
/cfg/system/hostname Alteon-DataCenter&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Banner Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/banner motd &amp;quot;Unauthorized access is prohibited&amp;quot;&lt;br /&gt;
 /cfg/system/banner motd &amp;quot;Only authorized personnel can access this device.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Time and NTP Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/timezone UTC 0&lt;br /&gt;
/cfg/system/ntp server 192.168.100.10&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ntp server 10.10.10.5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management IP Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 192.168.1.10/24&lt;br /&gt;
/cfg/system/interface mgmt/ip-address 10.0.0.10/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Interface and VLAN Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Physical Port Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/enable&lt;br /&gt;
/cfg/network/port 5/disable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 3/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Assign IP Address to Interface ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 2/ip-address 172.16.10.2/24&lt;br /&gt;
/cfg/network/port 8/ip-address 192.168.50.2/24&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Creation ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100&lt;br /&gt;
/cfg/network/vlan 100/name DMZ&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200&lt;br /&gt;
/cfg/network/vlan 200/name INTERNAL&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VLAN Port Assignment ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/tagged 1&lt;br /&gt;
/cfg/network/vlan 100/untagged 2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 200/tagged 3&lt;br /&gt;
/cfg/network/vlan 200/untagged 4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Routing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Default Route ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 192.168.1.1&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 0.0.0.0/0 10.0.0.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Static Route ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 10.10.0.0/16 192.168.1.254&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/ip-route 172.16.0.0/16 10.0.0.254&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== High Availability Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== HA Group Definition ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 1&lt;br /&gt;
/cfg/ha/group 1/peer 10.0.0.2&lt;br /&gt;
/cfg/ha/group 1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/group 10&lt;br /&gt;
/cfg/ha/group 10/peer 192.168.100.2&lt;br /&gt;
/cfg/ha/group 10/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HA Status Verification ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Server Load Balancing Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Real Server Definition ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server WEB1 10.0.1.11/80&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/real-server APP1 172.16.1.20/443&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Health Check Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/type http&lt;br /&gt;
/cfg/slb/health-check HTTP-CHECK/url &amp;quot;/health&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK&lt;br /&gt;
/cfg/slb/health-check TCP-CHECK/type tcp&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Service Group Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group WEB-GRP&lt;br /&gt;
/cfg/slb/group WEB-GRP/add WEB1&lt;br /&gt;
/cfg/slb/group WEB-GRP/method roundrobin&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/group APP-GRP&lt;br /&gt;
/cfg/slb/group APP-GRP/add APP1&lt;br /&gt;
/cfg/slb/group APP-GRP/method leastconn&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Virtual Server Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server VIP1 203.0.113.10/80&lt;br /&gt;
/cfg/slb/virtual-server VIP1/service WEB-GRP&lt;br /&gt;
/cfg/slb/virtual-server VIP1/enable&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS 198.51.100.10/443&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/service APP-GRP&lt;br /&gt;
/cfg/slb/virtual-server PUBLIC-HTTPS/enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Security Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== SSH Access ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&lt;br /&gt;
/cfg/system/ssh version 2&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ssh enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== User Account Creation ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user admin password StrongPass! role admin&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/user operator password OpPass123 role operator&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Management Access Restriction ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 10.10.10.0/255.255.255.0&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/access-management 192.168.50.0/255.255.255.0&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring and Logging ==&lt;br /&gt;
&lt;br /&gt;
=== Display Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Interface Monitoring ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&lt;br /&gt;
/cfg/system/show interface port 5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Routing Table Display ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show ip-route&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 10.1.1.50&lt;br /&gt;
/cfg/system/logging level info&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/logging host 192.168.100.50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration Management ==&lt;br /&gt;
&lt;br /&gt;
=== Save Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Backup Configuration ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 10.0.0.50 backup.cfg&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp 192.168.1.50 adc-backup.cfg&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Basic Connectivity Tests ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/ping 8.8.8.8&lt;br /&gt;
/cfg/system/traceroute 8.8.8.8&amp;lt;/nowiki&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
Verify reachability and routing path.&lt;br /&gt;
&lt;br /&gt;
=== Interface Issues ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show interface&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check link status, administrative state, and error counters.&lt;br /&gt;
&lt;br /&gt;
=== HA Problems ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/ha/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Confirm active/standby role and synchronization state.&lt;br /&gt;
&lt;br /&gt;
=== SLB Service Not Responding ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/slb/show group&lt;br /&gt;
/cfg/slb/show real-server&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Verify health check status and server availability.&lt;br /&gt;
&lt;br /&gt;
=== Configuration Not Persisted ===&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ensure configuration is saved using:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/save&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Resetting Configuration ==&lt;br /&gt;
&lt;br /&gt;
This chapter outlines the process for resetting the configuration on an **Alteon Application Switch 5208**. There are different methods for resetting the configuration, including clearing all settings, restoring factory defaults, or performing a soft reset.&lt;br /&gt;
&lt;br /&gt;
=== Soft Reset (Reboot) ===&lt;br /&gt;
&lt;br /&gt;
A soft reset allows the switch to reboot without clearing the configuration. It can be used when you need to refresh the system without losing any saved settings.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will reboot the system, retaining all current configurations.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== After Reboot ====  &lt;br /&gt;
Once the switch reboots, you can verify the status with the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will display the current state of the system and confirm that the reboot was successful.&lt;br /&gt;
&lt;br /&gt;
=== Hard Reset (Factory Defaults) ===&lt;br /&gt;
&lt;br /&gt;
A **hard reset** restores the switch to its factory default settings. This means that all configurations will be lost, and the switch will revert to the default IP address, hostname, and settings.&lt;br /&gt;
&lt;br /&gt;
To perform a factory reset, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1. Connect to the switch via the **console port** using a terminal client like PuTTY or HyperTerminal.&lt;br /&gt;
2. Power off the switch.&lt;br /&gt;
3. Press and hold the **reset button** on the front panel of the switch.&lt;br /&gt;
4. Power the switch on while still holding the reset button for about **10-15 seconds**.&lt;br /&gt;
5. Release the reset button. The switch will now boot up with factory default settings.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the following command can be used to perform a hard reset via the CLI:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/reset-factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will erase all configurations and reset the switch to its factory defaults.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/reset-factory&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After this process, the switch will require reconfiguration from scratch, including setting the management IP, hostname, and network settings.&lt;br /&gt;
&lt;br /&gt;
==== Verify Reset to Factory Defaults ====&lt;br /&gt;
To confirm that the switch has been reset to factory defaults, you can check the configuration:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/show running-config&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This should show minimal or default configurations such as the default IP address `192.168.1.1`, default hostname, and other initial settings.&lt;br /&gt;
&lt;br /&gt;
=== Resetting Specific Configuration Elements ===&lt;br /&gt;
&lt;br /&gt;
In some cases, you might only need to reset certain elements, such as VLAN configurations or interfaces, rather than the entire system.&lt;br /&gt;
&lt;br /&gt;
==== Reset VLAN Configuration ====&lt;br /&gt;
To remove a specific VLAN configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan &amp;lt;vlan_id&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/vlan 100/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This command will reset the specified VLAN to its default settings.&lt;br /&gt;
&lt;br /&gt;
==== Reset Interface Configuration ====&lt;br /&gt;
To reset an individual interface configuration, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port &amp;lt;port_number&amp;gt;/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/network/port 5/reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will reset the settings for that particular interface, including IP addresses, VLAN assignments, and other configurations.&lt;br /&gt;
&lt;br /&gt;
=== Clearing the Configuration from the Flash Memory ===&lt;br /&gt;
&lt;br /&gt;
If you want to delete the current configuration completely from the switch&#039;s flash memory, use the following command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Description:  &lt;br /&gt;
This command will completely clear the configuration stored in the flash memory, requiring a reboot to apply the changes.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/clear-flash&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once the configuration is cleared, the system will boot with the default configuration.&lt;br /&gt;
&lt;br /&gt;
=== Important Notes ===&lt;br /&gt;
&lt;br /&gt;
* **Backup Configurations**: Before performing any reset actions, it is crucial to back up your current configuration to avoid losing important settings. Use the following command to back up to a TFTP server:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;&lt;br /&gt;
/cfg/system/backup tftp &amp;lt;tftp_ip&amp;gt; &amp;lt;backup_filename&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* **Reconfiguration**: After performing a hard reset, you will need to reconfigure the switch from scratch. This includes setting up VLANs, IP addresses, HA groups, and other configurations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* Radware Support Portal — https://support.radware.com/&lt;br /&gt;
* Radware Knowledge Center — https://support.radware.com/Knowledge-Center/&lt;br /&gt;
* Radware Community — https://community.radware.com/&lt;br /&gt;
* Radware Documentation Library — https://www.radware.com/resources/&lt;br /&gt;
* Alteon CLI Reference Guide — https://www.radware.com/products/alteon/&lt;br /&gt;
* Alteon Support Page — https://www.radware.com/products/alteon-support/&lt;br /&gt;
* Alteon Application Switch Technical Documentation — https://www.radware.com/products/alteon/documentation/&lt;br /&gt;
* Alteon Product Page — https://www.radware.com/products/alteon-application-switch/&lt;br /&gt;
* Radware Download Center — https://support.radware.com/Downloads/&lt;br /&gt;
* Radware Knowledge Base — https://support.radware.com/knowledgebase/&lt;br /&gt;
* Radware YouTube Channel (for tutorials) — https://www.youtube.com/user/RadwareOfficial/&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=ACIDBASE_-_Install_With_SNORT_Setup_On_Ubuntu_24.4&amp;diff=1113</id>
		<title>ACIDBASE - Install With SNORT Setup On Ubuntu 24.4</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=ACIDBASE_-_Install_With_SNORT_Setup_On_Ubuntu_24.4&amp;diff=1113"/>
		<updated>2026-01-17T15:19:33Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Snort Configuration ===&lt;br /&gt;
Before configuring Acidbase, ensure that Snort is properly installed and configured to log alerts to a database. Modify the Snort configuration file (`/etc/snort/snort.conf`) to enable database logging.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
output database: log, mysql, user=snort dbname=snort host=localhost password=your_secure_password&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make sure you replace `your_secure_password` with the password for the Snort database user. This configuration tells Snort to log alerts to a MySQL database.&lt;br /&gt;
&lt;br /&gt;
=== Database Configuration ===&lt;br /&gt;
Acidbase requires a database to store Snort&#039;s logs and alerts. This guide assumes you are using MySQL, but you can adapt the steps for PostgreSQL.&lt;br /&gt;
&lt;br /&gt;
1. Create the Snort database and user:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
mysql -u root -p&lt;br /&gt;
CREATE DATABASE snort;&lt;br /&gt;
CREATE USER &#039;snort&#039;@&#039;localhost&#039; IDENTIFIED BY &#039;your_secure_password&#039;;&lt;br /&gt;
GRANT ALL PRIVILEGES ON snort.* TO &#039;snort&#039;@&#039;localhost&#039;;&lt;br /&gt;
FLUSH PRIVILEGES;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Import Snort&#039;s schema into the database. You can find the schema in the Snort directory:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
cd /etc/snort&lt;br /&gt;
mysql -u snort -p snort &amp;lt; create_mysql.sql&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This step ensures that the Snort database is correctly set up to handle logs and alerts.&lt;br /&gt;
&lt;br /&gt;
=== Acidbase Configuration ===&lt;br /&gt;
After Snort is configured to log to the database, configure Acidbase to read from it. The Acidbase configuration file is typically located at `/etc/acidbase/acidbase.conf`.&lt;br /&gt;
&lt;br /&gt;
Edit the configuration file to set the database connection parameters. For example:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
$dbname = &#039;snort&#039;;&lt;br /&gt;
$dbuser = &#039;snort&#039;;&lt;br /&gt;
$dbpass = &#039;your_secure_password&#039;;&lt;br /&gt;
$dbhost = &#039;localhost&#039;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace `your_secure_password` with the actual password you set for the Snort database user.&lt;br /&gt;
&lt;br /&gt;
== Setting Up the Web Interface ==&lt;br /&gt;
Acidbase provides a web interface to interact with Snort logs. You need a web server (like Apache) to serve the Acidbase interface.&lt;br /&gt;
&lt;br /&gt;
=== Installing Apache and PHP ===&lt;br /&gt;
If not already installed, install Apache and PHP:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo apt update&lt;br /&gt;
sudo apt install apache2 php libapache2-mod-php&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, configure Apache to serve Acidbase. Place the Acidbase files in the web server&#039;s root directory (usually `/var/www/html`):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo cp -r /path/to/acidbase/* /var/www/html/&lt;br /&gt;
sudo chown -R www-data:www-data /var/www/html/&lt;br /&gt;
sudo chmod -R 755 /var/www/html/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, restart Apache:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo systemctl restart apache2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Testing the Setup ===&lt;br /&gt;
To test the setup, open a web browser and go to `http://localhost/acidbase`. If everything is configured correctly, you should see the Acidbase interface.&lt;br /&gt;
&lt;br /&gt;
== Working with Acidbase ==&lt;br /&gt;
Acidbase offers several tools to manage and analyze Snort logs and alerts. Below are some examples of how to use the Acidbase interface.&lt;br /&gt;
&lt;br /&gt;
=== Viewing Alerts ===&lt;br /&gt;
Once Snort is running and logging alerts, Acidbase will display these alerts in a tabular format. You can filter alerts by severity, timestamp, or source/destination IP.&lt;br /&gt;
&lt;br /&gt;
To view all alerts, simply navigate to the main page of Acidbase, and it will show the latest alerts recorded by Snort.&lt;br /&gt;
&lt;br /&gt;
=== Searching Alerts ===&lt;br /&gt;
You can search alerts by specific parameters. For example, to find all alerts from a specific IP address:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
SELECT * FROM event WHERE src_ip = &#039;192.168.1.100&#039;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This SQL query will display all events from the specified source IP.&lt;br /&gt;
&lt;br /&gt;
=== Managing Alerts ===&lt;br /&gt;
Acidbase allows you to delete, flag, or modify alerts. To delete an alert, simply check the box next to the alert and click &amp;quot;Delete.&amp;quot; To flag an alert, use the &amp;quot;Flag&amp;quot; button, which will mark it for further review.&lt;br /&gt;
&lt;br /&gt;
=== Exporting Alerts ===&lt;br /&gt;
Acidbase also provides options to export alerts to different formats such as CSV, making it easier to share the data or analyze it offline.&lt;br /&gt;
&lt;br /&gt;
To export alerts, select the alerts you wish to export and click the &amp;quot;Export&amp;quot; button, then choose the desired format.&lt;br /&gt;
&lt;br /&gt;
== Advanced Features ==&lt;br /&gt;
Acidbase offers several advanced features for managing and analyzing Snort data.&lt;br /&gt;
&lt;br /&gt;
=== Custom Alerts ===&lt;br /&gt;
You can create custom alerts by modifying the Snort configuration file and specifying custom rule sets. To create a custom rule:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
alert ip any any -&amp;gt; 192.168.1.0/24 any (msg:&amp;quot;Custom alert&amp;quot;; sid:1000001;)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This rule triggers an alert for any IP that attempts to communicate with the `192.168.1.0/24` network.&lt;br /&gt;
&lt;br /&gt;
=== Using Acidbase with Multiple Snort Instances ===&lt;br /&gt;
If you are running multiple Snort instances on different machines, Acidbase can be configured to aggregate logs from multiple databases. In the Acidbase configuration file, specify the IP addresses and credentials for each Snort instance:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
$snort_servers = (&lt;br /&gt;
  array(&#039;host&#039; =&amp;gt; &#039;192.168.1.101&#039;, &#039;db&#039; =&amp;gt; &#039;snort&#039;, &#039;user&#039; =&amp;gt; &#039;snort&#039;, &#039;pass&#039; =&amp;gt; &#039;password&#039;),&lt;br /&gt;
  array(&#039;host&#039; =&amp;gt; &#039;192.168.1.102&#039;, &#039;db&#039; =&amp;gt; &#039;snort&#039;, &#039;user&#039; =&amp;gt; &#039;snort&#039;, &#039;pass&#039; =&amp;gt; &#039;password&#039;)&lt;br /&gt;
);&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This allows Acidbase to pull data from multiple sources and display it in a unified interface.&lt;br /&gt;
&lt;br /&gt;
== Performance Optimization ==&lt;br /&gt;
For large environments with high traffic, it is important to optimize the performance of both Snort and Acidbase.&lt;br /&gt;
&lt;br /&gt;
=== Snort Performance Tuning ===&lt;br /&gt;
Optimize Snort&#039;s performance by adjusting the `snort.conf` file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# Increase the performance of Snort by disabling unnecessary modules&lt;br /&gt;
config disable_decode_alert&lt;br /&gt;
config disable_decode_ip4&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Additionally, you can optimize Snort&#039;s packet capture settings, such as increasing the buffer size:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config buffer_size 262144&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Acidbase Performance Tuning ===&lt;br /&gt;
Acidbase performance can be improved by enabling caching for frequently queried data. Modify the `acidbase.conf` file:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
$cache_enabled = true;&lt;br /&gt;
$cache_time = 600;  # Cache time in seconds&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will cache query results for 10 minutes, reducing the load on the database.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
This section addresses common issues encountered while setting up or using Acidbase with Snort.&lt;br /&gt;
&lt;br /&gt;
=== Database Connection Errors ===&lt;br /&gt;
If Acidbase is unable to connect to the database, ensure that the database is running and accessible. Check the connection settings in both the Acidbase and Snort configuration files.&lt;br /&gt;
&lt;br /&gt;
Test the connection with the following command:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
mysql -u snort -p -h localhost snort&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the connection fails, check the database logs for errors.&lt;br /&gt;
&lt;br /&gt;
=== Acidbase Interface Not Loading ===&lt;br /&gt;
If the Acidbase web interface doesn&#039;t load, ensure that the Apache web server is running:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo systemctl status apache2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the service is inactive, restart it with:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
sudo systemctl restart apache2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Snort Alerts Not Showing in Acidbase ===&lt;br /&gt;
If Snort is not generating alerts that appear in Acidbase, check the Snort log directory and ensure that alerts are being generated properly. The Snort log file is usually located in `/var/log/snort`.&lt;br /&gt;
&lt;br /&gt;
You can also manually check if the alerts are present in the database with:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
mysql -u snort -p snort -e &amp;quot;SELECT * FROM event;&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
* [Snort Official Website](https://www.snort.org/)&lt;br /&gt;
* [Acidbase GitHub Repository](https://github.com/acidbase/acidbase)&lt;br /&gt;
* [Snort Database Schema Documentation](https://snort.org/documents/)&lt;br /&gt;
* [MySQL Documentation](https://dev.mysql.com/doc/)&lt;br /&gt;
* [Apache HTTP Server Documentation](https://httpd.apache.org/docs/)&lt;br /&gt;
* [How to Optimize Snort Performance](https://www.snort.org/faq/optimizing-snort)&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=TOP_-_Manpage&amp;diff=1112</id>
		<title>TOP - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=TOP_-_Manpage&amp;diff=1112"/>
		<updated>2026-01-17T13:17:54Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== top Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
TOP(1)                                                                                                          User Commands                                                                                                          TOP(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       top - display Linux processes&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       top [options]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       The  top program provides a dynamic real-time view of a running system.  It can display system summary information as well as a list of processes or threads currently being managed by the Linux kernel.  The types of system summary&lt;br /&gt;
       information shown and the types, order and size of information displayed for processes are all user configurable and that configuration can be made persistent across restarts.&lt;br /&gt;
&lt;br /&gt;
       The program provides a limited interactive interface for process manipulation as well as a much more extensive interface for personal configuration  --  encompassing every aspect of its operation.  And while  top  is  referred  to&lt;br /&gt;
       throughout this document, you are free to name the program anything you wish.  That new name, possibly an alias, will then be reflected on top&#039;s display and used when reading and writing a configuration file.&lt;br /&gt;
&lt;br /&gt;
OVERVIEW&lt;br /&gt;
   Documentation&lt;br /&gt;
       The remaining Table of Contents&lt;br /&gt;
&lt;br /&gt;
           OVERVIEW&lt;br /&gt;
              Operation&lt;br /&gt;
              Linux Memory Types&lt;br /&gt;
           1. COMMAND-LINE Options&lt;br /&gt;
           2. SUMMARY Display&lt;br /&gt;
              a. UPTIME and LOAD Averages&lt;br /&gt;
              b. TASK and CPU States&lt;br /&gt;
              c. MEMORY Usage&lt;br /&gt;
           3. FIELDS / Columns Display&lt;br /&gt;
              a. DESCRIPTIONS of Fields&lt;br /&gt;
              b. MANAGING Fields&lt;br /&gt;
           4. INTERACTIVE Commands&lt;br /&gt;
              a. GLOBAL Commands&lt;br /&gt;
              b. SUMMARY AREA Commands&lt;br /&gt;
              c. TASK AREA Commands&lt;br /&gt;
                 1. Appearance&lt;br /&gt;
                 2. Content&lt;br /&gt;
                 3. Size&lt;br /&gt;
                 4. Sorting&lt;br /&gt;
              d. COLOR Mapping&lt;br /&gt;
           5. ALTERNATE-DISPLAY Provisions&lt;br /&gt;
              a. WINDOWS Overview&lt;br /&gt;
              b. COMMANDS for Windows&lt;br /&gt;
              c. SCROLLING a Window&lt;br /&gt;
              d. SEARCHING in a Window&lt;br /&gt;
              e. FILTERING in a Window&lt;br /&gt;
           6. FILES&lt;br /&gt;
              a. PERSONAL Configuration File&lt;br /&gt;
              b. ADDING INSPECT Entries&lt;br /&gt;
              c. SYSTEM Configuration File&lt;br /&gt;
              d. SYSTEM Restrictions File&lt;br /&gt;
           7. ENVIRONMENT VARIABLE(S)&lt;br /&gt;
           8. STUPID TRICKS Sampler&lt;br /&gt;
              a. Kernel Magic&lt;br /&gt;
              b. Bouncing Windows&lt;br /&gt;
              c. The Big Bird Window&lt;br /&gt;
              d. The Ol&#039; Switcheroo&lt;br /&gt;
           9. BUGS, 10. SEE Also&lt;br /&gt;
&lt;br /&gt;
   Operation&lt;br /&gt;
       When operating top, the two most important keys are the help (h or ?)  key and quit (`q&#039;) key.  Alternatively, you could simply use the traditional interrupt key (^C) when you&#039;re done.&lt;br /&gt;
&lt;br /&gt;
       When  started  for  the  first time, you&#039;ll be presented with these traditional elements on the main top screen: 1) Summary Area; 2) Fields/Columns Header; 3) Task Area.  Each of these will be explored in the sections that follow.&lt;br /&gt;
       There is also an Input/Message line between the Summary Area and Columns Header which needs no further explanation.&lt;br /&gt;
&lt;br /&gt;
       The main top screen is generally quite adaptive to changes in terminal dimensions under X-Windows.  Other top screens may be less so, especially those with static text.  It ultimately depends, however, on  your  particular  window&lt;br /&gt;
       manager and terminal emulator.  There may be occasions when their view of terminal size and current contents differs from top&#039;s view, which is always based on operating system calls.&lt;br /&gt;
&lt;br /&gt;
       Following  any  re-size operation, if a top screen is corrupted, appears incomplete or disordered, simply typing something innocuous like a punctuation character or cursor motion key will usually restore it.  In extreme cases, the&lt;br /&gt;
       following sequence almost certainly will:&lt;br /&gt;
              key/cmd  objective&lt;br /&gt;
              ^Z       suspend top&lt;br /&gt;
              fg       resume top&lt;br /&gt;
              &amp;lt;Left&amp;gt;   force a screen redraw (if necessary)&lt;br /&gt;
&lt;br /&gt;
       But if the display is still corrupted, there is one more step you could try.  Insert this command after top has been suspended but before resuming it.&lt;br /&gt;
              key/cmd  objective&lt;br /&gt;
              reset    restore your terminal settings&lt;br /&gt;
&lt;br /&gt;
       Note: the width of top&#039;s display will be limited to 512 positions.  Displaying all fields requires approximately 250 characters.  Remaining screen width is usually allocated to any variable width columns  currently  visible.   The&lt;br /&gt;
       variable width columns, such as COMMAND, are noted in topic 3a. DESCRIPTIONS of Fields.  Actual output width may also be influenced by the -w switch, which is discussed in topic 1. COMMAND-LINE Options.&lt;br /&gt;
&lt;br /&gt;
       Lastly,  some  of  top&#039;s  screens  or  functions  require  the use of cursor motion keys like the standard arrow keys plus the Home, End, PgUp and PgDn keys.  If your terminal or emulator does not provide those keys, the following&lt;br /&gt;
       combinations are accepted as alternatives:&lt;br /&gt;
              key      equivalent-keys&lt;br /&gt;
              Left     alt + h&lt;br /&gt;
              Down     alt + j&lt;br /&gt;
              Up       alt + k&lt;br /&gt;
              Right    alt + l&lt;br /&gt;
              Home     alt + ctrl + h&lt;br /&gt;
              PgDn     alt + ctrl + j&lt;br /&gt;
              PgUp     alt + ctrl + k&lt;br /&gt;
              End      alt + ctrl + l&lt;br /&gt;
&lt;br /&gt;
       The Up and Down arrow keys have special significance when prompted for line input terminated with the &amp;lt;Enter&amp;gt; key.  Those keys, or their aliases, can be used to retrieve previous input lines which can then be edited and  re-input.&lt;br /&gt;
       And there are four additional keys available with line oriented input.&lt;br /&gt;
              key      special-significance&lt;br /&gt;
              Up       recall older strings for re-editing&lt;br /&gt;
              Down     recall newer strings or erase entire line&lt;br /&gt;
              Insert   toggle between insert and overtype modes&lt;br /&gt;
              Delete   character removed at cursor, moving others left&lt;br /&gt;
              Home     jump to beginning of input line&lt;br /&gt;
              End      jump to end of input line&lt;br /&gt;
&lt;br /&gt;
   Linux Memory Types&lt;br /&gt;
       For  our  purposes  there  are  three types of memory, and one is optional.  First is physical memory, a limited resource where code and data must reside when executed or referenced.  Next is the optional swap file, where modified&lt;br /&gt;
       (dirty) memory can be saved and later retrieved if too many demands are made on physical memory.  Lastly we have virtual memory, a nearly unlimited resource serving the following goals:&lt;br /&gt;
&lt;br /&gt;
          1. abstraction, free from physical memory addresses/limits&lt;br /&gt;
          2. isolation, every process in a separate address space&lt;br /&gt;
          3. sharing, a single mapping can serve multiple needs&lt;br /&gt;
          4. flexibility, assign a virtual address to a file&lt;br /&gt;
&lt;br /&gt;
       Regardless of which of these forms memory may take, all are managed as pages (typically 4096 bytes) but expressed by default in top as KiB (kibibyte).  The memory discussed under topic `2c. MEMORY Usage&#039; deals with physical memory&lt;br /&gt;
       and the swap file for the system as a whole.  The memory reviewed in topic `3. FIELDS / Columns Display&#039; embraces all three memory types, but for individual processes.&lt;br /&gt;
&lt;br /&gt;
       For each such process, every memory page is restricted to a single quadrant from the table below.  Both physical memory and virtual memory can include any of the four, while the swap file only includes #1 through #3.   The  memory&lt;br /&gt;
       in quadrant #4, when modified, acts as its own dedicated swap file.&lt;br /&gt;
&lt;br /&gt;
                                     Private | Shared&lt;br /&gt;
                                 1           |          2&lt;br /&gt;
            Anonymous  . stack               |&lt;br /&gt;
                       . malloc()            |&lt;br /&gt;
                       . brk()/sbrk()        | . POSIX shm*&lt;br /&gt;
                       . mmap(PRIVATE, ANON) | . mmap(SHARED, ANON)&lt;br /&gt;
                      -----------------------+----------------------&lt;br /&gt;
                       . mmap(PRIVATE, fd)   | . mmap(SHARED, fd)&lt;br /&gt;
          File-backed  . pgms/shared libs    |&lt;br /&gt;
                                 3           |          4&lt;br /&gt;
&lt;br /&gt;
       The following may help in interpreting process level memory values displayed as scalable columns and discussed under topic `3a. DESCRIPTIONS of Fields&#039;.&lt;br /&gt;
&lt;br /&gt;
          %MEM - simply RES divided by total physical memory&lt;br /&gt;
          CODE - the `pgms&#039; portion of quadrant 3&lt;br /&gt;
          DATA - the entire quadrant 1 portion of VIRT plus all&lt;br /&gt;
                 explicit mmap file-backed pages of quadrant 3&lt;br /&gt;
          RES  - anything occupying physical memory which, beginning with&lt;br /&gt;
                 Linux-4.5, is the sum of the following three fields:&lt;br /&gt;
                 RSan - quadrant 1 pages, which include any&lt;br /&gt;
                        former quadrant 3 pages if modified&lt;br /&gt;
                 RSfd - quadrant 3 and quadrant 4 pages&lt;br /&gt;
                 RSsh - quadrant 2 pages&lt;br /&gt;
          RSlk - subset of RES which cannot be swapped out (any quadrant)&lt;br /&gt;
          SHR  - subset of RES (excludes 1, includes all 2 &amp;amp; 4, some 3)&lt;br /&gt;
          SWAP - potentially any quadrant except 4&lt;br /&gt;
          USED - simply the sum of RES and SWAP&lt;br /&gt;
          VIRT - everything in-use and/or reserved (all quadrants)&lt;br /&gt;
&lt;br /&gt;
       Note: Even though program images and shared libraries are considered private to a process, they will be accounted for as shared (SHR) by the kernel.&lt;br /&gt;
&lt;br /&gt;
1. COMMAND-LINE Options&lt;br /&gt;
       Mandatory arguments to long options are mandatory for short options too.&lt;br /&gt;
&lt;br /&gt;
       Although not required, the equals sign can be used with either option form and whitespace before and/or after the `=&#039; is permitted.&lt;br /&gt;
&lt;br /&gt;
       -b, --batch&lt;br /&gt;
          Starts  top  in  Batch  mode,  which could be useful for sending output from top to other programs or to a file.  In this mode, top will not accept input and runs until the iterations limit you&#039;ve set with the `-n&#039; command-line&lt;br /&gt;
          option or until killed.&lt;br /&gt;
&lt;br /&gt;
       -c, --cmdline-toggle&lt;br /&gt;
          Starts top with the last remembered `c&#039; state reversed.  Thus, if top was displaying command lines, now that field will show program names, and vice versa.  See the `c&#039; interactive command for additional information.&lt;br /&gt;
&lt;br /&gt;
       -d, --delay = SECS [.TENTHS]&lt;br /&gt;
          Specifies the delay between screen updates, and overrides the corresponding value in one&#039;s personal configuration file or the startup default.  Later this can be changed with the `d&#039; or `s&#039; interactive commands.&lt;br /&gt;
&lt;br /&gt;
          Fractional seconds are honored, but a negative number is not allowed.  In all cases, however, such changes are prohibited if top is running in Secure mode, except for root (unless the `s&#039; command-line  option  was  used).   For&lt;br /&gt;
          additional information on Secure mode see topic 6d. SYSTEM Restrictions File.&lt;br /&gt;
&lt;br /&gt;
       -E, --scale-summary-mem = k | m | g | t | p | e&lt;br /&gt;
          Instructs top to force summary area memory to be scaled as:&lt;br /&gt;
             k - kibibytes&lt;br /&gt;
             m - mebibytes&lt;br /&gt;
             g - gibibytes&lt;br /&gt;
             t - tebibytes&lt;br /&gt;
             p - pebibytes&lt;br /&gt;
             e - exbibytes&lt;br /&gt;
&lt;br /&gt;
          Later this can be changed with the `E&#039; command toggle.&lt;br /&gt;
&lt;br /&gt;
       -e, --scale-task-mem = k | m | g | t | p&lt;br /&gt;
          Instructs top to force task area memory to be scaled as:&lt;br /&gt;
             k - kibibytes&lt;br /&gt;
             m - mebibytes&lt;br /&gt;
             g - gibibytes&lt;br /&gt;
             t - tebibytes&lt;br /&gt;
             p - pebibytes&lt;br /&gt;
&lt;br /&gt;
          Later this can be changed with the `e&#039; command toggle.&lt;br /&gt;
&lt;br /&gt;
       -H, --threads-show&lt;br /&gt;
          Instructs top to display individual threads.  Without this command-line option a summation of all threads in each process is shown.  Later this can be changed with the `H&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
       -h, --help&lt;br /&gt;
          Display usage help text, then quit.&lt;br /&gt;
&lt;br /&gt;
       -i, --idle-toggle&lt;br /&gt;
          Starts  top  with  the  last remembered `i&#039; state reversed.  When this toggle is Off, tasks that have not used any CPU since the last update will not be displayed.  For additional information regarding this toggle see topic 4c.&lt;br /&gt;
          TASK AREA Commands, SIZE.&lt;br /&gt;
&lt;br /&gt;
       -n, --iterations = NUMBER&lt;br /&gt;
          Specifies the maximum number of iterations, or frames, top should produce before ending.&lt;br /&gt;
&lt;br /&gt;
       -O, --list-fields&lt;br /&gt;
          This option acts as a form of help for the -o option shown below.  It will cause top to print each of the available field names on a separate line, then  quit.   Such  names  are  subject  to  NLS  (National  Language  Support)&lt;br /&gt;
          translation.&lt;br /&gt;
&lt;br /&gt;
       -o, --sort-override = FIELDNAME&lt;br /&gt;
          Specifies the name of the field on which tasks will be sorted, independent of what is reflected in the configuration file.  You can prepend a `+&#039; or `-&#039; to the field name to also override the sort direction.  A leading `+&#039; will&lt;br /&gt;
          force sorting high to low, whereas a `-&#039; will ensure a low to high ordering.&lt;br /&gt;
&lt;br /&gt;
          This option exists primarily to support automated/scripted batch mode operation.&lt;br /&gt;
&lt;br /&gt;
       -p, --pid = PIDLIST (as: 1,2,3, ... or -p1 -p2 -p3 ...)&lt;br /&gt;
          Monitor only processes with specified process IDs.  However, when combined with Threads mode (`H&#039;), all processes in the thread group (see TGID) of each monitored PID will also be shown.&lt;br /&gt;
&lt;br /&gt;
          This option can be given up to 20 times, or you can provide a comma delimited list with up to 20 pids.  Co-mingling both approaches is permitted.&lt;br /&gt;
&lt;br /&gt;
          A pid value of zero will be treated as the process id of the top program itself once it is running.&lt;br /&gt;
&lt;br /&gt;
          This is a command-line option only and should you wish to return to normal operation, it is not necessary to quit and restart top  --  just issue any of these interactive commands: `=&#039;, `u&#039; or `U&#039;.&lt;br /&gt;
&lt;br /&gt;
          The `p&#039;, `u&#039; and `U&#039; command-line options are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
       -S, --accum-time-toggle&lt;br /&gt;
          Starts  top  with  the  last  remembered  `S&#039;  state  reversed.  When Cumulative time mode is On, each process is listed with the cpu time that it and its dead children have used.  See the `S&#039; interactive command for additional&lt;br /&gt;
          information regarding this mode.&lt;br /&gt;
&lt;br /&gt;
       -s, --secure-mode&lt;br /&gt;
          Starts top with secure mode forced, even for root.  This mode is far better controlled through a system configuration file (see topic 6. FILES).&lt;br /&gt;
&lt;br /&gt;
       -U, --filter-any-user = USER (as: number or name)&lt;br /&gt;
          Display only processes with a user id or user name matching that given.  This option matches on any user (real, effective, saved, or filesystem).&lt;br /&gt;
&lt;br /&gt;
          Prepending an exclamation point (`!&#039;) to the user id or name instructs top to display only processes with users not matching the one provided.&lt;br /&gt;
&lt;br /&gt;
          The `p&#039;, `U&#039; and `u&#039; command-line options are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
       -u, --filter-only-euser = USER (as: number or name)&lt;br /&gt;
          Display only processes with a user id or user name matching that given.  This option matches on the effective user id only.&lt;br /&gt;
&lt;br /&gt;
          Prepending an exclamation point (`!&#039;) to the user id or name instructs top to display only processes with users not matching the one provided.&lt;br /&gt;
&lt;br /&gt;
          The `p&#039;, `U&#039; and `u&#039; command-line options are mutually exclusive.&lt;br /&gt;
&lt;br /&gt;
       -V, --version&lt;br /&gt;
          Display version information, then quit.&lt;br /&gt;
&lt;br /&gt;
       -w, --width [=COLUMNS]&lt;br /&gt;
          In Batch mode, when used without an argument top will format output using the COLUMNS= and LINES= environment variables, if set.  Otherwise, width will be fixed at the maximum 512 columns.  With an argument, output width can be&lt;br /&gt;
          decreased or increased (up to 512) but the number of rows is considered unlimited.&lt;br /&gt;
&lt;br /&gt;
          In normal display mode, when used without an argument top will attempt to format output using the COLUMNS= and LINES= environment variables, if set.  With an argument, output width can only be decreased, not increased.  Whether&lt;br /&gt;
          using environment variables or an argument with -w, when not in Batch mode actual terminal dimensions can never be exceeded.&lt;br /&gt;
&lt;br /&gt;
          Note: Without the use of this command-line option, output width is always based on the terminal at which top was invoked whether or not in Batch mode.&lt;br /&gt;
&lt;br /&gt;
       -1, --single-cpu-toggle&lt;br /&gt;
          Starts top with the last remembered Cpu States portion of the summary area reversed.  Either all cpu information will be displayed in a single line or each cpu will be displayed separately, depending on the state  of  the  NUMA&lt;br /&gt;
          Node command toggle (`2&#039;).&lt;br /&gt;
&lt;br /&gt;
          See the `1&#039; and `2&#039; interactive commands for additional information.&lt;br /&gt;
&lt;br /&gt;
2. SUMMARY Display&lt;br /&gt;
       Each of the following three areas are individually controlled through one or more interactive commands.  See topic 4b. SUMMARY AREA Commands for additional information regarding these provisions.&lt;br /&gt;
&lt;br /&gt;
   2a. UPTIME and LOAD Averages&lt;br /&gt;
       This portion consists of a single line containing:&lt;br /&gt;
           program or window name, depending on display mode&lt;br /&gt;
           current time and length of time since last boot&lt;br /&gt;
           total number of users&lt;br /&gt;
           system load avg over the last 1, 5 and 15 minutes&lt;br /&gt;
&lt;br /&gt;
   2b. TASK and CPU States&lt;br /&gt;
       This portion consists of a minimum of two lines.  In an SMP environment, additional lines can reflect individual CPU state percentages.&lt;br /&gt;
&lt;br /&gt;
       Line 1 shows total tasks or threads, depending on the state of the Threads-mode toggle.  That total is further classified as:&lt;br /&gt;
           running; sleeping; stopped; zombie&lt;br /&gt;
&lt;br /&gt;
       Line 2 shows CPU state percentages based on the interval since the last refresh.&lt;br /&gt;
&lt;br /&gt;
       As a default, percentages for these individual categories are displayed.  Depending on your kernel version, the st field may not be shown.&lt;br /&gt;
           us : time running un-niced user processes&lt;br /&gt;
           sy : time running kernel processes&lt;br /&gt;
           ni : time running niced user processes&lt;br /&gt;
           id : time spent in the kernel idle handler&lt;br /&gt;
           wa : time waiting for I/O completion&lt;br /&gt;
           hi : time spent servicing hardware interrupts&lt;br /&gt;
           si : time spent servicing software interrupts&lt;br /&gt;
           st : time stolen from this vm by the hypervisor&lt;br /&gt;
&lt;br /&gt;
       The `sy&#039; value above also reflects the time running a virtual cpu for guest operating systems, including those that have been niced.&lt;br /&gt;
&lt;br /&gt;
       Beyond the first tasks/threads line, there are alternate CPU display modes available via the 4-way `t&#039; command toggle.  They show an abbreviated summary consisting of these elements:&lt;br /&gt;
                      a    b     c    d&lt;br /&gt;
           %Cpu(s):  75.0/25.0  100[ ... ]&lt;br /&gt;
&lt;br /&gt;
       Where:  a)  is  the  `user&#039;  (us  + ni) percentage; b) is the `system&#039; (sy + hi + si + guests) percentage; c) is the total percentage; and d) is one of two visual graphs of those representations.  Such graphs also reflect separate&lt;br /&gt;
       `user&#039; and `system&#039; portions.&lt;br /&gt;
&lt;br /&gt;
       If the `4&#039; command toggle is used to yield more than two cpus per line, results will be further abridged eliminating the a) and b) elements.  However, that information is still reflected in  the  graph  itself  assuming  color  is&lt;br /&gt;
       active or, if not, bars vs. blocks are being shown.&lt;br /&gt;
&lt;br /&gt;
       See topic 4b. SUMMARY AREA Commands for additional information on the `t&#039; and `4&#039; command toggles.&lt;br /&gt;
&lt;br /&gt;
   2c. MEMORY Usage&lt;br /&gt;
       This  portion  consists  of  two  lines  which  may  express values in kibibytes (KiB) through exbibytes (EiB) depending on the scaling factor enforced with the `E&#039; interactive command. The /proc/meminfo source fields are shown in&lt;br /&gt;
       parenthesis.&lt;br /&gt;
&lt;br /&gt;
       Line 1 reflects physical memory, classified as:&lt;br /&gt;
           total          ( MemTotal )&lt;br /&gt;
           free           ( MemFree )&lt;br /&gt;
           used           ( MemTotal - MemAvailable )&lt;br /&gt;
           buff/cache     ( Buffers + Cached + SReclaimable )&lt;br /&gt;
&lt;br /&gt;
       Line 2 reflects mostly virtual memory, classified as:&lt;br /&gt;
           total          ( SwapTotal )&lt;br /&gt;
           free           ( SwapFree )&lt;br /&gt;
           used           ( SwapTotal - SwapFree )&lt;br /&gt;
           avail          ( MemAvailable, which is physical memory )&lt;br /&gt;
&lt;br /&gt;
       The avail number on line 2 is an estimation of physical memory available for starting new applications, without swapping.  Unlike the free field, it attempts to account for readily reclaimable page cache and memory slabs.   It  is&lt;br /&gt;
       available on kernels 3.14, emulated on kernels 2.6.27+, otherwise the same as free.&lt;br /&gt;
&lt;br /&gt;
       In the alternate memory display modes, two abbreviated summary lines are shown consisting of these elements:&lt;br /&gt;
                      a    b          c&lt;br /&gt;
           GiB Mem : 18.7/15.738   [ ... ]&lt;br /&gt;
           GiB Swap:  0.0/7.999    [ ... ]&lt;br /&gt;
&lt;br /&gt;
       Where: a) is the percentage used; b) is the total available; and c) is one of two visual graphs of those representations.&lt;br /&gt;
&lt;br /&gt;
       In  the case of physical memory, the percentage represents the total minus the estimated avail noted above.  The `Mem&#039; graph itself is divided between the non-cached portion of used and any remaining memory not otherwise accounted&lt;br /&gt;
       for by avail.  See topic 4b. SUMMARY AREA Commands and the `m&#039; command for additional information on that special 4-way toggle.&lt;br /&gt;
&lt;br /&gt;
       This table may help in interpreting the scaled values displayed:&lt;br /&gt;
           KiB = kibibyte = 1024 bytes&lt;br /&gt;
           MiB = mebibyte = 1024 KiB = 1,048,576 bytes&lt;br /&gt;
           GiB = gibibyte = 1024 MiB = 1,073,741,824 bytes&lt;br /&gt;
           TiB = tebibyte = 1024 GiB = 1,099,511,627,776 bytes&lt;br /&gt;
           PiB = pebibyte = 1024 TiB = 1,125,899,906,842,624 bytes&lt;br /&gt;
           EiB = exbibyte = 1024 PiB = 1,152,921,504,606,846,976 bytes&lt;br /&gt;
&lt;br /&gt;
3. FIELDS / Columns&lt;br /&gt;
   3a. DESCRIPTIONS of Fields&lt;br /&gt;
       Listed below are top&#039;s available process fields (columns).  They are shown in strict ascii alphabetical order.  You may customize their position and whether or not they are displayable with the `f&#039; (Fields Management)  interactive&lt;br /&gt;
       command.&lt;br /&gt;
&lt;br /&gt;
       Any field is selectable as the sort field, and you control whether they are sorted high-to-low or low-to-high.  For additional information on sort provisions see topic 4c. TASK AREA Commands, SORTING.&lt;br /&gt;
&lt;br /&gt;
       The fields related to physical memory or virtual memory reference `(KiB)&#039; which is the unsuffixed display mode.  Such fields may, however, be scaled from KiB through PiB.  That scaling is influenced via the `e&#039; interactive command&lt;br /&gt;
       or established for startup through a build option.&lt;br /&gt;
&lt;br /&gt;
       %CPU  --  CPU Usage&lt;br /&gt;
           The task&#039;s share of the elapsed CPU time since the last screen update, expressed as a percentage of total CPU time.&lt;br /&gt;
&lt;br /&gt;
           In a true SMP environment, if a process is multi-threaded and top is not operating in Threads mode, amounts greater than 100% may be reported.  You toggle Threads mode with the `H&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
           Also  for  multi-processor  environments,  if  Irix  mode  is  Off, top will operate in Solaris mode where a task&#039;s cpu usage will be divided by the total number of CPUs.  You toggle Irix/Solaris modes with the `I&#039; interactive&lt;br /&gt;
           command.&lt;br /&gt;
&lt;br /&gt;
           Note: When running in forest view mode (`V&#039;) with children collapsed (`v&#039;), this field will also include the CPU time of those unseen children.  See topic 4c. TASK AREA Commands, CONTENT for more information regarding the  `V&#039;&lt;br /&gt;
           and `v&#039; toggles.&lt;br /&gt;
&lt;br /&gt;
       %CUC  --  CPU Utilization&lt;br /&gt;
           This field is identical to %CUU below, except the percentage also reflects reaped child processes.&lt;br /&gt;
&lt;br /&gt;
       %CUU  --  CPU Utilization&lt;br /&gt;
           A task&#039;s total CPU usage divided by its elapsed running time, expressed as a percentage.&lt;br /&gt;
&lt;br /&gt;
           If a process currently displays high CPU usage, this field can help determine if such behavior is normal.  Conversely, if a process has low CPU usage currently, %CUU may reflect historically higher demands over its lifetime.&lt;br /&gt;
&lt;br /&gt;
       %MEM  --  Memory Usage (RES)&lt;br /&gt;
           A task&#039;s currently resident share of available physical memory.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       AGID  --  Autogroup Identifier&lt;br /&gt;
           The autogroup identifier associated with a process.  This feature operates in conjunction with the CFS scheduler to improve interactive desktop performance.&lt;br /&gt;
&lt;br /&gt;
           When  /proc/sys/kernel/sched_autogroup_enabled  is  set,  a  new  autogroup  is created with each new session (see SID).  All subsequently forked processes in that session inherit membership in this autogroup.  The kernel then&lt;br /&gt;
           attempts to equalize distribution of CPU cycles across such groups.  Thus, an autogroup with many CPU intensive processes (e.g make -j) will not dominate an autogroup with only one or two processes.&lt;br /&gt;
&lt;br /&gt;
           When -1 is displayed it means this information is not available.&lt;br /&gt;
&lt;br /&gt;
       AGNI  --  Autogroup Nice Value&lt;br /&gt;
           The autogroup nice value which affects scheduling of all processes in that group.  A negative nice value means higher priority, whereas a positive nice value means lower priority.&lt;br /&gt;
&lt;br /&gt;
       CGNAME  --  Control Group Name&lt;br /&gt;
           The name of the control group to which a process belongs, or `-&#039; if not applicable for that process.&lt;br /&gt;
&lt;br /&gt;
           This will typically be the last entry in the full list of control groups as shown under the next heading (CGROUPS).  And as is true there, this field is also variable width.&lt;br /&gt;
&lt;br /&gt;
       CGROUPS  --  Control Groups&lt;br /&gt;
           The names of the control group(s) to which a process belongs, or `-&#039; if not applicable for that process.&lt;br /&gt;
&lt;br /&gt;
           Control Groups provide for allocating resources (cpu, memory, network bandwidth, etc.) among installation-defined groups of processes.  They enable fine-grained control over  allocating,  denying,  prioritizing,  managing  and&lt;br /&gt;
           monitoring those resources.&lt;br /&gt;
&lt;br /&gt;
           Many different hierarchies of cgroups can exist simultaneously on a system and each hierarchy is attached to one or more subsystems.  A subsystem represents a single resource.&lt;br /&gt;
&lt;br /&gt;
           Note:  The  CGROUPS  field,  unlike  most  columns,  is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to the maximum 512 characters).  Even so, such&lt;br /&gt;
           variable width fields could still suffer truncation.  See topic 5c. SCROLLING a Window for additional information on accessing any truncated data.&lt;br /&gt;
&lt;br /&gt;
       CODE  --  Code Size (KiB)&lt;br /&gt;
           The amount of physical memory currently devoted to executable code, also known as the Text Resident Set size or TRS.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       COMMAND  --  Command Name or Command Line&lt;br /&gt;
           Display the command line used to start a task or the name of the associated program.  You toggle between command line and name with `c&#039;, which is both a command-line option and an interactive command.&lt;br /&gt;
&lt;br /&gt;
           When you&#039;ve chosen to display command lines, processes without a command line (like kernel threads) will be shown with only the program name in brackets, as in this example:&lt;br /&gt;
               [kthreadd]&lt;br /&gt;
&lt;br /&gt;
           This field may also be impacted by the forest view display mode.  See the `V&#039; interactive command for additional information regarding that mode.&lt;br /&gt;
&lt;br /&gt;
           Note: The COMMAND field, unlike most columns, is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to  the  maximum  512  characters).   Even  so,  such&lt;br /&gt;
           variable width fields could still suffer truncation.  This is especially true for this field when command lines are being displayed (the `c&#039; interactive command.)  See topic 5c. SCROLLING a Window for additional information on&lt;br /&gt;
           accessing any truncated data.&lt;br /&gt;
&lt;br /&gt;
       DATA  --  Data + Stack Size (KiB)&lt;br /&gt;
           The  amount  of  private  memory  reserved  by  a process.  It is also known as the Data Resident Set or DRS.  Such memory may not yet be mapped to physical memory (RES) but will always be included in the virtual memory (VIRT)&lt;br /&gt;
           amount.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       ELAPSED  --  Elapsed Running Time&lt;br /&gt;
           The length of time since a process was started.  Thus, the most recently started task will display the smallest time interval.&lt;br /&gt;
&lt;br /&gt;
           The value will be expressed as `HH,MM&#039; (hours,minutes) but is subject to additional scaling if the interval becomes too great to fit column width.  At that point it will be scaled to `DD+HH&#039; (days+hours) and possibly beyond.&lt;br /&gt;
&lt;br /&gt;
       ENVIRON  --  Environment variables&lt;br /&gt;
           Display all of the environment variables, if any, as seen by the respective processes.  These variables will be displayed in their raw native order, not the sorted order you are accustomed to seeing with an unqualified `set&#039;.&lt;br /&gt;
&lt;br /&gt;
           Note: The ENVIRON field, unlike most columns, is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to  the  maximum  512  characters).   Even  so,  such&lt;br /&gt;
           variable width fields could still suffer truncation.  This is especially true for this field.  See topic 5c. SCROLLING a Window for additional information on accessing any truncated data.&lt;br /&gt;
&lt;br /&gt;
       EXE  --  Executable Path&lt;br /&gt;
           Where available, this is the full path to the executable, including the program name.&lt;br /&gt;
&lt;br /&gt;
           Note: The EXE field, unlike most columns, is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to the maximum 512 characters).&lt;br /&gt;
&lt;br /&gt;
       Flags  --  Task Flags&lt;br /&gt;
           This column represents the task&#039;s current scheduling flags which are expressed in hexadecimal notation and with zeros suppressed.  These flags are officially documented in &amp;lt;linux/sched.h&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
       GID  --  Group Id&lt;br /&gt;
           The effective group ID.&lt;br /&gt;
&lt;br /&gt;
       GROUP  --  Group Name&lt;br /&gt;
           The effective group name.&lt;br /&gt;
&lt;br /&gt;
       LOGID  --  Login User Id&lt;br /&gt;
           The user ID used at login.  When -1 is displayed it means this information is not available.&lt;br /&gt;
&lt;br /&gt;
       LXC  --  Lxc Container Name&lt;br /&gt;
           The name of the lxc container within which a task is running.  If a process is not running inside a container, a dash (`-&#039;) will be shown.&lt;br /&gt;
&lt;br /&gt;
       NI  --  Nice Value&lt;br /&gt;
           The  nice  value  of  the task.  A negative nice value means higher priority, whereas a positive nice value means lower priority.  Zero in this field simply means priority will not be adjusted in determining a task&#039;s dispatch-&lt;br /&gt;
           ability.&lt;br /&gt;
&lt;br /&gt;
           Note: This value only affects scheduling priority relative to other processes in the same autogroup.  See the `AGID&#039; and `AGNI&#039; fields for additional information on autogroups.&lt;br /&gt;
&lt;br /&gt;
       NU  --  Last known NUMA node&lt;br /&gt;
           A number representing the NUMA node associated with the last used processor (`P&#039;).  When -1 is displayed it means that NUMA information is not available.&lt;br /&gt;
&lt;br /&gt;
           See the `2&#039; and `3&#039; interactive commands for additional NUMA provisions affecting the summary area.&lt;br /&gt;
&lt;br /&gt;
       OOMa  --  Out of Memory Adjustment Factor&lt;br /&gt;
           The value, ranging from -1000 to +1000, added to the current out of memory score (OOMs) which is then used to determine which task to kill when memory is exhausted.&lt;br /&gt;
&lt;br /&gt;
       OOMs  --  Out of Memory Score&lt;br /&gt;
           The value, ranging from 0 to +1000, used to select task(s) to kill when memory is exhausted.  Zero translates to `never kill&#039; whereas 1000 means `always kill&#039;.&lt;br /&gt;
&lt;br /&gt;
       P  --  Last used CPU (SMP)&lt;br /&gt;
           A number representing the last used processor.  In a true SMP environment this will likely change frequently since the kernel intentionally uses weak affinity.  Also, the very act of running top may break  this  weak  affinity&lt;br /&gt;
           and cause more processes to change CPUs more often (because of the extra demand for cpu time).&lt;br /&gt;
&lt;br /&gt;
       PGRP  --  Process Group Id&lt;br /&gt;
           Every  process  is  member  of a unique process group which is used for distribution of signals and by terminals to arbitrate requests for their input and output.  When a process is created (forked), it becomes a member of the&lt;br /&gt;
           process group of its parent.  By convention, this value equals the process ID (see PID) of the first member of a process group, called the process group leader.&lt;br /&gt;
&lt;br /&gt;
       PID  --  Process Id&lt;br /&gt;
           The task&#039;s unique process ID, which periodically wraps, though never restarting at zero.  In kernel terms, it is a dispatchable entity defined by a task_struct.&lt;br /&gt;
&lt;br /&gt;
           This value may also be used as: a process group ID (see PGRP); a session ID for the session leader (see SID); a thread group ID for the thread group leader (see TGID); and a TTY process group ID for the  process  group  leader&lt;br /&gt;
           (see TPGID).&lt;br /&gt;
&lt;br /&gt;
       PPID  --  Parent Process Id&lt;br /&gt;
           The process ID (pid) of a task&#039;s parent.&lt;br /&gt;
&lt;br /&gt;
       PR  --  Priority&lt;br /&gt;
           The scheduling priority of the task.  If you see `rt&#039; in this field, it means the task is running under real time scheduling priority.&lt;br /&gt;
&lt;br /&gt;
           Under linux, real time priority is somewhat misleading since traditionally the operating itself was not preemptible.  And while the 2.6 kernel can be made mostly preemptible, it is not always so.&lt;br /&gt;
&lt;br /&gt;
       PSS  --  Proportional Resident Memory, smaps (KiB)&lt;br /&gt;
           The proportion of this task&#039;s share of `RSS&#039; where each page is divided by the number of processes sharing it.  It is also the sum of the `PSan&#039;, `PSfd&#039; and `PSsh&#039; fields.&lt;br /&gt;
&lt;br /&gt;
           For example, if a process has 1000 resident pages alone and 1000 resident pages shared with another process, its `PSS&#039; would be 1500 (times page size).&lt;br /&gt;
&lt;br /&gt;
           Accessing smaps values is 10x more costly than other memory statistics and data for other users requires root privileges.&lt;br /&gt;
&lt;br /&gt;
       PSan  --  Proportional Anonymous Memory, smaps (KiB)&lt;br /&gt;
       PSfd  --  Proportional File Memory, smaps (KiB)&lt;br /&gt;
       PSsh  --  Proportional Shmem Memory, smaps (KiB)&lt;br /&gt;
           As was true for `PSS&#039; above (total proportional resident memory), these fields represent the proportion of this task&#039;s share of each type of memory divided by the number of processes sharing it.&lt;br /&gt;
&lt;br /&gt;
           Accessing smaps values is 10x more costly than other memory statistics and data for other users requires root privileges.&lt;br /&gt;
&lt;br /&gt;
       RES  --  Resident Memory Size (KiB)&lt;br /&gt;
           A subset of the virtual address space (VIRT) representing the non-swapped physical memory a task is currently using.  It is also the sum of the `RSan&#039;, `RSfd&#039; and `RSsh&#039; fields.&lt;br /&gt;
&lt;br /&gt;
           It can include private anonymous pages, private pages mapped to files (including program images and shared libraries) plus shared anonymous pages.  All such memory is backed by the swap file represented separately under SWAP.&lt;br /&gt;
&lt;br /&gt;
           Lastly, this field may also include shared file-backed pages which, when modified, act as a dedicated swap file and thus will never impact SWAP.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       RSS  --  Resident Memory, smaps (KiB)&lt;br /&gt;
           Another, more precise view of process non-swapped physical memory.  It is obtained from the `smaps_rollup&#039; file and is generally slightly larger than that shown for `RES&#039;.&lt;br /&gt;
&lt;br /&gt;
           Accessing smaps values is 10x more costly than other memory statistics and data for other users requires root privileges.&lt;br /&gt;
&lt;br /&gt;
       RSan  --  Resident Anonymous Memory Size (KiB)&lt;br /&gt;
           A subset of resident memory (RES) representing private pages not mapped to a file.&lt;br /&gt;
&lt;br /&gt;
       RSfd  --  Resident File-Backed Memory Size (KiB)&lt;br /&gt;
           A subset of resident memory (RES) representing the implicitly shared pages supporting program images and shared libraries.  It also includes explicit file mappings, both private and shared.&lt;br /&gt;
&lt;br /&gt;
       RSlk  --  Resident Locked Memory Size (KiB)&lt;br /&gt;
           A subset of resident memory (RES) which cannot be swapped out.&lt;br /&gt;
&lt;br /&gt;
       RSsh  --  Resident Shared Memory Size (KiB)&lt;br /&gt;
           A subset of resident memory (RES) representing the explicitly shared anonymous shm*/mmap pages.&lt;br /&gt;
&lt;br /&gt;
       RUID  --  Real User Id&lt;br /&gt;
           The real user ID.&lt;br /&gt;
&lt;br /&gt;
       RUSER  --  Real User Name&lt;br /&gt;
           The real user name.&lt;br /&gt;
&lt;br /&gt;
       S  --  Process Status&lt;br /&gt;
           The status of the task which can be one of:&lt;br /&gt;
               D = uninterruptible sleep&lt;br /&gt;
               I = idle&lt;br /&gt;
               R = running&lt;br /&gt;
               S = sleeping&lt;br /&gt;
               T = stopped by job control signal&lt;br /&gt;
               t = stopped by debugger during trace&lt;br /&gt;
               Z = zombie&lt;br /&gt;
&lt;br /&gt;
           Tasks  shown  as  running  should  be  more  properly  thought  of as ready to run  --  their task_struct is simply represented on the Linux run-queue.  Even without a true SMP machine, you may see numerous tasks in this state&lt;br /&gt;
           depending on top&#039;s delay interval and nice value.&lt;br /&gt;
&lt;br /&gt;
       SHR  --  Shared Memory Size (KiB)&lt;br /&gt;
           A subset of resident memory (RES) that may be used by other processes.  It will include shared anonymous pages and shared file-backed pages.  It also includes private pages mapped  to  files  representing  program  images  and&lt;br /&gt;
           shared libraries.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       SID  --  Session Id&lt;br /&gt;
           A  session is a collection of process groups (see PGRP), usually established by the login shell.  A newly forked process joins the session of its creator.  By convention, this value equals the process ID (see PID) of the first&lt;br /&gt;
           member of the session, called the session leader, which is usually the login shell.&lt;br /&gt;
&lt;br /&gt;
       STARTED  --  Start Time Interval&lt;br /&gt;
           The length of time since system boot when a process started.  Thus, the most recently started task will display the largest time interval.&lt;br /&gt;
&lt;br /&gt;
           The value will be expressed as `MM:SS&#039; (minutes:seconds).  But if the interval is too great to fit column width it will be scaled as `HH,MM&#039; (hours,minutes) and possibly beyond.&lt;br /&gt;
&lt;br /&gt;
       SUID  --  Saved User Id&lt;br /&gt;
           The saved user ID.&lt;br /&gt;
&lt;br /&gt;
       SUPGIDS  --  Supplementary Group IDs&lt;br /&gt;
           The IDs of any supplementary group(s) established at login or inherited from a task&#039;s parent.  They are displayed in a comma delimited list.&lt;br /&gt;
&lt;br /&gt;
           Note: The SUPGIDS field, unlike most columns, is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to the maximum 512 characters).&lt;br /&gt;
&lt;br /&gt;
       SUPGRPS  --  Supplementary Group Names&lt;br /&gt;
           The names of any supplementary group(s) established at login or inherited from a task&#039;s parent.  They are displayed in a comma delimited list.&lt;br /&gt;
&lt;br /&gt;
           Note: The SUPGRPS field, unlike most columns, is not fixed-width.  When displayed, it plus any other variable width columns will be allocated all remaining screen width (up to the maximum 512 characters).&lt;br /&gt;
&lt;br /&gt;
       SUSER  --  Saved User Name&lt;br /&gt;
           The saved user name.&lt;br /&gt;
&lt;br /&gt;
       SWAP  --  Swapped Size (KiB)&lt;br /&gt;
           The formerly resident portion of a task&#039;s address space written to the swap file when physical memory becomes over committed.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       TGID  --  Thread Group Id&lt;br /&gt;
           The ID of the thread group to which a task belongs.  It is the PID of the thread group leader.  In kernel terms, it represents those tasks that share an mm_struct.&lt;br /&gt;
&lt;br /&gt;
       TIME  --  CPU Time&lt;br /&gt;
           Total CPU time the task has used since it started.  When Cumulative mode is On, each process is listed with the cpu time that it and its dead children have  used.   You  toggle  Cumulative  mode  with  `S&#039;,  which  is  both  a&lt;br /&gt;
           command-line option and an interactive command.  See the `S&#039; interactive command for additional information regarding this mode.&lt;br /&gt;
&lt;br /&gt;
       TIME+  --  CPU Time, hundredths&lt;br /&gt;
           The same as TIME, but reflecting more granularity through hundredths of a second.&lt;br /&gt;
&lt;br /&gt;
       TPGID  --  Tty Process Group Id&lt;br /&gt;
           The process group ID of the foreground process for the connected tty, or -1 if a process is not connected to a terminal.  By convention, this value equals the process ID (see PID) of the process group leader (see PGRP).&lt;br /&gt;
&lt;br /&gt;
       TTY  --  Controlling Tty&lt;br /&gt;
           The  name of the controlling terminal.  This is usually the device (serial port, pty, etc.) from which the process was started, and which it uses for input or output.  However, a task need not be associated with a terminal, in&lt;br /&gt;
           which case you&#039;ll see `?&#039; displayed.&lt;br /&gt;
&lt;br /&gt;
       UID  --  User Id&lt;br /&gt;
           The effective user ID of the task&#039;s owner.&lt;br /&gt;
&lt;br /&gt;
       USED  --  Memory in Use (KiB)&lt;br /&gt;
           This field represents the non-swapped physical memory a task is using (RES) plus the swapped out portion of its address space (SWAP).&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       USER  --  User Name&lt;br /&gt;
           The effective user name of the task&#039;s owner.&lt;br /&gt;
&lt;br /&gt;
       USS  --  Unique Set Size&lt;br /&gt;
           The non-swapped portion of physical memory (`RSS&#039;) not shared with any other process.  It is derived from the `smaps_rollup&#039; file.&lt;br /&gt;
&lt;br /&gt;
           Accessing smaps values is 10x more costly than other memory statistics and data for other users requires root privileges.&lt;br /&gt;
&lt;br /&gt;
       VIRT  --  Virtual Memory Size (KiB)&lt;br /&gt;
           The total amount of virtual memory used by the task.  It includes all code, data and shared libraries plus pages that have been swapped out and pages that have been mapped but not used.&lt;br /&gt;
&lt;br /&gt;
           See `OVERVIEW, Linux Memory Types&#039; for additional details.&lt;br /&gt;
&lt;br /&gt;
       WCHAN  --  Sleeping in Function&lt;br /&gt;
           This field will show the name of the kernel function in which the task is currently sleeping.  Running tasks will display a dash (`-&#039;) in this column.&lt;br /&gt;
&lt;br /&gt;
       ioR  --  I/O Bytes Read&lt;br /&gt;
           The number of bytes a process caused to be fetched from the storage layer.&lt;br /&gt;
&lt;br /&gt;
           Root privileges are required to display `io&#039; data for other users.&lt;br /&gt;
&lt;br /&gt;
       ioRop  --  I/O Read Operations&lt;br /&gt;
           The number of read I/O operations (syscalls) for a process.  Such calls might not result in actual physical disk I/O.&lt;br /&gt;
&lt;br /&gt;
       ioW  --  I/O Bytes Written&lt;br /&gt;
           The number of bytes a process caused to be sent to the storage layer.&lt;br /&gt;
&lt;br /&gt;
       ioWop  --  I/O Write Operations&lt;br /&gt;
           The number of write I/O operations (syscalls) for a process.  Such calls might not result in actual physical disk I/O.&lt;br /&gt;
&lt;br /&gt;
       nDRT  --  Dirty Pages Count&lt;br /&gt;
           The number of pages that have been modified since they were last written to auxiliary storage.  Dirty pages must be written to auxiliary storage before the corresponding physical memory location can  be  used  for  some  other&lt;br /&gt;
           virtual page.&lt;br /&gt;
&lt;br /&gt;
           This field was deprecated with linux 2.6 and is always zero.&lt;br /&gt;
&lt;br /&gt;
       nMaj  --  Major Page Fault Count&lt;br /&gt;
           The  number  of  major  page faults that have occurred for a task.  A page fault occurs when a process attempts to read from or write to a virtual page that is not currently present in its address space.  A major page fault is&lt;br /&gt;
           when auxiliary storage access is involved in making that page available.&lt;br /&gt;
&lt;br /&gt;
       nMin  --  Minor Page Fault count&lt;br /&gt;
           The number of minor page faults that have occurred for a task.  A page fault occurs when a process attempts to read from or write to a virtual page that is not currently present in its address space.  A minor page  fault  does&lt;br /&gt;
           not involve auxiliary storage access in making that page available.&lt;br /&gt;
&lt;br /&gt;
       nTH  --  Number of Threads&lt;br /&gt;
           The number of threads associated with a process.&lt;br /&gt;
&lt;br /&gt;
       nsCGROUP  --  CGROUP namespace&lt;br /&gt;
           The Inode of the namespace used to hide the identity of the control group of which process is a member.&lt;br /&gt;
&lt;br /&gt;
       nsIPC  --  IPC namespace&lt;br /&gt;
           The Inode of the namespace used to isolate interprocess communication (IPC) resources such as System V IPC objects and POSIX message queues.&lt;br /&gt;
&lt;br /&gt;
       nsMNT  --  MNT namespace&lt;br /&gt;
           The Inode of the namespace used to isolate filesystem mount points thus offering different views of the filesystem hierarchy.&lt;br /&gt;
&lt;br /&gt;
       nsNET  --  NET namespace&lt;br /&gt;
           The Inode of the namespace used to isolate resources such as network devices, IP addresses, IP routing, port numbers, etc.&lt;br /&gt;
&lt;br /&gt;
       nsPID  --  PID namespace&lt;br /&gt;
           The  Inode of the namespace used to isolate process ID numbers meaning they need not remain unique.  Thus, each such namespace could have its own `init/systemd&#039; (PID #1) to manage various initialization tasks and reap orphaned&lt;br /&gt;
           child processes.&lt;br /&gt;
&lt;br /&gt;
       nsTIME  --  TIME namespace&lt;br /&gt;
           The Inode of the namespace which allows processes to see different system times in a way similar to the UTS namespace.&lt;br /&gt;
&lt;br /&gt;
       nsUSER  --  USER namespace&lt;br /&gt;
           The Inode of the namespace used to isolate the user and group ID numbers.  Thus, a process could have a normal unprivileged user ID outside a user namespace while having a user ID of 0, with full root privileges,  inside  that&lt;br /&gt;
           namespace.&lt;br /&gt;
&lt;br /&gt;
       nsUTS  --  UTS namespace&lt;br /&gt;
           The Inode of the namespace used to isolate hostname and NIS domain name.  UTS simply means &amp;quot;UNIX Time-sharing System&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
       vMj  --  Major Page Fault Count Delta&lt;br /&gt;
           The number of major page faults that have occurred since the last update (see nMaj).&lt;br /&gt;
&lt;br /&gt;
       vMn  --  Minor Page Fault Count Delta&lt;br /&gt;
           The number of minor page faults that have occurred since the last update (see nMin).&lt;br /&gt;
&lt;br /&gt;
   3b. MANAGING Fields&lt;br /&gt;
       After  pressing the interactive command `f&#039; (Fields Management) you will be presented with a screen showing: 1) the `current&#039; window name; 2) the designated sort field; 3) all fields in their current order along with descriptions.&lt;br /&gt;
       Entries marked with an asterisk are the currently displayed fields, screen width permitting.&lt;br /&gt;
&lt;br /&gt;
           •  As the on screen instructions indicate, you navigate among the fields with the Up and Down arrow keys.  The PgUp, PgDn, Home and End keys can also be used to quickly reach the first or last available field.&lt;br /&gt;
&lt;br /&gt;
           •  The Right arrow key selects a field for repositioning and the Left arrow key or the &amp;lt;Enter&amp;gt; key commits that field&#039;s placement.&lt;br /&gt;
&lt;br /&gt;
           •  The `d&#039; key or the &amp;lt;Space&amp;gt; bar toggles a field&#039;s display status, and thus the presence or absence of the asterisk.&lt;br /&gt;
&lt;br /&gt;
           •  The `s&#039; key designates a field as the sort field.  See topic 4c. TASK AREA Commands, SORTING for additional information regarding your selection of a sort field.&lt;br /&gt;
&lt;br /&gt;
           •  The `a&#039; and `w&#039; keys can be used to cycle through all available windows and the `q&#039; or &amp;lt;Esc&amp;gt; keys exit Fields Management.&lt;br /&gt;
&lt;br /&gt;
       The Fields Management screen can also be used to change the `current&#039; window/field group in either full-screen mode or alternate-display mode.  Whatever was targeted when `q&#039; or &amp;lt;Esc&amp;gt; was pressed will be made current as you return&lt;br /&gt;
       to the top display.  See topic 5. ALTERNATE-DISPLAY Provisions and the `g&#039; interactive command for insight into `current&#039; windows and field groups.&lt;br /&gt;
&lt;br /&gt;
       Note: Any window that has been scrolled horizontally will be reset if any field changes are made via the Fields Management screen.  Any vertical scrolled position, however, will not be affected.  See topic 5c. SCROLLING  a  Window&lt;br /&gt;
       for additional information regarding vertical and horizontal scrolling.&lt;br /&gt;
&lt;br /&gt;
4. INTERACTIVE Commands&lt;br /&gt;
       Listed below is a brief index of commands within categories.  Some commands appear more than once  --  their meaning or scope may vary depending on the context in which they are issued.&lt;br /&gt;
&lt;br /&gt;
         4a. Global-Commands&lt;br /&gt;
               &amp;lt;Ent/Sp&amp;gt; ?, =, 0,&lt;br /&gt;
               A, B, d, E, e, g, H, h, I, k, q, r, s, W, X, Y, Z,&lt;br /&gt;
               ^G, ^K, ^N, ^P, ^U, ^L, ^R&lt;br /&gt;
         4b. Summary-Area-Commands&lt;br /&gt;
               C, l, t, m, 1, 2, 3, 4, 5, !&lt;br /&gt;
         4c. Task-Area-Commands&lt;br /&gt;
               Appearance:  b, J, j, x, y, z&lt;br /&gt;
               Content:     c, F, f, O, o, S, U, u, V, v, ^E&lt;br /&gt;
               Size:        #, i, n&lt;br /&gt;
               Sorting:     &amp;lt;, &amp;gt;, f, R&lt;br /&gt;
         4d. Color-Mapping&lt;br /&gt;
               &amp;lt;Ret&amp;gt;, a, B, b, H, M, q, S, T, w, z, 0 - 7&lt;br /&gt;
         5b. Commands-for-Windows&lt;br /&gt;
               -, _, =, +, A, a, G, g, w&lt;br /&gt;
         5c. Scrolling-a-Window&lt;br /&gt;
               C, Up, Dn, Left, Right, PgUp, PgDn, Home, End&lt;br /&gt;
         5d. Searching-in-a-Window&lt;br /&gt;
               L, &amp;amp;&lt;br /&gt;
         5e. Filtering-in-a-Window&lt;br /&gt;
               O, o, ^O, =, +&lt;br /&gt;
&lt;br /&gt;
   4a. GLOBAL Commands&lt;br /&gt;
       The global interactive commands are always available in both full-screen mode and alternate-display mode.  However, some of these interactive commands are not available when running in Secure mode.&lt;br /&gt;
&lt;br /&gt;
       If you wish to know in advance whether or not your top has been secured, simply ask for help and view the system summary on the second line.&lt;br /&gt;
&lt;br /&gt;
         &amp;lt;Enter&amp;gt; or &amp;lt;Space&amp;gt;  :Refresh-Display&lt;br /&gt;
              These commands awaken top and following receipt of any input the entire display will be repainted.  They also force an update of any hotplugged cpu or physical memory changes.&lt;br /&gt;
&lt;br /&gt;
              Use either of these keys if you have a large delay interval and wish to see current status,&lt;br /&gt;
&lt;br /&gt;
          ? | h  :Help&lt;br /&gt;
              There are two help levels available.  The first will provide a reminder of all the basic interactive commands.  If top is secured, that screen will be abbreviated.&lt;br /&gt;
&lt;br /&gt;
              Typing `h&#039; or `?&#039; on that help screen will take you to help for those interactive commands applicable to alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
          =  :Exit-Display-Limits&lt;br /&gt;
              Removes  restrictions  on  what is shown.  This command will reverse any `i&#039; (idle tasks), `n&#039; (max tasks), `v&#039; (hide children) and `F&#039; focus commands that might be active.  It also provides for an exit from PID monitoring,&lt;br /&gt;
              User filtering, Other filtering, Locate processing and Combine Cpus mode.&lt;br /&gt;
&lt;br /&gt;
              Additionally, if the window has been scrolled it will be reset with this command.&lt;br /&gt;
&lt;br /&gt;
          0  :Zero-Suppress toggle&lt;br /&gt;
              This command determines whether zeros are shown or suppressed for many of the fields in a task window.  Fields like UID, GID, NI, PR or P are not affected by this toggle.&lt;br /&gt;
&lt;br /&gt;
          A  :Alternate-Display-Mode toggle&lt;br /&gt;
              This command will switch between full-screen mode and alternate-display mode.  See topic 5. ALTERNATE-DISPLAY Provisions and the `g&#039; interactive command for insight into `current&#039; windows and field groups.&lt;br /&gt;
&lt;br /&gt;
          B  :Bold-Disable/Enable toggle&lt;br /&gt;
              This command will influence use of the bold terminfo capability and alters both the summary area and task area for the `current&#039; window.  While it is intended primarily for  use  with  dumb  terminals,  it  can  be  applied&lt;br /&gt;
              anytime.&lt;br /&gt;
&lt;br /&gt;
              Note:  When  this  toggle  is  On  and  top  is  operating  in monochrome mode, the entire display will appear as normal text.  Thus, unless the `x&#039; and/or `y&#039; toggles are using reverse for emphasis, there will be no visual&lt;br /&gt;
              confirmation that they are even on.&lt;br /&gt;
&lt;br /&gt;
       *  d | s  :Change-Delay-Time-interval&lt;br /&gt;
              You will be prompted to enter the delay time, in seconds, between display updates.&lt;br /&gt;
&lt;br /&gt;
              Fractional seconds are honored, but a negative number is not allowed.  Entering 0 causes (nearly) continuous updates, with an unsatisfactory display as the system and tty driver try to keep up with top&#039;s demands.  The delay&lt;br /&gt;
              value is inversely proportional to system loading, so set it with care.&lt;br /&gt;
&lt;br /&gt;
              If at any time you wish to know the current delay time, simply ask for help and view the system summary on the second line.&lt;br /&gt;
&lt;br /&gt;
          E  :Enforce-Summary-Memory-Scale in Summary Area&lt;br /&gt;
              With this command you can cycle through the available summary area memory scaling which ranges from KiB (kibibytes or 1,024 bytes) through EiB (exbibytes or 1,152,921,504,606,846,976 bytes).&lt;br /&gt;
&lt;br /&gt;
              If you see a `+&#039; between a displayed number and the following label, it means that top was forced to truncate some portion of that number.  By raising the scaling factor, such truncation can be avoided.&lt;br /&gt;
&lt;br /&gt;
          e  :Enforce-Task-Memory-Scale in Task Area&lt;br /&gt;
              With this command you can cycle through the available task area memory scaling which ranges from KiB (kibibytes or 1,024 bytes) through PiB (pebibytes or 1,125,899,906,842,624 bytes).&lt;br /&gt;
&lt;br /&gt;
              While top will try to honor the selected target range, additional scaling might still be necessary in order to accommodate current values.  If you wish to see a more homogeneous result in the  memory  columns,  raising  the&lt;br /&gt;
              scaling range will usually accomplish that goal.  Raising it too high, however, is likely to produce an all zero result which cannot be suppressed with the `0&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
          g  :Choose-Another-Window/Field-Group&lt;br /&gt;
              You  will  be  prompted  to  enter  a  number  between 1 and 4 designating the field group which should be made the `current&#039; window.  You will soon grow comfortable with these 4 windows, especially after experimenting with&lt;br /&gt;
              alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
          H  :Threads-mode toggle&lt;br /&gt;
              When this toggle is On, individual threads will be displayed for all processes in all visible task windows.  Otherwise, top displays a summation of all threads in each process.&lt;br /&gt;
&lt;br /&gt;
          I  :Irix/Solaris-Mode toggle&lt;br /&gt;
              When operating in Solaris mode (`I&#039; toggled Off), a task&#039;s cpu usage will be divided by the total number of CPUs.  After issuing this command, you&#039;ll be told the new state of this toggle.&lt;br /&gt;
&lt;br /&gt;
       *  k  :Kill-a-task&lt;br /&gt;
              You will be prompted for a PID and then the signal to send.&lt;br /&gt;
&lt;br /&gt;
              Entering no PID or a negative number will be interpreted as the default shown in the prompt (the first task displayed).  A PID value of zero means the top program itself.&lt;br /&gt;
&lt;br /&gt;
              The default signal, as reflected in the prompt, is SIGTERM.  However, you can send any signal, via number or name.&lt;br /&gt;
&lt;br /&gt;
              If you wish to abort the kill process, do one of the following depending on your progress:&lt;br /&gt;
                  1) at the pid prompt, type an invalid number&lt;br /&gt;
                  2) at the signal prompt, type 0 (or any invalid signal)&lt;br /&gt;
                  3) at any prompt, type &amp;lt;Esc&amp;gt;&lt;br /&gt;
&lt;br /&gt;
          q  :Quit&lt;br /&gt;
&lt;br /&gt;
       *  r  :Renice-a-Task&lt;br /&gt;
              You will be prompted for a PID and then the value to nice it to.&lt;br /&gt;
&lt;br /&gt;
              Entering no PID or a negative number will be interpreted as the default shown in the prompt (the first task displayed).  A PID value of zero means the top program itself.&lt;br /&gt;
&lt;br /&gt;
              A positive nice value will cause a process to lose priority.  Conversely, a negative nice value will cause a process to be viewed more favorably by the kernel.  As a general rule, ordinary users can only increase  the  nice&lt;br /&gt;
              value and are prevented from lowering it.&lt;br /&gt;
&lt;br /&gt;
              If you wish to abort the renice process, do one of the following depending on your progress:&lt;br /&gt;
                  1) at the pid prompt, type an invalid number&lt;br /&gt;
                  2) at the nice prompt, type &amp;lt;Enter&amp;gt; with no input&lt;br /&gt;
                  3) at any prompt, type &amp;lt;Esc&amp;gt;&lt;br /&gt;
&lt;br /&gt;
          W  :Write-the-Configuration-File&lt;br /&gt;
              This will save all of your options and toggles plus the current display mode and delay time.  By issuing this command just before quitting top, you will be able restart later in exactly that same state.&lt;br /&gt;
&lt;br /&gt;
          X  :Extra-Fixed-Width&lt;br /&gt;
              Some fields are fixed width and not scalable.  As such, they are subject to truncation which would be indicated by a `+&#039; in the last position.&lt;br /&gt;
&lt;br /&gt;
              This interactive command can be used to alter the widths of the following fields:&lt;br /&gt;
&lt;br /&gt;
                  field  default    field  default    field   default&lt;br /&gt;
                  GID       5       GROUP     8       WCHAN      10&lt;br /&gt;
                  LOGID     5       LXC       8       nsCGROUP   10&lt;br /&gt;
                  RUID      5       RUSER     8       nsIPC      10&lt;br /&gt;
                  SUID      5       SUSER     8       nsMNT      10&lt;br /&gt;
                  UID       5       TTY       8       nsNET      10&lt;br /&gt;
                                    USER      8       nsPID      10&lt;br /&gt;
                                                      nsTIME     10&lt;br /&gt;
                                                      nsUSER     10&lt;br /&gt;
                                                      nsUTS      10&lt;br /&gt;
&lt;br /&gt;
              You will be prompted for the amount to be added to the default widths shown above.  Entering zero forces a return to those defaults.&lt;br /&gt;
&lt;br /&gt;
              If you enter a negative number, top will automatically increase the column size as needed until there is no more truncated data.&lt;br /&gt;
&lt;br /&gt;
              Note: Whether explicitly or automatically increased, the widths for these fields are never decreased by top.  To narrow them you must specify a smaller number or restore the defaults.&lt;br /&gt;
&lt;br /&gt;
          Y  :Inspect-Other-Output&lt;br /&gt;
              After  issuing  the `Y&#039; interactive command, you will be prompted for a target PID.  Typing a value or accepting the default results in a separate screen.  That screen can be used to view a variety of files or piped command&lt;br /&gt;
              output while the normal top iterative display is paused.&lt;br /&gt;
&lt;br /&gt;
              Note: This interactive command is only fully realized when supporting entries have been manually added to the end of the top configuration file.  For details on creating those entries, see topic 6b. ADDING INSPECT Entries.&lt;br /&gt;
&lt;br /&gt;
              Most of the keys used to navigate the Inspect feature are reflected in its header prologue.  There are, however, additional keys available once you have selected a particular file or command.  They are  familiar  to  anyone&lt;br /&gt;
              who has used the pager `less&#039; and are summarized here for future reference.&lt;br /&gt;
&lt;br /&gt;
                  key      function&lt;br /&gt;
                  =        alternate status-line, file or pipeline&lt;br /&gt;
                  /        find, equivalent to `L&#039; locate&lt;br /&gt;
                  n        find next, equivalent to `&amp;amp;&#039; locate next&lt;br /&gt;
                  &amp;lt;Space&amp;gt;  scroll down, equivalent to &amp;lt;PgDn&amp;gt;&lt;br /&gt;
                  b        scroll up, equivalent to &amp;lt;PgUp&amp;gt;&lt;br /&gt;
                  g        first line, equivalent to &amp;lt;Home&amp;gt;&lt;br /&gt;
                  G        last line, equivalent to &amp;lt;End&amp;gt;&lt;br /&gt;
&lt;br /&gt;
          Z  :Change-Color-Mapping&lt;br /&gt;
              This key will take you to a separate screen where you can change the colors for the `current&#039; window, or for all windows.  For details regarding this interactive command see topic 4d. COLOR Mapping.&lt;br /&gt;
&lt;br /&gt;
         ^G  :Display-Control-Groups        (Ctrl key + `g&#039;)&lt;br /&gt;
         ^K  :Display-Cmdline               (Ctrl key + `k&#039;)&lt;br /&gt;
         ^N  :Display-Environment           (Ctrl key + `n&#039;)&lt;br /&gt;
         ^P  :Display-Namesspaces           (Ctrl key + `p&#039;)&lt;br /&gt;
         ^U  :Display-Supplementary-Groups  (Ctrl key + `u&#039;)&lt;br /&gt;
              Applied  to the first process displayed, these commands will show that task&#039;s full (potentially wrapped) information.  Such data will be displayed in a separate window at the bottom of the screen while normal top monitoring&lt;br /&gt;
              continues.&lt;br /&gt;
&lt;br /&gt;
              Keying the same `Ctrl&#039; command a second time removes that separate window as does the `=&#039; command.  Keying a different `Ctrl&#039; combination, while one is already active, immediately transitions to the new information.&lt;br /&gt;
&lt;br /&gt;
              Notable among these provisions is the Ctrl+N (environment) command.  Its output can be extensive and not easily read when line wrapped.  A more readable version can be achieved with an `Inspect&#039; entry in the rcfile like the&lt;br /&gt;
              following.&lt;br /&gt;
&lt;br /&gt;
                  pipe ^I Environment ^I cat /proc/%d/environ | tr &#039;\0&#039; &#039;\n&#039;&lt;br /&gt;
&lt;br /&gt;
              See the `Y&#039; interactive command above and topic 6b. ADDING INSPECT Entries for additional information.&lt;br /&gt;
&lt;br /&gt;
              As an alternative to `Inspect&#039;, and available to all of these `Ctrl&#039; commands, the tab key can be used to highlight individual elements in the bottom window.&lt;br /&gt;
&lt;br /&gt;
         ^L  :Logged-Messages  (Ctrl key + `l&#039;)&lt;br /&gt;
              The 10 most recent messages are displayed in a separate window at the bottom of the screen while normal top monitoring continues.  Keying `^L&#039; a second time removes that window as does the `=&#039; command.  Use the tab  key  to&lt;br /&gt;
              highlight individual messages.&lt;br /&gt;
&lt;br /&gt;
       * ^R  :Renice-an-Autogroup  (Ctrl key + `r&#039;)&lt;br /&gt;
              You will be prompted for a PID and then the value for its autogroup AGNI.&lt;br /&gt;
&lt;br /&gt;
              Entering no PID will be interpreted as the default shown in the prompt (the first task displayed).&lt;br /&gt;
&lt;br /&gt;
              A  positive  AGNI  value  will  cause  processes  in that autogroup to lose priority.  Conversely, a negative value causes them to be viewed more favorably by the kernel.  Ordinary users are not allowed to set negative AGNI&lt;br /&gt;
              values.&lt;br /&gt;
&lt;br /&gt;
              If you wish to abort the renice process type &amp;lt;Esc&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
       *  The commands shown with an asterisk (`*&#039;) are not available in Secure mode, nor will they be shown on the level-1 help screen.&lt;br /&gt;
&lt;br /&gt;
   4b. SUMMARY AREA Commands&lt;br /&gt;
       The summary area interactive commands are always available in both full-screen mode and alternate-display mode.  They affect the beginning lines of your display and will determine the position of messages and prompts.&lt;br /&gt;
&lt;br /&gt;
       These commands always impact just the `current&#039; window/field group.  See topic 5. ALTERNATE-DISPLAY Provisions and the `g&#039; interactive command for insight into `current&#039; windows and field groups.&lt;br /&gt;
&lt;br /&gt;
          C  :Show-scroll-coordinates toggle&lt;br /&gt;
              Toggle an informational message which is displayed whenever the message line is not otherwise being used.  For additional information see topic 5c. SCROLLING a Window.&lt;br /&gt;
&lt;br /&gt;
          l  :Load-Average/Uptime toggle&lt;br /&gt;
              This is also the line containing the program name (possibly an alias) when operating in full-screen mode or the `current&#039; window name when operating in alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
          t  :Task/Cpu-States toggle&lt;br /&gt;
              This command affects from 2 to many summary area lines, depending on the state of the `1&#039;, `2&#039; or `3&#039; command toggles and whether or not top is running under true SMP.&lt;br /&gt;
&lt;br /&gt;
              This portion of the summary area is also influenced by the `H&#039; interactive command toggle, as reflected in the total label which shows either Tasks or Threads.&lt;br /&gt;
&lt;br /&gt;
              This command serves as a 4-way toggle, cycling through these modes:&lt;br /&gt;
                  1. detailed percentages by category&lt;br /&gt;
                  2. abbreviated user/system and total % + bar graph&lt;br /&gt;
                  3. abbreviated user/system and total % + block graph&lt;br /&gt;
                  4. turn off task and cpu states display&lt;br /&gt;
&lt;br /&gt;
              When operating in either of the graphic modes, the display becomes much more meaningful when individual CPUs or NUMA nodes are also displayed.  See the the `1&#039;, `2&#039; and `3&#039; commands below for additional information.&lt;br /&gt;
&lt;br /&gt;
          m  :Memory/Swap-Usage toggle&lt;br /&gt;
              This command affects the two summary area lines dealing with physical and virtual memory.&lt;br /&gt;
&lt;br /&gt;
              This command serves as a 4-way toggle, cycling through these modes:&lt;br /&gt;
                  1. detailed percentages by memory type&lt;br /&gt;
                  2. abbreviated % used/total available + bar graph&lt;br /&gt;
                  3. abbreviated % used/total available + block graph&lt;br /&gt;
                  4. turn off memory display&lt;br /&gt;
&lt;br /&gt;
          1  :Single/Separate-Cpu-States toggle&lt;br /&gt;
              This command affects how the `t&#039; command&#039;s Cpu States portion is shown.  Although this toggle exists primarily to serve massively-parallel SMP machines, it is not restricted to solely SMP environments.&lt;br /&gt;
&lt;br /&gt;
              When you see `%Cpu(s):&#039; in the summary area, the `1&#039; toggle is On and all cpu information is gathered in a single line.  Otherwise, each cpu is displayed separately as: `%Cpu0, %Cpu1, ...&#039;  up to available screen height.&lt;br /&gt;
&lt;br /&gt;
          2  :NUMA-Nodes/Cpu-Summary toggle&lt;br /&gt;
              This command toggles between the `1&#039; command cpu summary display (only) or a summary display plus the cpu usage statistics for each NUMA Node.  It is only available if a system has the requisite NUMA support.&lt;br /&gt;
&lt;br /&gt;
          3  :Expand-NUMA-Node&lt;br /&gt;
              You will be invited to enter a number representing a NUMA Node.  Thereafter, a node summary plus the statistics for each cpu in that node will be shown until the `1&#039;, `2&#039; or `4&#039; command toggle is pressed.  This  interactive&lt;br /&gt;
              command is only available if a system has the requisite NUMA support.&lt;br /&gt;
&lt;br /&gt;
          4  :Display-Multiple-Elements-Adjacent toggle&lt;br /&gt;
              This command toggle turns the `1&#039; toggle Off and shows multiple CPU and Memory results on each line.  Each successive `4&#039; key adds another CPU until again reverting to separate lines for CPU and Memory results.&lt;br /&gt;
&lt;br /&gt;
              A  maximum  of  8 CPUs per line can be displayed in this manner.  However, data truncation may occur before reaching the maximum.  That is definitely true when displaying detailed statistics via the `t&#039; command toggle since&lt;br /&gt;
              such data cannot be scaled like the graphic representations.&lt;br /&gt;
&lt;br /&gt;
              If one wished to quickly exit adjacent mode without cycling all the way to 8, simply use the `1&#039; command toggle.&lt;br /&gt;
&lt;br /&gt;
          5  :Display-P-Cores-and-E-Cores toggle&lt;br /&gt;
              This command toggle is only active when the `t&#039; toggle is On and the `1&#039;, `2&#039;, `3&#039; and `!&#039; toggles are Off, thus showing individual CPU results.  It assumes a platform has multiple cores of two distinct types, either multi-&lt;br /&gt;
              threaded (P-Core) or single-threaded (E-Core).&lt;br /&gt;
&lt;br /&gt;
              While normally each cpu is displayed as `%Cpu0, %Cpu1, ...&#039;, this toggle can be used to identify and/or filter those cpus by their core type, either P-Core (performance) or E-Core (efficient).&lt;br /&gt;
&lt;br /&gt;
              The 1st time `5&#039; is struck, each CPU is displayed as `%CpP&#039; or `%CpE&#039; representing the two core types.  The 2nd time, only P-Cores (%CpP) will be shown.  The 3rd time, only E-Cores (%CpE) are displayed.  When  this  command&lt;br /&gt;
              toggle is struck for the 4th time, the CPU display returns to the normal `%Cpu&#039; convention.&lt;br /&gt;
&lt;br /&gt;
              If separate performance and efficient categories are not present, this command toggle will have no effect.&lt;br /&gt;
&lt;br /&gt;
          !  :Combine-Cpus-Mode toggle&lt;br /&gt;
              This  command  toggle  is  intended  for  massively parallel SMP environments where, even with the `4&#039; command toggle, not all processors can be displayed.  With each press of `!&#039; the number of cpus combined is doubled thus&lt;br /&gt;
              reducing the total number of cpu lines displayed.&lt;br /&gt;
&lt;br /&gt;
              For example, with the first press of `!&#039; two cpus will be combined and displayed as `0-1, 2-3, ...&#039; instead of the normal `%Cpu0, %Cpu1, %Cpu2, %Cpu3, ...&#039;. With a second `!&#039; command toggle four cpus are combined and  shown&lt;br /&gt;
              as `0-3, 4-7, ...&#039;.  Then the third `!&#039; press, combining eight cpus, shows as `0-7, 8-15, ...&#039;, etc.&lt;br /&gt;
&lt;br /&gt;
              Such progression continues until individual cpus are again displayed and impacts both the `1&#039; and `4&#039; toggles (one or multiple columns).  Use the `=&#039; command to exit Combine Cpus mode.&lt;br /&gt;
&lt;br /&gt;
       Note:  If  the  entire  summary  area  has  been  toggled Off for any window, you would be left with just the message line.  In that way, you will have maximized available task rows but (temporarily) sacrificed the program name in&lt;br /&gt;
       full-screen mode or the `current&#039; window name when in alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
   4c. TASK AREA Commands&lt;br /&gt;
       The task area interactive commands are always available in full-screen mode.&lt;br /&gt;
&lt;br /&gt;
       The task area interactive commands are never available in alternate-display mode if the `current&#039; window&#039;s task display has been toggled Off (see topic 5. ALTERNATE-DISPLAY Provisions).&lt;br /&gt;
&lt;br /&gt;
       APPEARANCE of task window&lt;br /&gt;
&lt;br /&gt;
          J  :Justify-Numeric-Columns toggle&lt;br /&gt;
              Alternates between right-justified (the default) and left-justified numeric data.  If the numeric data completely fills the available column, this command toggle may impact the column header only.&lt;br /&gt;
&lt;br /&gt;
          j  :Justify-Character-Columns toggle&lt;br /&gt;
              Alternates between left-justified (the default) and right-justified character data.  If the character data completely fills the available column, this command toggle may impact the column header only.&lt;br /&gt;
&lt;br /&gt;
         The following commands will also be influenced by the state of the global `B&#039; (bold enable) toggle.&lt;br /&gt;
&lt;br /&gt;
          b  :Bold/Reverse toggle&lt;br /&gt;
              This command will impact how the `x&#039; and `y&#039; toggles are displayed.  It may also impact the summary area when a bar graph has been selected for cpu states or memory usage via the `t&#039; or `m&#039; toggles.&lt;br /&gt;
&lt;br /&gt;
          x  :Column-Highlight toggle&lt;br /&gt;
              Changes highlighting for the current sort field.  If you forget which field is being sorted this command can serve as a quick visual reminder, providing the sort field is being  displayed.   The  sort  field  might  not  be&lt;br /&gt;
              visible because:&lt;br /&gt;
                  1) there is insufficient Screen Width&lt;br /&gt;
                  2) the `f&#039; interactive command turned it Off&lt;br /&gt;
&lt;br /&gt;
          y  :Row-Highlight toggle&lt;br /&gt;
              Changes highlighting for &amp;quot;running&amp;quot; tasks.  For additional insight into this task state, see topic 3a. DESCRIPTIONS of Fields, the `S&#039; field (Process Status).&lt;br /&gt;
&lt;br /&gt;
              Use of this provision provides important insight into your system&#039;s health.  The only costs will be a few additional tty escape sequences.&lt;br /&gt;
&lt;br /&gt;
          z  :Color/Monochrome toggle&lt;br /&gt;
              Switches  the  `current&#039;  window  between your last used color scheme and the older form of black-on-white or white-on-black.  This command will alter both the summary area and task area but does not affect the state of the&lt;br /&gt;
              `x&#039;, `y&#039; or `b&#039; toggles.&lt;br /&gt;
&lt;br /&gt;
       CONTENT of task window&lt;br /&gt;
&lt;br /&gt;
          c  :Command-Line/Program-Name toggle&lt;br /&gt;
              This command will be honored whether or not the COMMAND column is currently visible.  Later, should that field come into view, the change you applied will be seen.&lt;br /&gt;
&lt;br /&gt;
          F  :Maintain-Parent-Focus toggle&lt;br /&gt;
              When in forest view mode, this key serves as a toggle to retain focus on a target task, presumably one with forked children.  If forest view mode is Off this key has no effect.&lt;br /&gt;
&lt;br /&gt;
              The toggle is applied to the first (topmost) process in the `current&#039; window.  Once established, that task is always displayed as the first (topmost) process along with its forked children.   All  other  processes  will  be&lt;br /&gt;
              suppressed.&lt;br /&gt;
&lt;br /&gt;
              Note: keys like `i&#039; (idle tasks), `n&#039; (max tasks), `v&#039; (hide children) and User/Other filtering remain accessible and can impact what is displayed.&lt;br /&gt;
&lt;br /&gt;
          f  :Fields-Management&lt;br /&gt;
              This key displays a separate screen where you can change which fields are displayed, their order and also designate the sort field.  For additional information on this interactive command see topic 3b. MANAGING Fields.&lt;br /&gt;
&lt;br /&gt;
          O | o  :Other-Filtering&lt;br /&gt;
              You  will  be  prompted  for the selection criteria which then determines which tasks will be shown in the `current&#039; window.  Your criteria can be made case sensitive or case can be ignored.  And you determine if top should&lt;br /&gt;
              include or exclude matching tasks.&lt;br /&gt;
&lt;br /&gt;
              See topic 5e. FILTERING in a window for details on these and additional related interactive commands.&lt;br /&gt;
&lt;br /&gt;
          S  :Cumulative-Time-Mode toggle&lt;br /&gt;
              When Cumulative mode is On, each process is listed with the cpu time that it and its dead children have used.&lt;br /&gt;
&lt;br /&gt;
              When Off, programs that fork into many separate tasks will appear less demanding.  For programs like `init&#039; or a shell this is appropriate but for others, like compilers, perhaps  not.   Experiment  with  two  task  windows&lt;br /&gt;
              sharing the same sort field but with different `S&#039; states and see which representation you prefer.&lt;br /&gt;
&lt;br /&gt;
              After  issuing  this  command,  you&#039;ll  be informed of the new state of this toggle.  If you wish to know in advance whether or not Cumulative mode is in effect, simply ask for help and view the window summary on the second&lt;br /&gt;
              line.&lt;br /&gt;
&lt;br /&gt;
          U | u  :Show-Specific-User-Only&lt;br /&gt;
              You will be prompted for the uid or name of the user to display.  The -u option matches on  effective user whereas the -U option matches on any user (real, effective, saved, or filesystem).&lt;br /&gt;
&lt;br /&gt;
              Thereafter, in that task window only matching users will be shown, or possibly no processes will be shown.  Prepending an exclamation point (`!&#039;) to the user id or name instructs top to display only processes with users not&lt;br /&gt;
              matching the one provided.&lt;br /&gt;
&lt;br /&gt;
              Different task windows can be used to filter different users.  Later, if you wish to monitor all users again in the `current&#039; window, re-issue this command but just press &amp;lt;Enter&amp;gt; at the prompt.&lt;br /&gt;
&lt;br /&gt;
          V  :Forest-View-Mode toggle&lt;br /&gt;
              In this mode, processes are reordered according to their parents and the layout of the COMMAND column resembles that of a tree.  In forest view mode it is still possible to toggle between program name and command line  (see&lt;br /&gt;
              the `c&#039; interactive command) or between processes and threads (see the `H&#039; interactive command).&lt;br /&gt;
&lt;br /&gt;
              Note: Typing any key affecting the sort order will exit forest view mode in the `current&#039; window.  See topic 4c. TASK AREA Commands, SORTING for information on those keys.&lt;br /&gt;
&lt;br /&gt;
          v  :Hide/Show-Children toggle&lt;br /&gt;
              When in forest view mode, this key serves as a toggle to collapse or expand the children of a parent.&lt;br /&gt;
&lt;br /&gt;
              The toggle is applied against the first (topmost) process in the `current&#039; window.  See topic 5c. SCROLLING a Window for additional information regarding vertical scrolling.&lt;br /&gt;
&lt;br /&gt;
              If the target process has not forked any children, this key has no effect.  It also has no effect when not in forest view mode.&lt;br /&gt;
&lt;br /&gt;
         ^E  :Scale-CPU-Time-fields (Ctrl key + `e&#039;)&lt;br /&gt;
              The  `time&#039;  fields  are  normally displayed with the greatest precision their widths permit.  This toggle reduces that precision until it wraps.  It also illustrates the scaling those fields might experience automatically,&lt;br /&gt;
              which usually depends on how long the system runs.&lt;br /&gt;
&lt;br /&gt;
              For example, if `MMM:SS.hh&#039; is shown, each ^E keystroke would change it to: `MM:SS&#039;, `Hours,MM&#039;, `Days+Hours&#039; and finally `Weeks+Days&#039;.&lt;br /&gt;
&lt;br /&gt;
              Not all time fields are subject to the full range of such scaling.&lt;br /&gt;
&lt;br /&gt;
       SIZE of task window&lt;br /&gt;
&lt;br /&gt;
          i  :Idle-Process toggle&lt;br /&gt;
              Displays all tasks or just active tasks.  When this toggle is Off, tasks that have not used any CPU since the last update will not be displayed.  However, due to the granularity of the %CPU and TIME+ fields, some  processes&lt;br /&gt;
              may still be displayed that appear to have used no CPU.&lt;br /&gt;
&lt;br /&gt;
              If this command is applied to the last task display when in alternate-display mode, then it will not affect the window&#039;s size, as all prior task displays will have already been painted.&lt;br /&gt;
&lt;br /&gt;
          n | #  :Set-Maximum-Tasks&lt;br /&gt;
              You will be prompted to enter the number of tasks to display.  The lessor of your number and available screen rows will be used.&lt;br /&gt;
&lt;br /&gt;
              When  used  in  alternate-display  mode,  this is the command that gives you precise control over the size of each currently visible task display, except for the very last.  It will not affect the last window&#039;s size, as all&lt;br /&gt;
              prior task displays will have already been painted.&lt;br /&gt;
&lt;br /&gt;
              Note: If you wish to increase the size of the last visible task display when in alternate-display mode, simply decrease the size of the task display(s) above it.&lt;br /&gt;
&lt;br /&gt;
       SORTING of task window&lt;br /&gt;
&lt;br /&gt;
          For compatibility, this top supports most of the former top sort keys.  Since this is primarily a service to former top users, these commands do not appear on any help screen.&lt;br /&gt;
                command   sorted-field                  supported&lt;br /&gt;
                A         start time (non-display)      No&lt;br /&gt;
                M         %MEM                          Yes&lt;br /&gt;
                N         PID                           Yes&lt;br /&gt;
                P         %CPU                          Yes&lt;br /&gt;
                T         TIME+                         Yes&lt;br /&gt;
&lt;br /&gt;
          Before using any of the following sort provisions, top suggests that you temporarily turn on column highlighting using the `x&#039; interactive command.  That will help ensure that the actual sort environment matches your intent.&lt;br /&gt;
&lt;br /&gt;
          The following interactive commands will only be honored when the current sort field is visible.  The sort field might not be visible because:&lt;br /&gt;
                1) there is insufficient Screen Width&lt;br /&gt;
                2) the `f&#039; interactive command turned it Off&lt;br /&gt;
&lt;br /&gt;
             &amp;lt;  :Move-Sort-Field-Left&lt;br /&gt;
                 Moves the sort column to the left unless the current sort field is the first field being displayed.&lt;br /&gt;
&lt;br /&gt;
             &amp;gt;  :Move-Sort-Field-Right&lt;br /&gt;
                 Moves the sort column to the right unless the current sort field is the last field being displayed.&lt;br /&gt;
&lt;br /&gt;
          The following interactive commands will always be honored whether or not the current sort field is visible.&lt;br /&gt;
&lt;br /&gt;
             f  :Fields-Management&lt;br /&gt;
                 This key displays a separate screen where you can change which field is used as the sort column, among other functions.  This can be a convenient way to simply verify the current sort field, when running top with  column&lt;br /&gt;
                 highlighting turned Off.&lt;br /&gt;
&lt;br /&gt;
             R  :Reverse/Normal-Sort-Field toggle&lt;br /&gt;
                 Using this interactive command you can alternate between high-to-low and low-to-high sorts.&lt;br /&gt;
&lt;br /&gt;
   4d. COLOR Mapping&lt;br /&gt;
       When you issue the `Z&#039; interactive command, you will be presented with a separate screen.  That screen can be used to change the colors in just the `current&#039; window or in all four windows before returning to the top display.&lt;br /&gt;
&lt;br /&gt;
       The following interactive commands are available.&lt;br /&gt;
           4 upper case letters to select a target&lt;br /&gt;
           8 numbers to select a color&lt;br /&gt;
           normal toggles available&lt;br /&gt;
               B         :bold disable/enable&lt;br /&gt;
               b         :running tasks &amp;quot;bold&amp;quot;/reverse&lt;br /&gt;
               z         :color/mono&lt;br /&gt;
           other commands available&lt;br /&gt;
               a/w       :apply, then go to next/prior&lt;br /&gt;
               &amp;lt;Enter&amp;gt;   :apply and exit&lt;br /&gt;
               q         :abandon current changes and exit&lt;br /&gt;
&lt;br /&gt;
       If  you use `a&#039; or `w&#039; to cycle the targeted window, you will have applied the color scheme that was displayed when you left that window.  You can, of course, easily return to any window and reapply different colors or turn colors&lt;br /&gt;
       Off completely with the `z&#039; toggle.&lt;br /&gt;
&lt;br /&gt;
       The Color Mapping screen can also be used to change the `current&#039; window/field group in either full-screen mode or alternate-display mode.  Whatever was targeted when `q&#039; or &amp;lt;Enter&amp;gt; was pressed will be made current as  you  return&lt;br /&gt;
       to the top display.&lt;br /&gt;
&lt;br /&gt;
5. ALTERNATE-DISPLAY Provisions&lt;br /&gt;
   5a. WINDOWS Overview&lt;br /&gt;
       Field Groups/Windows:&lt;br /&gt;
          In  full-screen mode there is a single window represented by the entire screen.  That single window can still be changed to display 1 of 4 different field groups (see the `g&#039; interactive command, repeated below).  Each of the 4&lt;br /&gt;
          field groups has a unique separately configurable summary area and its own configurable task area.&lt;br /&gt;
&lt;br /&gt;
          In alternate-display mode, those 4 underlying field groups can now be made visible simultaneously, or can be turned Off individually at your command.&lt;br /&gt;
&lt;br /&gt;
          The summary area will always exist, even if it&#039;s only the message line.  At any given time only one summary area can be displayed.  However, depending on your commands, there could be from zero to four  separate  task  displays&lt;br /&gt;
          currently showing on the screen.&lt;br /&gt;
&lt;br /&gt;
       Current Window:&lt;br /&gt;
          The `current&#039; window is the window associated with the summary area and the window to which task related commands are always directed.  Since in alternate-display mode you can toggle the task display Off, some commands might be&lt;br /&gt;
          restricted for the `current&#039; window.&lt;br /&gt;
&lt;br /&gt;
          A further complication arises when you have toggled the first summary area line Off.  With the loss of the window name (the `l&#039; toggled line), you&#039;ll not easily know what window is the `current&#039; window.&lt;br /&gt;
&lt;br /&gt;
   5b. COMMANDS for Windows&lt;br /&gt;
          - | _  :Show/Hide-Window(s) toggles&lt;br /&gt;
              The  `-&#039; key turns the `current&#039; window&#039;s task display On and Off.  When On, that task area will show a minimum of the columns header you&#039;ve established with the `f&#039; interactive command.  It will also reflect any other task&lt;br /&gt;
              area options/toggles you&#039;ve applied yielding zero or more tasks.&lt;br /&gt;
&lt;br /&gt;
              The `_&#039; key does the same for all task displays.  In other words, it switches between the currently visible task display(s) and any task display(s) you had toggled Off.  If all 4 task displays are  currently  visible,  this&lt;br /&gt;
              interactive command will leave the summary area as the only display element.&lt;br /&gt;
&lt;br /&gt;
       *  = | +  :Equalize/Reset-Window(s)&lt;br /&gt;
              The `=&#039; key forces the `current&#039; window&#039;s task display to be visible.  It also reverses any active `i&#039; (idle tasks), `n&#039; (max tasks), `u/U&#039; (user filter), `o/O&#039; (other filter), `v&#039; (hide children), `F&#039; focused, `L&#039; (locate)&lt;br /&gt;
              and `!&#039; (combine cpus) commands.  Also, if the window had been scrolled, it will be reset with this command.  See topic 5c. SCROLLING a Window for additional information regarding vertical and horizontal scrolling.&lt;br /&gt;
&lt;br /&gt;
              The `+&#039; key does the same for all windows.  The four task displays will reappear, evenly balanced, while retaining any customizations previously applied beyond those noted for the `=&#039; command toggle.&lt;br /&gt;
&lt;br /&gt;
       *  A  :Alternate-Display-Mode toggle&lt;br /&gt;
              This command will switch between full-screen mode and alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
              The first time you issue this command, all four task displays will be shown.  Thereafter when you switch modes, you will see only the task display(s) you&#039;ve chosen to make visible.&lt;br /&gt;
&lt;br /&gt;
       *  a | w  :Next-Window-Forward/Backward&lt;br /&gt;
              This will change the `current&#039; window, which in turn changes the window to which commands are directed.  These keys act in a circular fashion so you can reach any desired window using either key.&lt;br /&gt;
&lt;br /&gt;
              Assuming the window name is visible (you have not toggled `l&#039; Off), whenever the `current&#039; window name loses its emphasis/color, that&#039;s a reminder the task display is Off and many commands will be restricted.&lt;br /&gt;
&lt;br /&gt;
          G  :Change-Window/Field-Group-Name&lt;br /&gt;
              You will be prompted for a new name to be applied to the `current&#039; window.  It does not require that the window name be visible (the `l&#039; toggle to be On).&lt;br /&gt;
&lt;br /&gt;
       *  The interactive commands shown with an asterisk (`*&#039;) have use beyond alternate-display mode.&lt;br /&gt;
              =, A, g    are always available&lt;br /&gt;
              a, w       act the same with color mapping&lt;br /&gt;
                         and fields management&lt;br /&gt;
&lt;br /&gt;
       *  g  :Choose-Another-Window/Field-Group&lt;br /&gt;
              You will be prompted to enter a number between 1 and 4 designating the field group which should be made the `current&#039; window.&lt;br /&gt;
&lt;br /&gt;
              In full-screen mode, this command is necessary to alter the `current&#039; window.  In alternate-display mode, it is simply a less convenient alternative to the `a&#039; and `w&#039; commands.&lt;br /&gt;
&lt;br /&gt;
   5c. SCROLLING a Window&lt;br /&gt;
       Typically  a  task  window  is  a  partial view into a system&#039;s total tasks/threads which shows only some of the available fields/columns.  With these scrolling keys, you can move that view vertically or horizontally to reveal any&lt;br /&gt;
       desired task or column.&lt;br /&gt;
&lt;br /&gt;
       Up,PgUp  :Scroll-Tasks&lt;br /&gt;
           Move the view up toward the first task row, until the first task is displayed at the top of the `current&#039; window.  The Up arrow key moves a single line while PgUp scrolls the entire window.&lt;br /&gt;
&lt;br /&gt;
       Down,PgDn  :Scroll-Tasks&lt;br /&gt;
           Move the view down toward the last task row, until the last task is the only task displayed at the top of the `current&#039; window.  The Down arrow key moves a single line while PgDn scrolls the entire window.&lt;br /&gt;
&lt;br /&gt;
       Left,Right  :Scroll-Columns&lt;br /&gt;
           Move the view of displayable fields horizontally one column at a time.&lt;br /&gt;
&lt;br /&gt;
           Note: As a reminder, some fields/columns are not fixed-width but allocated all remaining screen width when visible.  When scrolling right or left, that feature may produce some unexpected results initially.&lt;br /&gt;
&lt;br /&gt;
           Additionally, there are special provisions for any variable width field when positioned as the last displayed field.  Once that field is reached via the right arrow key, and is thus the only  column  shown,  you  can  continue&lt;br /&gt;
           scrolling horizontally within such a field.  See the `C&#039; interactive command below for additional information.&lt;br /&gt;
&lt;br /&gt;
       Home  :Jump-to-Home-Position&lt;br /&gt;
           Reposition the display to the un-scrolled coordinates.&lt;br /&gt;
&lt;br /&gt;
       End  :Jump-to-End-Position&lt;br /&gt;
           Reposition the display so that the rightmost column reflects the last displayable field and the bottom task row represents the last task.&lt;br /&gt;
&lt;br /&gt;
           Note: From this position it is still possible to scroll down and right using the arrow keys.  This is true until a single column and a single task is left as the only display element.&lt;br /&gt;
&lt;br /&gt;
       C  :Show-scroll-coordinates toggle&lt;br /&gt;
           Toggle an informational message which is displayed whenever the message line is not otherwise being used.  That message will take one of two forms depending on whether or not a variable width column has also been scrolled.&lt;br /&gt;
&lt;br /&gt;
             scroll coordinates: y = n/n (tasks), x = n/n (fields)&lt;br /&gt;
             scroll coordinates: y = n/n (tasks), x = n/n (fields) + nn&lt;br /&gt;
&lt;br /&gt;
           The  coordinates  shown  as  n/n  are  relative  to  the  upper left corner of the `current&#039; window.  The additional `+ nn&#039; represents the displacement into a variable width column when it has been scrolled horizontally.  Such&lt;br /&gt;
           displacement occurs in normal 8 character tab stop amounts via the right and left arrow keys.&lt;br /&gt;
&lt;br /&gt;
           y = n/n (tasks)&lt;br /&gt;
               The first n represents the topmost visible task and is controlled by scrolling keys.  The second n is updated automatically to reflect total tasks.&lt;br /&gt;
&lt;br /&gt;
           x = n/n (fields)&lt;br /&gt;
               The first n represents the leftmost displayed column and is controlled by scrolling keys.  The second n is the total number of displayable fields and is established with the `f&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
       The above interactive commands are always available in full-screen mode but never available in alternate-display mode if the `current&#039; window&#039;s task display has been toggled Off.&lt;br /&gt;
&lt;br /&gt;
       Note: When any form of filtering is active, you can expect some slight aberrations when scrolling since not all tasks will be visible.  This is particularly apparent when using the Up/Down arrow keys.&lt;br /&gt;
&lt;br /&gt;
   5d. SEARCHING in a Window&lt;br /&gt;
       You can use these interactive commands to locate a task row containing a particular value.&lt;br /&gt;
&lt;br /&gt;
       L  :Locate-a-string&lt;br /&gt;
           You will be prompted for the case-sensitive string to locate starting from the current window coordinates.  There are no restrictions on search string content.&lt;br /&gt;
&lt;br /&gt;
           Searches are not limited to values from a single field or column.  All of the values displayed in a task row are allowed in a search string.  You may include spaces, numbers, symbols and even forest view artwork.&lt;br /&gt;
&lt;br /&gt;
           Keying &amp;lt;Enter&amp;gt; with no input will effectively disable the `&amp;amp;&#039; key until a new search string is entered.&lt;br /&gt;
&lt;br /&gt;
       &amp;amp;  :Locate-next&lt;br /&gt;
           Assuming a search string has been established, top will attempt to locate the next occurrence.&lt;br /&gt;
&lt;br /&gt;
       When a match is found, the current window is repositioned vertically so the task row containing that string is first.  The scroll coordinates message can provide confirmation of such vertical repositioning (see the `C&#039; interactive&lt;br /&gt;
       command).  Horizontal scrolling, however, is never altered via searching.&lt;br /&gt;
&lt;br /&gt;
       The availability of a matching string will be influenced by the following factors.&lt;br /&gt;
&lt;br /&gt;
          a. Which fields are displayable from the total available,&lt;br /&gt;
             see topic 3b. MANAGING Fields.&lt;br /&gt;
&lt;br /&gt;
          b. Scrolling a window vertically and/or horizontally,&lt;br /&gt;
             see topic 5c. SCROLLING a Window.&lt;br /&gt;
&lt;br /&gt;
          c. The state of the command/command-line toggle,&lt;br /&gt;
             see the `c&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
          d. The stability of the chosen sort column,&lt;br /&gt;
             for example PID is good but %CPU bad.&lt;br /&gt;
&lt;br /&gt;
       If a search fails, restoring the `current&#039; window home (unscrolled) position, scrolling horizontally, displaying command-lines or choosing a more stable sort field could yet produce a successful `&amp;amp;&#039; search.&lt;br /&gt;
&lt;br /&gt;
       The above interactive commands are always available in full-screen mode but never available in alternate-display mode if the `current&#039; window&#039;s task display has been toggled Off.&lt;br /&gt;
&lt;br /&gt;
   5e. FILTERING in a Window&lt;br /&gt;
       You can use this `Other Filter&#039; feature to establish selection criteria which will then determine which tasks are shown in the `current&#039; window.  Such filters can be  made  persistent  if  preserved  in  the  rcfile  via  the  `W&#039;&lt;br /&gt;
       interactive command.&lt;br /&gt;
&lt;br /&gt;
       Establishing  a  filter requires: 1) a field name; 2) an operator; and 3) a selection value, as a minimum.  This is the most complex of top&#039;s user input requirements so, when you make a mistake, command recall will be your friend.&lt;br /&gt;
       Remember the Up/Down arrow keys or their aliases when prompted for input.&lt;br /&gt;
&lt;br /&gt;
       Filter Basics&lt;br /&gt;
&lt;br /&gt;
          1. field names are case sensitive and spelled as in the header&lt;br /&gt;
&lt;br /&gt;
          2. selection values need not comprise the full displayed field&lt;br /&gt;
&lt;br /&gt;
          3. a selection is either case insensitive or sensitive to case&lt;br /&gt;
&lt;br /&gt;
          4. the default is inclusion, prepending `!&#039; denotes exclusions&lt;br /&gt;
&lt;br /&gt;
          5. multiple selection criteria can be applied to a task window&lt;br /&gt;
&lt;br /&gt;
          6. inclusion and exclusion criteria can be used simultaneously&lt;br /&gt;
&lt;br /&gt;
          7. the 1 equality and 2 relational filters can be freely mixed&lt;br /&gt;
&lt;br /&gt;
          8. separate unique filters are maintained for each task window&lt;br /&gt;
&lt;br /&gt;
          If a field is not turned on or is not currently in view, then your selection criteria will not affect the display.  Later, should a filtered field become visible, the selection criteria will then be applied.&lt;br /&gt;
&lt;br /&gt;
       Keyboard Summary&lt;br /&gt;
&lt;br /&gt;
         O  :Other-Filter (upper case)&lt;br /&gt;
             You will be prompted to establish a case sensitive filter.&lt;br /&gt;
&lt;br /&gt;
         o  :Other-Filter (lower case)&lt;br /&gt;
             You will be prompted to establish a filter that ignores case when matching.&lt;br /&gt;
&lt;br /&gt;
        ^O  :Show-Active-Filters (Ctrl key + `o&#039;)&lt;br /&gt;
             This can serve as a reminder of which filters are active in the `current&#039; window.  A summary will be shown on the message line until you press the &amp;lt;Enter&amp;gt; key.&lt;br /&gt;
&lt;br /&gt;
         =  :Reset-Filtering in current window&lt;br /&gt;
             This clears all of your selection criteria in the `current&#039; window.  It also has additional impact so please see topic 4a. GLOBAL Commands.&lt;br /&gt;
&lt;br /&gt;
         +  :Reset-Filtering in all windows&lt;br /&gt;
             This clears the selection criteria in all windows, assuming you are in alternate-display mode.  As with the `=&#039; interactive command, it too has additional consequences so you might wish to see topic 5b. COMMANDS for Windows.&lt;br /&gt;
&lt;br /&gt;
       Input Requirements&lt;br /&gt;
&lt;br /&gt;
          When prompted for selection criteria, the data you provide must take one of two forms.  There are 3 required pieces of information, with a 4th as optional.  These examples use spaces for clarity but your input  generally  would&lt;br /&gt;
          not.&lt;br /&gt;
                  #1           #2  #3              ( required )&lt;br /&gt;
                  Field-Name   ?   include-if-value&lt;br /&gt;
               !  Field-Name   ?   exclude-if-value&lt;br /&gt;
               #4                                  ( optional )&lt;br /&gt;
&lt;br /&gt;
          Items #1, #3 and #4 should be self-explanatory.  Item #2 represents both a required delimiter and the operator which must be one of either equality (`=&#039;) or relation (`&amp;lt;&#039; or `&amp;gt;&#039;).&lt;br /&gt;
&lt;br /&gt;
          The `=&#039; equality operator requires only a partial match and that can reduce your `if-value&#039; input requirements.  The `&amp;gt;&#039; or `&amp;lt;&#039; relational operators always employ string comparisons, even with numeric fields.  They are designed&lt;br /&gt;
          to work with a field&#039;s default justification and with homogeneous data.  When some field&#039;s numeric amounts have been subjected to scaling while others have not, that data is no longer homogeneous.&lt;br /&gt;
&lt;br /&gt;
          If  you  establish  a  relational  filter  and  you have changed the default Numeric or Character justification, that filter is likely to fail.  When a relational filter is applied to a memory field and you have not changed the&lt;br /&gt;
          scaling, it may produce misleading results.  This happens, for example, because `100.0m&#039; (MiB) would appear greater than `1.000g&#039; (GiB) when compared as strings.&lt;br /&gt;
&lt;br /&gt;
          If your filtered results appear suspect, simply altering justification or scaling may yet achieve the desired objective.  See the `j&#039;, `J&#039; and `e&#039; interactive commands for additional information.&lt;br /&gt;
&lt;br /&gt;
       Potential Problems&lt;br /&gt;
&lt;br /&gt;
          These GROUP filters could produce the exact same results or the second one might not display anything at all, just a blank task window.&lt;br /&gt;
               GROUP=root        ( only the same results when )&lt;br /&gt;
               GROUP=ROOT        ( invoked via lower case `o&#039; )&lt;br /&gt;
&lt;br /&gt;
          Either of these RES filters might yield inconsistent and/or misleading results, depending on the current memory scaling factor.  Or both filters could produce the exact same results.&lt;br /&gt;
               RES&amp;gt;9999          ( only the same results when )&lt;br /&gt;
               !RES&amp;lt;10000        ( memory scaling is at `KiB&#039; )&lt;br /&gt;
&lt;br /&gt;
          This nMin filter illustrates a problem unique to scalable fields.  This particular field can display a maximum of 4 digits, beyond which values are automatically scaled to KiB or above.   So  while  amounts  greater  than  9999&lt;br /&gt;
          exist, they will appear as 2.6m, 197k, etc.&lt;br /&gt;
               nMin&amp;gt;9999         ( always a blank task window )&lt;br /&gt;
&lt;br /&gt;
       Potential Solutions&lt;br /&gt;
&lt;br /&gt;
          These  examples  illustrate  how  Other Filtering can be creatively applied to achieve almost any desired result.  Single quotes are sometimes shown to delimit the spaces which are part of a filter or to represent a request for&lt;br /&gt;
          status (^O) accurately.  But if you used them with if-values in real life, no matches would be found.&lt;br /&gt;
&lt;br /&gt;
          Assuming field nTH is displayed, the first filter will result in only multi-threaded processes being shown.  It also reminds us that a trailing space is part of every displayed field.  The second filter achieves the exact  same&lt;br /&gt;
          results with less typing.&lt;br /&gt;
               !nTH=` 1 &#039;                ( ` for clarity only )&lt;br /&gt;
               nTH&amp;gt;1                     ( same with less i/p )&lt;br /&gt;
&lt;br /&gt;
          With Forest View mode active and the COMMAND column in view, this filter effectively collapses child processes so that just 3 levels are shown.&lt;br /&gt;
               !COMMAND=`       `- &#039;     ( ` for clarity only )&lt;br /&gt;
&lt;br /&gt;
          The  final  two  filters  appear  as  in  response  to  the  status request key (^O).  In reality, each filter would have required separate input.  The PR example shows the two concurrent filters necessary to display tasks with&lt;br /&gt;
          priorities of 20 or more, since some might be negative.  Then by exploiting trailing spaces, the nMin series of filters could achieve the failed `9999&#039; objective discussed above.&lt;br /&gt;
               `PR&amp;gt;20&#039; + `!PR=-&#039;         ( 2 for right result )&lt;br /&gt;
               `!nMin=0 &#039; + `!nMin=1 &#039; + `!nMin=2 &#039; + `!nMin=3 &#039; ...&lt;br /&gt;
&lt;br /&gt;
6. FILES&lt;br /&gt;
   6a. PERSONAL Configuration File&lt;br /&gt;
       This file is created or updated via the `W&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
       The legacy version is written as `$HOME/.your-name-4-top&#039; + `rc&#039; with a leading period.&lt;br /&gt;
&lt;br /&gt;
       A newly created configuration file is written as procps/your-name-4-top&#039; + `rc&#039; without a leading period.  The procps directory will be subordinate to either $XDG_CONFIG_HOME when set as  an  absolute  path  or  the  $HOME/.config&lt;br /&gt;
       directory.&lt;br /&gt;
&lt;br /&gt;
       While not intended to be edited manually, here is the general layout:&lt;br /&gt;
           global   # line  1: the program name/alias notation&lt;br /&gt;
             &amp;quot;      # line  2: id,altscr,irixps,delay,curwin&lt;br /&gt;
           per ea   # line  a: winname,fieldscur&lt;br /&gt;
           window   # line  b: winflags,sortindx,maxtasks,etc&lt;br /&gt;
             &amp;quot;      # line  c: summclr,msgsclr,headclr,taskclr&lt;br /&gt;
           global   # line 15: additional miscellaneous settings&lt;br /&gt;
             &amp;quot;      # any remaining lines are devoted to optional&lt;br /&gt;
             &amp;quot;      # active `other filters&#039; discussed in section 5e above&lt;br /&gt;
             &amp;quot;      # plus `inspect&#039; entries discussed in section 6b below&lt;br /&gt;
&lt;br /&gt;
       If a valid absolute path to the rcfile cannot be established, customizations made to a running top will be impossible to preserve.&lt;br /&gt;
&lt;br /&gt;
   6b. ADDING INSPECT Entries&lt;br /&gt;
       To exploit the `Y&#039; interactive command, you must add entries at the end of the top personal configuration file.  Such entries simply reflect a file to be read or command/pipeline to be executed whose results will then be displayed&lt;br /&gt;
       in a separate scrollable, searchable window.&lt;br /&gt;
&lt;br /&gt;
       If you don&#039;t know the location or name of your top rcfile, use the `W&#039; interactive command to rewrite it and note those details.&lt;br /&gt;
&lt;br /&gt;
       Inspect  entries  can  be  added with a redirected echo or by editing the configuration file.  Redirecting an echo risks overwriting the rcfile should it replace (&amp;gt;) rather than append (&amp;gt;&amp;gt;) to that file.  Conversely, when using an&lt;br /&gt;
       editor care must be taken not to corrupt existing lines, some of which could contain unprintable data or unusual characters depending on the top version under which that configuration file was saved.&lt;br /&gt;
&lt;br /&gt;
       Those Inspect entries beginning with a `#&#039; character are ignored, regardless of content.  Otherwise they consist of the following 3 elements, each of which must be separated by a tab character (thus 2 `\t&#039; total):&lt;br /&gt;
&lt;br /&gt;
         .type:  literal `file&#039; or `pipe&#039;&lt;br /&gt;
         .name:  selection shown on the Inspect screen&lt;br /&gt;
         .fmts:  string representing a path or command&lt;br /&gt;
&lt;br /&gt;
       The two types of Inspect entries are not interchangeable.  Those designated `file&#039; will be accessed using fopen and must reference a single file in the `.fmts&#039; element.  Entries specifying `pipe&#039; will employ popen,  their  `.fmts&#039;&lt;br /&gt;
       element could contain many pipelined commands and, none can be interactive.&lt;br /&gt;
&lt;br /&gt;
       If the file or pipeline represented in your `.fmts&#039; deals with the specific PID input or accepted when prompted, then the format string must also contain the `%d&#039; specifier, as these examples illustrate.&lt;br /&gt;
&lt;br /&gt;
         .fmts=  /proc/%d/numa_maps&lt;br /&gt;
         .fmts=  lsof -P -p %d&lt;br /&gt;
&lt;br /&gt;
       For `pipe&#039; type entries only, you may also wish to redirect stderr to stdout for a more comprehensive result.  Thus the format string becomes:&lt;br /&gt;
&lt;br /&gt;
         .fmts=  pmap -x %d 2&amp;gt;&amp;amp;1&lt;br /&gt;
&lt;br /&gt;
       Here  are  examples  of  both  types of Inspect entries as they might appear in the rcfile.  The first entry will be ignored due to the initial `#&#039; character.  For clarity, the pseudo tab depictions (^I) are surrounded by an extra&lt;br /&gt;
       space but the actual tabs would not be.&lt;br /&gt;
&lt;br /&gt;
         # pipe ^I Sockets ^I lsof -n -P -i 2&amp;gt;&amp;amp;1&lt;br /&gt;
         pipe ^I Open Files ^I lsof -P -p %d 2&amp;gt;&amp;amp;1&lt;br /&gt;
         file ^I NUMA Info ^I /proc/%d/numa_maps&lt;br /&gt;
         pipe ^I Log ^I tail -n100 /var/log/syslog | sort -Mr&lt;br /&gt;
&lt;br /&gt;
       Except for the commented entry above, these next examples show what could be echoed to achieve similar results, assuming the rcfile name was `.toprc&#039;.  However, due to the embedded tab characters, each of  these  lines  should  be&lt;br /&gt;
       preceded by `/bin/echo -e&#039;, not just a simple an `echo&#039;, to enable backslash interpretation regardless of which shell you use.&lt;br /&gt;
&lt;br /&gt;
         &amp;quot;pipe\tOpen Files\tlsof -P -p %d 2&amp;gt;&amp;amp;1&amp;quot; &amp;gt;&amp;gt; ~/.toprc&lt;br /&gt;
         &amp;quot;file\tNUMA Info\t/proc/%d/numa_maps&amp;quot; &amp;gt;&amp;gt; ~/.toprc&lt;br /&gt;
         &amp;quot;pipe\tLog\ttail -n200 /var/log/syslog | sort -Mr&amp;quot; &amp;gt;&amp;gt; ~/.toprc&lt;br /&gt;
&lt;br /&gt;
       If  any  inspect entry you create produces output with unprintable characters they will be displayed in either the ^C notation or hexadecimal &amp;lt;FF&amp;gt; form, depending on their value.  This applies to tab characters as well, which will&lt;br /&gt;
       show as `^I&#039;.  If you want a truer representation, any embedded tabs should be expanded.  The following example takes what could have been a `file&#039; entry but employs a `pipe&#039; instead so as to expand the embedded tabs.&lt;br /&gt;
&lt;br /&gt;
         # next would have contained `\t&#039; ...&lt;br /&gt;
         # file ^I &amp;lt;your_name&amp;gt; ^I /proc/%d/status&lt;br /&gt;
         # but this will eliminate embedded `\t&#039; ...&lt;br /&gt;
         pipe ^I &amp;lt;your_name&amp;gt; ^I cat /proc/%d/status | expand -&lt;br /&gt;
&lt;br /&gt;
       Note: Some programs might rely on SIGINT to end.  Therefore, if a `pipe&#039; such as the following is established, one must use Ctrl-C to terminate it in order to review the results.  This is the single occasion where a `^C&#039; will  not&lt;br /&gt;
       also terminate top.&lt;br /&gt;
&lt;br /&gt;
         pipe ^I Trace ^I /usr/bin/strace -p %d 2&amp;gt;&amp;amp;1&lt;br /&gt;
&lt;br /&gt;
       Lastly, while `pipe&#039; type entries have been discussed in terms of pipelines and commands, there is nothing to prevent you from including  shell scripts as well.  Perhaps even newly created scripts designed specifically for the `Y&#039;&lt;br /&gt;
       interactive command.&lt;br /&gt;
&lt;br /&gt;
       For  example,  as  the  number of your Inspect entries grows over time, the `Options:&#039; row will be truncated when screen width is exceeded.  That does not affect operation other than to make some selections invisible.  However, if&lt;br /&gt;
       some choices are lost to truncation but you want to see more options, there is an easy solution hinted at below.&lt;br /&gt;
&lt;br /&gt;
         Inspection Pause at pid ...&lt;br /&gt;
         Use:  left/right then &amp;lt;Enter&amp;gt; ...&lt;br /&gt;
         Options:  help  1  2  3  4  5  6  7  8  9  10  11 ...&lt;br /&gt;
&lt;br /&gt;
       The entries in the top rcfile would have a number for the `.name&#039; element and the `help&#039; entry would identify a shell script you&#039;ve written explaining what those numbered selections actually mean.  In that way, many  more  choices&lt;br /&gt;
       can be made visible.&lt;br /&gt;
&lt;br /&gt;
   6c. SYSTEM Configuration File&lt;br /&gt;
       This configuration file represents defaults for users who have not saved their own configuration file.  The format mirrors exactly the personal configuration file and can also include `inspect&#039; entries as explained above.&lt;br /&gt;
&lt;br /&gt;
       Creating it is a simple process.&lt;br /&gt;
&lt;br /&gt;
       1. Configure top appropriately for your installation and preserve that configuration with the `W&#039; interactive command.&lt;br /&gt;
&lt;br /&gt;
       2. Add and test any desired `inspect&#039; entries.&lt;br /&gt;
&lt;br /&gt;
       3. Copy that configuration file to the /etc/ directory as `topdefaultrc&#039;.&lt;br /&gt;
&lt;br /&gt;
   6d. SYSTEM Restrictions File&lt;br /&gt;
       The presence of this file will influence which version of the help screen is shown to an ordinary user.&lt;br /&gt;
&lt;br /&gt;
       More importantly, it will limit what ordinary users are allowed to do when top is running.  They will not be able to issue the following commands.&lt;br /&gt;
           k        Kill a task&lt;br /&gt;
           r        Renice a task&lt;br /&gt;
           d or s   Change delay/sleep interval&lt;br /&gt;
&lt;br /&gt;
       This configuration file is not created by top.  Rather, it is created manually and placed it in the /etc/ directory as `toprc&#039;.&lt;br /&gt;
&lt;br /&gt;
       It should have exactly two lines, as shown in this example:&lt;br /&gt;
           s        # line 1: secure mode switch&lt;br /&gt;
           5.0      # line 2: delay interval in seconds&lt;br /&gt;
&lt;br /&gt;
7. ENVIRONMENT VARIABLE(S)&lt;br /&gt;
       The value set for the following is unimportant, just its presence.&lt;br /&gt;
&lt;br /&gt;
       LIBPROC_HIDE_KERNEL&lt;br /&gt;
              This will prevent display of any kernel threads and exclude such processes from the summary area Tasks/Threads counts.&lt;br /&gt;
&lt;br /&gt;
8. STUPID TRICKS Sampler&lt;br /&gt;
       Many of these tricks work best when you give top a scheduling boost.  So plan on starting him with a nice value of -10, assuming you&#039;ve got the authority.&lt;br /&gt;
&lt;br /&gt;
   7a. Kernel Magic&lt;br /&gt;
       For these stupid tricks, top needs full-screen mode.&lt;br /&gt;
&lt;br /&gt;
       •  The user interface, through prompts and help, intentionally implies that the delay interval is limited to tenths of a second.  However, you&#039;re free to set any desired delay.  If you want to see Linux at his scheduling best, try&lt;br /&gt;
          a delay of .09 seconds or less.&lt;br /&gt;
&lt;br /&gt;
          For this experiment, under x-windows open an xterm and maximize it.  Then do the following:&lt;br /&gt;
            . provide a scheduling boost and tiny delay via:&lt;br /&gt;
                nice -n -10 top -d.09&lt;br /&gt;
            . keep sorted column highlighting Off so as to&lt;br /&gt;
              minimize path length&lt;br /&gt;
            . turn On reverse row highlighting for emphasis&lt;br /&gt;
            . try various sort columns (TIME/MEM work well),&lt;br /&gt;
              and normal or reverse sorts to bring the most&lt;br /&gt;
              active processes into view&lt;br /&gt;
&lt;br /&gt;
          What you&#039;ll see is a very busy Linux doing what he&#039;s always done for you, but there was no program available to illustrate this.&lt;br /&gt;
&lt;br /&gt;
       •  Under an xterm using `white-on-black&#039; colors, on top&#039;s Color Mapping screen set the task color to black and be sure that task highlighting is set to bold, not reverse.  Then set the delay interval to around .3 seconds.&lt;br /&gt;
&lt;br /&gt;
          After bringing the most active processes into view, what you&#039;ll see are the ghostly images of just the currently running tasks.&lt;br /&gt;
&lt;br /&gt;
       •  Delete the existing rcfile, or create a new symlink.  Start this new version then type `T&#039; (a secret key, see topic 4c. Task Area Commands, SORTING) followed by `W&#039; and `q&#039;.  Finally, restart the program with -d0 (zero delay).&lt;br /&gt;
&lt;br /&gt;
          Your display will be refreshed at three times the rate of the former top, a 300% speed advantage.  As top climbs the TIME ladder, be as patient as you can while speculating on whether or not top will ever reach the top.&lt;br /&gt;
&lt;br /&gt;
   7b. Bouncing Windows&lt;br /&gt;
       For these stupid tricks, top needs alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
       •  With  3  or  4 task displays visible, pick any window other than the last and turn idle processes Off using the `i&#039; command toggle.  Depending on where you applied `i&#039;, sometimes several task displays are bouncing and sometimes&lt;br /&gt;
          it&#039;s like an accordion, as top tries his best to allocate space.&lt;br /&gt;
&lt;br /&gt;
       •  Set each window&#039;s summary lines differently: one with no memory (`m&#039;); another with no states (`t&#039;); maybe one with nothing at all, just the message line.  Then hold down `a&#039; or `w&#039; and watch a  variation  on  bouncing  windows&lt;br /&gt;
           --  hopping windows.&lt;br /&gt;
&lt;br /&gt;
       •  Display all 4 windows and for each, in turn, set idle processes to Off using the `i&#039; command toggle.  You&#039;ve just entered the &amp;quot;extreme bounce&amp;quot; zone.&lt;br /&gt;
&lt;br /&gt;
   7c. The Big Bird Window&lt;br /&gt;
       This stupid trick also requires alternate-display mode.&lt;br /&gt;
&lt;br /&gt;
       •  Display all 4 windows and make sure that 1:Def is the `current&#039; window.  Then, keep increasing window size with the `n&#039; interactive command until all the other task displays are &amp;quot;pushed out of the nest&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
          When they&#039;ve all been displaced, toggle between all visible/invisible windows using the `_&#039; command toggle.  Then ponder this:&lt;br /&gt;
             is top fibbing or telling honestly your imposed truth?&lt;br /&gt;
&lt;br /&gt;
   7d. The Ol&#039; Switcheroo&lt;br /&gt;
       This stupid trick works best without alternate-display mode, since justification is active on a per window basis.&lt;br /&gt;
&lt;br /&gt;
       •  Start top and make COMMAND the last (rightmost) column displayed.  If necessary, use the `c&#039; command toggle to display command lines and ensure that forest view mode is active with the `V&#039; command toggle.&lt;br /&gt;
&lt;br /&gt;
          Then use the up/down arrow keys to position the display so that some truncated command lines are shown (`+&#039; in last position).  You may have to resize your xterm to produce truncation.&lt;br /&gt;
&lt;br /&gt;
          Lastly, use the `j&#039; command toggle to make the COMMAND column right justified.&lt;br /&gt;
&lt;br /&gt;
          Now use the right arrow key to reach the COMMAND column.  Continuing with the right arrow key, watch closely the direction of travel for the command lines being shown.&lt;br /&gt;
&lt;br /&gt;
             some lines travel left, while others travel right&lt;br /&gt;
&lt;br /&gt;
             eventually all lines will Switcheroo, and move right&lt;br /&gt;
&lt;br /&gt;
9. BUGS&lt;br /&gt;
       Please send bug reports to procps@freelists.org.&lt;br /&gt;
&lt;br /&gt;
10. SEE Also&lt;br /&gt;
       free(1), ps(1), uptime(1), atop(1), slabtop(1), vmstat(8), w(1)&lt;br /&gt;
&lt;br /&gt;
procps-ng                                                                                                        August 2023                                                                                                           TOP(1)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=FORTIGATE_-_SSLVPN_Troubleshoot&amp;diff=1111</id>
		<title>FORTIGATE - SSLVPN Troubleshoot</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=FORTIGATE_-_SSLVPN_Troubleshoot&amp;diff=1111"/>
		<updated>2026-01-17T13:17:31Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== SSL VPN debug command ==&lt;br /&gt;
&lt;br /&gt;
Use the following diagnose commands to identify SSL VPN issues.&lt;br /&gt;
These commands enable debugging of SSL VPN with a debug level of -1 for detailed results.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
diagnose debug application sslvpn -1&lt;br /&gt;
diagnose debug enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The CLI displays debug output similar to the following:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt; &lt;br /&gt;
[282:root]SSL state:before/accept initialization (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 read client hello A (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 write server hello A (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 write change cipher spec A (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 write finished B (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 flush data (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 read finished A:system lib(172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSLv3 read finished A (172.20.120.12)&lt;br /&gt;
[282:root]SSL state:SSL negotiation finished successfully (172.20.120.12)&lt;br /&gt;
[282:root]SSL established: DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To disable the debug :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
diagnose debug disable&lt;br /&gt;
diagnose debug reset&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Remote User Authentication Debug Command ==&lt;br /&gt;
&lt;br /&gt;
Use the following diagnose commands to identify remote user authentication issues :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
diagnose debug application fnbamd -1&lt;br /&gt;
diagnose debug enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use the following diagnose commands to identify SAML user authentication issues :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
diagnose debug application samld -1&lt;br /&gt;
diagnose debug enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Usefull Links ==&lt;br /&gt;
&lt;br /&gt;
* https://community.fortinet.com/t5/FortiGate/Troubleshooting-Tip-SSL-VPN-Troubleshooting/ta-p/189542&lt;br /&gt;
&lt;br /&gt;
* https://docs.fortinet.com/document/fortigate/7.6.0/administration-guide/502390/debug-commands&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=TRACEPATH_-_Manpage&amp;diff=1110</id>
		<title>TRACEPATH - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=TRACEPATH_-_Manpage&amp;diff=1110"/>
		<updated>2026-01-17T13:16:45Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == tracepath Manpage ==   &amp;lt;nowiki&amp;gt; TRACEPATH(8)                                                                                                       iputils                                                                                                       TRACEPATH(8)  NAME        tracepath - traces path to a network host discovering MTU along this path  SYNOPSIS...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== tracepath Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
TRACEPATH(8)                                                                                                       iputils                                                                                                       TRACEPATH(8)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       tracepath - traces path to a network host discovering MTU along this path&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
&lt;br /&gt;
       tracepath [-4] [-6] [-n] [-b] [-l pktlen] [-m max_hops] [-p port] [-V] {destination}&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       It traces the network path to destination discovering MTU along this path. It uses UDP port port or some random port. It is similar to traceroute. However, it does not require superuser privileges and has no fancy options.&lt;br /&gt;
&lt;br /&gt;
       tracepath -6 is a good replacement for traceroute6 and classic example of application of Linux error queues. The situation with IPv4 is worse, because commercial IP routers do not return enough information in ICMP error messages.&lt;br /&gt;
       Probably, it will change, when they are updated. For now it uses Van Jacobson&#039;s trick, sweeping a range of UDP ports to maintain trace history.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       -4&lt;br /&gt;
           Use IPv4 only.&lt;br /&gt;
&lt;br /&gt;
       -6&lt;br /&gt;
           Use IPv6 only.&lt;br /&gt;
&lt;br /&gt;
       -n&lt;br /&gt;
           Print primarily IP addresses numerically.&lt;br /&gt;
&lt;br /&gt;
       -b&lt;br /&gt;
           Print both: Host names and IP addresses.&lt;br /&gt;
&lt;br /&gt;
       -l&lt;br /&gt;
           Sets the initial packet length to pktlen instead of 65535 for IPv4 or 128000 for IPv6.&lt;br /&gt;
&lt;br /&gt;
       -m&lt;br /&gt;
           Set maximum hops (or maximum TTLs) to max_hops instead of 30.&lt;br /&gt;
&lt;br /&gt;
       -p&lt;br /&gt;
           Sets the initial destination port to use.&lt;br /&gt;
&lt;br /&gt;
       -V&lt;br /&gt;
           Print version and exit.&lt;br /&gt;
&lt;br /&gt;
OUTPUT&lt;br /&gt;
           root@mops:~ # tracepath -6 3ffe:2400:0:109::2&lt;br /&gt;
            1?: [LOCALHOST]                              pmtu 1500&lt;br /&gt;
            1:  dust.inr.ac.ru                   0.411ms&lt;br /&gt;
            2:  dust.inr.ac.ru        asymm  1   0.390ms pmtu 1480&lt;br /&gt;
            2:  3ffe:2400:0:109::2               463.514ms reached&lt;br /&gt;
                Resume: pmtu 1480 hops 2 back 2&lt;br /&gt;
&lt;br /&gt;
       The first column shows the TTL of the probe, followed by colon. Usually the value of TTL is obtained from the reply from the network, but sometimes it does not contain the necessary information and we have to guess it. In this&lt;br /&gt;
       case the number is followed by ?.&lt;br /&gt;
&lt;br /&gt;
       The second column shows the network hop which replied to the probe. It is either the address of the router or the word [LOCALHOST], if the probe was not sent to the network.&lt;br /&gt;
&lt;br /&gt;
       The rest of the line shows miscellaneous information about the path to the corresponding network hop. It contains the value of RTT, and additionally it can show Path MTU when it changes. If the path is asymmetric or the probe&lt;br /&gt;
       finishes before it reaches the prescribed hop, the number of hops in return direction is shown next to the keyword &amp;quot;asymm&amp;quot;. This information is not reliable, e.g. the third line shows asymmetry of 1. This is because the first&lt;br /&gt;
       probe with TTL of 2 was rejected at the first hop due to Path MTU Discovery.&lt;br /&gt;
&lt;br /&gt;
       The last line summarizes information about all the paths to the destination. It shows detected Path MTU, amount of hops to the destination and our guess about the number of hops from the destination to us, which can be different&lt;br /&gt;
       when the path is asymmetric.&lt;br /&gt;
&lt;br /&gt;
HANDLING ERRORS&lt;br /&gt;
       In case of errors tracepath prints short error code.&lt;br /&gt;
       ┌─────────────┬──────────────┬───────────────────────────────────────────┐&lt;br /&gt;
       │ Output      │ Code         │ Meaning                                   │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ !A          │ EACCES       │ Communication administratively prohibited │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ !H          │ EHOSTUNREACH │ Destination host unreachable              │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ !N          │ ENETUNREACH  │ Destination network unreachable           │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ !P          │ EPROTO       │ Destination protocol unreachable          │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ pmtu N      │ EMSGSIZE     │ Message too long                          │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ reached     │ ECONNREFUSED │ Connection refused                        │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │             │ ETIMEDOUT    │ Connection timed out                      │&lt;br /&gt;
       ├─────────────┼──────────────┼───────────────────────────────────────────┤&lt;br /&gt;
       │ NET ERROR N │              │ Any other error                           │&lt;br /&gt;
       └─────────────┴──────────────┴───────────────────────────────────────────┘&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       traceroute(8), traceroute6(8), ping(8).&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       tracepath was written by Alexey Kuznetsov &amp;lt;kuznet@ms2.inr.ac.ru&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
SECURITY&lt;br /&gt;
       No security issues.&lt;br /&gt;
&lt;br /&gt;
       This lapidary deserves to be elaborated.  tracepath is not a privileged program, unlike traceroute, ping and other beasts of their kind.  tracepath may be executed by everyone who has enough access to the network to send UDP&lt;br /&gt;
       datagrams to the desired destination using the given port.&lt;br /&gt;
&lt;br /&gt;
AVAILABILITY&lt;br /&gt;
       tracepath is part of iputils package.&lt;br /&gt;
&lt;br /&gt;
iputils 20250605                                                                                                                                                                                                                 TRACEPATH(8)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=UFW_-_Manpage&amp;diff=1109</id>
		<title>UFW - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=UFW_-_Manpage&amp;diff=1109"/>
		<updated>2026-01-17T13:12:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == ufw Manpage ==   &amp;lt;nowiki&amp;gt; UFW:(8)                                                                                                            May 2023                                                                                                           UFW:(8)  NAME        ufw - program for managing a netfilter firewall  DESCRIPTION        This program is for managing a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== ufw Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
UFW:(8)                                                                                                            May 2023                                                                                                           UFW:(8)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       ufw - program for managing a netfilter firewall&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       This program is for managing a Linux firewall and aims to provide an easy to use interface for the user.&lt;br /&gt;
&lt;br /&gt;
USAGE&lt;br /&gt;
       ufw [--dry-run] enable|disable|reload&lt;br /&gt;
&lt;br /&gt;
       ufw [--force] enable&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] default allow|deny|reject [incoming|outgoing|routed]&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] logging on|off|LEVEL&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] reset&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] status [verbose|numbered]&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] show REPORT&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] [delete] [insert NUM] [prepend] allow|deny|reject|limit [in|out] [log|log-all] [ PORT[/PROTOCOL] | APPNAME ] [comment COMMENT]&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] [rule] [delete] [insert NUM] [prepend] allow|deny|reject|limit [in|out [on INTERFACE]] [log|log-all] [proto PROTOCOL] [from ADDRESS [port PORT | app APPNAME ]] [to ADDRESS [port PORT | app APPNAME ]] [comment COM‐&lt;br /&gt;
       MENT]&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] route [delete] [insert NUM] [prepend] allow|deny|reject|limit [in|out on INTERFACE] [log|log-all] [proto PROTOCOL] [from ADDRESS [port PORT | app APPNAME]] [to ADDRESS [port PORT | app APPNAME]] [comment COMMENT]&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] [--force] delete NUM&lt;br /&gt;
&lt;br /&gt;
       ufw [--dry-run] app list|info|default|update&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       --version&lt;br /&gt;
              show program&#039;s version number and exit&lt;br /&gt;
&lt;br /&gt;
       -h, --help&lt;br /&gt;
              show help message and exit&lt;br /&gt;
&lt;br /&gt;
       --dry-run&lt;br /&gt;
              don&#039;t modify anything, just show the changes&lt;br /&gt;
&lt;br /&gt;
       enable reloads firewall and enables firewall on boot. See REMOTE MANAGEMENT.&lt;br /&gt;
&lt;br /&gt;
       disable&lt;br /&gt;
              unloads firewall and disables firewall on boot&lt;br /&gt;
&lt;br /&gt;
       reload reloads firewall&lt;br /&gt;
&lt;br /&gt;
       default allow|deny|reject DIRECTION&lt;br /&gt;
              change the default policy for traffic going DIRECTION, where DIRECTION is one of incoming, outgoing or routed. Note that existing rules will have to be migrated manually when changing the default policy. See RULE SYNTAX for&lt;br /&gt;
              more on deny and reject.&lt;br /&gt;
&lt;br /&gt;
       logging on|off|LEVEL&lt;br /&gt;
              toggle logging. Logged packets use the LOG_KERN syslog facility. Systems configured for rsyslog support may also log to /var/log/ufw.log. Specifying a LEVEL turns logging on for the specified LEVEL. The default log level is&lt;br /&gt;
              &#039;low&#039;.  See LOGGING for details.&lt;br /&gt;
&lt;br /&gt;
       reset  Disables and resets firewall to installation defaults. Can also give the --force option to perform the reset without confirmation.&lt;br /&gt;
&lt;br /&gt;
       status show  status  of firewall and ufw managed rules. Use status verbose for extra information. In the status output, &#039;Anywhere&#039; is synonymous with &#039;any&#039;, 0.0.0.0/0 (IPv4) and ::/0 (IPv6). Note that when using status, there is a&lt;br /&gt;
              subtle difference when reporting interfaces. For example, if the following rules are added:&lt;br /&gt;
&lt;br /&gt;
                ufw allow in on eth0 from 192.168.0.0/16&lt;br /&gt;
                ufw allow out on eth1 to 10.0.0.0/8&lt;br /&gt;
                ufw route allow in on eth0 out on eth1 to 10.0.0.0/8 from 192.168.0.0/16&lt;br /&gt;
                ufw limit 2222/tcp comment &#039;SSH port&#039;&lt;br /&gt;
&lt;br /&gt;
              ufw status will output:&lt;br /&gt;
&lt;br /&gt;
                To                         Action      From&lt;br /&gt;
                --                         ------      ----&lt;br /&gt;
                Anywhere on eth0           ALLOW       192.168.0.0/16&lt;br /&gt;
                10.0.0.0/8                 ALLOW OUT   Anywhere on eth1&lt;br /&gt;
                10.0.0.0/8 on eth1         ALLOW FWD   192.168.0.0/16 on eth0&lt;br /&gt;
                Anywhere                   LIMIT       Anywhere                 # SSH port&lt;br /&gt;
&lt;br /&gt;
              For the input and output rules, the interface is reported relative to the firewall system as an endpoint, whereas with route rules, the interface is reported relative to the direction packets flow through the firewall.&lt;br /&gt;
&lt;br /&gt;
       show REPORT&lt;br /&gt;
              display information about the running firewall. See REPORTS&lt;br /&gt;
&lt;br /&gt;
       allow ARGS&lt;br /&gt;
              add allow rule.  See RULE SYNTAX&lt;br /&gt;
&lt;br /&gt;
       deny ARGS&lt;br /&gt;
              add deny rule.  See RULE SYNTAX&lt;br /&gt;
&lt;br /&gt;
       reject ARGS&lt;br /&gt;
              add reject rule.  See RULE SYNTAX&lt;br /&gt;
&lt;br /&gt;
       limit ARGS&lt;br /&gt;
              add limit rule.  See RULE SYNTAX&lt;br /&gt;
&lt;br /&gt;
       delete RULE|NUM&lt;br /&gt;
              deletes the corresponding RULE&lt;br /&gt;
&lt;br /&gt;
       insert NUM RULE&lt;br /&gt;
              insert the corresponding RULE as rule number NUM&lt;br /&gt;
&lt;br /&gt;
       prepend RULE&lt;br /&gt;
              prepend the corresponding RULE to the top of the ruleset&lt;br /&gt;
&lt;br /&gt;
RULE SYNTAX&lt;br /&gt;
       Users can specify rules using either a simple syntax or a full syntax. The simple syntax only specifies the port and optionally the protocol to be allowed or denied on the host.&lt;br /&gt;
&lt;br /&gt;
       Both syntaxes support specifying a comment for the rule. For existing rules, specifying a different comment updates the comment and specifying &#039;&#039; removes the comment (note, &#039;insert&#039; and &#039;prepend&#039; cannot be used to update the  com‐&lt;br /&gt;
       ment).&lt;br /&gt;
&lt;br /&gt;
       Example rules using the simple syntax:&lt;br /&gt;
&lt;br /&gt;
         ufw allow 53&lt;br /&gt;
&lt;br /&gt;
       This rule will allow tcp and udp port 53 to any address on this host. To specify a protocol, append &#039;/protocol&#039; to the port. For example:&lt;br /&gt;
&lt;br /&gt;
         ufw allow 25/tcp&lt;br /&gt;
&lt;br /&gt;
       This will allow tcp port 25 to any address on this host. ufw will also check /etc/services for the port and protocol if specifying a service by name.  Eg:&lt;br /&gt;
&lt;br /&gt;
         ufw allow smtp&lt;br /&gt;
&lt;br /&gt;
       ufw supports both ingress and egress filtering and users may optionally specify a direction of either in or out for either incoming or outgoing traffic. If no direction is supplied, the rule applies to incoming traffic. Eg:&lt;br /&gt;
&lt;br /&gt;
         ufw allow in http&lt;br /&gt;
         ufw reject out smtp&lt;br /&gt;
         ufw reject telnet comment &#039;telnet is unencrypted&#039;&lt;br /&gt;
&lt;br /&gt;
       Users can also use a fuller syntax, specifying the source and destination addresses and ports. This syntax is loosely based on OpenBSD&#039;s PF syntax. For example:&lt;br /&gt;
&lt;br /&gt;
         ufw deny proto tcp to any port 80&lt;br /&gt;
&lt;br /&gt;
       This will deny all traffic to tcp port 80 on this host. Another example:&lt;br /&gt;
&lt;br /&gt;
         ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 25&lt;br /&gt;
&lt;br /&gt;
       This will deny all traffic from the RFC1918 Class A network to tcp port 25 with the address 192.168.0.1.&lt;br /&gt;
&lt;br /&gt;
         ufw deny proto tcp from 2001:db8::/32 to any port 25&lt;br /&gt;
&lt;br /&gt;
       This will deny all traffic from the IPv6 2001:db8::/32 to tcp port 25 on this host. IPv6 must be enabled in /etc/default/ufw for IPv6 firewalling to work.&lt;br /&gt;
&lt;br /&gt;
         ufw deny in on eth0 to 224.0.0.1 proto igmp&lt;br /&gt;
&lt;br /&gt;
       This will deny all igmp traffic to 224.0.0.1 on the eth0 interface.&lt;br /&gt;
&lt;br /&gt;
         ufw allow in on eth0 to 192.168.0.1 proto gre&lt;br /&gt;
&lt;br /&gt;
       This will allow all gre traffic to 192.168.0.1 on the eth0 interface.&lt;br /&gt;
&lt;br /&gt;
         ufw allow proto tcp from any to any port 80,443,8080:8090 comment &#039;web app&#039;&lt;br /&gt;
&lt;br /&gt;
       The  above will allow all traffic to tcp ports 80, 443 and 8080-8090 inclusive and adds a comment for the rule. When specifying multiple ports, the ports list must be numeric, cannot contain spaces and must be modified as a whole.&lt;br /&gt;
       Eg, in the above example you cannot later try to delete just the &#039;443&#039; port. You cannot specify more than 15 ports (ranges count as 2 ports, so the port count in the above example is 4).&lt;br /&gt;
&lt;br /&gt;
       ufw supports several different protocols. The following are valid in any rule and enabled when the protocol is not specified:&lt;br /&gt;
&lt;br /&gt;
         tcp&lt;br /&gt;
         udp&lt;br /&gt;
&lt;br /&gt;
       The following have certain restrictions and are not enabled when the protocol is not specified:&lt;br /&gt;
&lt;br /&gt;
         ah      valid without port number&lt;br /&gt;
         esp     valid without port number&lt;br /&gt;
         gre     valid without port number&lt;br /&gt;
         vrrp    valid without port number&lt;br /&gt;
         ipv6    valid for IPv4 addresses and without port number&lt;br /&gt;
         igmp    valid for IPv4 addresses and without port number&lt;br /&gt;
&lt;br /&gt;
       Rules for traffic not destined for the host itself but instead for traffic that should be routed/forwarded through the firewall should specify the route keyword before the rule (routing rules differ significantly  from  PF  syntax&lt;br /&gt;
       and instead take into account netfilter FORWARD chain conventions). For example:&lt;br /&gt;
&lt;br /&gt;
         ufw route allow in on eth1 out on eth2&lt;br /&gt;
&lt;br /&gt;
       This will allow all traffic routed to eth2 and coming in on eth1 to traverse the firewall.&lt;br /&gt;
&lt;br /&gt;
         ufw route allow in on eth0 out on eth1 to 12.34.45.67 port 80 proto tcp&lt;br /&gt;
&lt;br /&gt;
       This rule allows any packets coming in on eth0 to traverse the firewall out on eth1 to tcp port 80 on 12.34.45.67.&lt;br /&gt;
&lt;br /&gt;
       In addition to routing rules and policy, you must also setup IP forwarding.  This may be done by setting the following in /etc/ufw/sysctl.conf:&lt;br /&gt;
&lt;br /&gt;
         net/ipv4/ip_forward=1&lt;br /&gt;
         net/ipv6/conf/default/forwarding=1&lt;br /&gt;
         net/ipv6/conf/all/forwarding=1&lt;br /&gt;
&lt;br /&gt;
       then restarting the firewall:&lt;br /&gt;
&lt;br /&gt;
         ufw disable&lt;br /&gt;
         ufw enable&lt;br /&gt;
&lt;br /&gt;
       Be aware that setting kernel tunables is operating system specific and ufw sysctl settings may be overridden. See the sysctl manual page for details.&lt;br /&gt;
&lt;br /&gt;
       ufw supports connection rate limiting, which is useful for protecting against brute-force login attacks. When a limit rule is used, ufw will normally allow the connection but will deny connections if an IP address attempts to ini‐&lt;br /&gt;
       tiate 6 or more connections within 30 seconds. See http://www.debian-administration.org/articles/187 for details. Typical usage is:&lt;br /&gt;
&lt;br /&gt;
         ufw limit ssh/tcp&lt;br /&gt;
&lt;br /&gt;
       Sometimes it is desirable to let the sender know when traffic is being denied, rather than simply ignoring it. In these cases, use reject instead of deny.  For example:&lt;br /&gt;
&lt;br /&gt;
         ufw reject auth&lt;br /&gt;
&lt;br /&gt;
       By  default,  ufw will apply rules to all available interfaces. To limit this, specify DIRECTION on INTERFACE, where DIRECTION is one of in or out (interface aliases are not supported).  For example, to allow all new incoming http&lt;br /&gt;
       connections on eth0, use:&lt;br /&gt;
&lt;br /&gt;
         ufw allow in on eth0 to any port 80 proto tcp&lt;br /&gt;
&lt;br /&gt;
       To delete a rule, simply prefix the original rule with delete with or without the rule comment. For example, if the original rule was:&lt;br /&gt;
&lt;br /&gt;
         ufw deny 80/tcp&lt;br /&gt;
&lt;br /&gt;
       Use this to delete it:&lt;br /&gt;
&lt;br /&gt;
         ufw delete deny 80/tcp&lt;br /&gt;
&lt;br /&gt;
       You may also specify the rule by NUM, as seen in the status numbered output. For example, if you want to delete rule number &#039;3&#039;, use:&lt;br /&gt;
&lt;br /&gt;
         ufw delete 3&lt;br /&gt;
&lt;br /&gt;
       If you have IPv6 enabled and are deleting a generic rule that applies to both IPv4 and IPv6 (eg &#039;ufw allow 22/tcp&#039;), deleting by rule number will delete only the specified rule. To delete both with one command, prefix the original&lt;br /&gt;
       rule with delete.&lt;br /&gt;
&lt;br /&gt;
       To insert a rule, specify the new rule as normal, but prefix the rule with the rule number to insert. For example, if you have four rules, and you want to insert a new rule as rule number three, use:&lt;br /&gt;
&lt;br /&gt;
         ufw insert 3 deny to any port 22 from 10.0.0.135 proto tcp&lt;br /&gt;
&lt;br /&gt;
       Similarly, to add a rule before all other rules matching the rule&#039;s IP type, use the prepend rule:&lt;br /&gt;
&lt;br /&gt;
         ufw prepend deny from 1.2.3.4&lt;br /&gt;
&lt;br /&gt;
       This is particularly useful for dynamic firewalls as found in an IPS.  Importantly, if the specified rule is an IPv4 rule, it will be prepended before all other IPv4 rules. If it is an IPv6 rule, it will be  prepended  before  any&lt;br /&gt;
       IPv6 rules.&lt;br /&gt;
&lt;br /&gt;
       To see a list of numbered rules, use:&lt;br /&gt;
&lt;br /&gt;
         ufw status numbered&lt;br /&gt;
&lt;br /&gt;
       ufw  supports  per rule logging. By default, no logging is performed when a packet matches a rule. Specifying log will log all new connections matching the rule, and log-all will log all packets matching the rule.  For example, to&lt;br /&gt;
       allow and log all new ssh connections, use:&lt;br /&gt;
&lt;br /&gt;
         ufw allow log 22/tcp&lt;br /&gt;
&lt;br /&gt;
       See LOGGING for more information on logging.&lt;br /&gt;
&lt;br /&gt;
EXAMPLES&lt;br /&gt;
       Deny all access to port 53:&lt;br /&gt;
&lt;br /&gt;
         ufw deny 53&lt;br /&gt;
&lt;br /&gt;
       Allow all access to tcp port 80:&lt;br /&gt;
&lt;br /&gt;
         ufw allow 80/tcp&lt;br /&gt;
&lt;br /&gt;
       Allow all access from RFC1918 networks to this host:&lt;br /&gt;
&lt;br /&gt;
         ufw allow from 10.0.0.0/8&lt;br /&gt;
         ufw allow from 172.16.0.0/12&lt;br /&gt;
         ufw allow from 192.168.0.0/16&lt;br /&gt;
&lt;br /&gt;
       Deny access to udp port 514 from host 1.2.3.4:&lt;br /&gt;
&lt;br /&gt;
         ufw deny proto udp from 1.2.3.4 to any port 514&lt;br /&gt;
&lt;br /&gt;
       Allow access to udp 1.2.3.4 port 5469 from 1.2.3.5 port 5469:&lt;br /&gt;
&lt;br /&gt;
         ufw allow proto udp from 1.2.3.5 port 5469 to 1.2.3.4 port 5469&lt;br /&gt;
&lt;br /&gt;
REMOTE MANAGEMENT&lt;br /&gt;
       When running ufw enable or starting ufw via its initscript, ufw will flush its chains. This is required so ufw can maintain a consistent state, but it may drop existing connections (eg ssh). ufw does support  adding  rules  before&lt;br /&gt;
       enabling the firewall, so administrators can do:&lt;br /&gt;
&lt;br /&gt;
         ufw allow proto tcp from any to any port 22&lt;br /&gt;
&lt;br /&gt;
       before running &#039;ufw enable&#039;. The rules will still be flushed, but the ssh port will be open after enabling the firewall. Please note that once ufw is &#039;enabled&#039;, ufw will not flush the chains when adding or removing rules (but will&lt;br /&gt;
       when modifying a rule or changing the default policy). By default, ufw will prompt when enabling the firewall while running under ssh. This can be disabled by using &#039;ufw --force enable&#039;.&lt;br /&gt;
&lt;br /&gt;
APPLICATION INTEGRATION&lt;br /&gt;
       ufw supports application integration by reading profiles located in /etc/ufw/applications.d. To list the names of application profiles known to ufw, use:&lt;br /&gt;
&lt;br /&gt;
         ufw app list&lt;br /&gt;
&lt;br /&gt;
       Users can specify an application name when adding a rule (quoting any profile names with spaces). For example, when using the simple syntax, users can use:&lt;br /&gt;
&lt;br /&gt;
         ufw allow &amp;lt;name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       Or for the extended syntax:&lt;br /&gt;
&lt;br /&gt;
         ufw allow from 192.168.0.0/16 to any app &amp;lt;name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       You should not specify the protocol with either syntax, and with the extended syntax, use app in place of the port clause.&lt;br /&gt;
&lt;br /&gt;
       Details on the firewall profile for a given application can be seen with:&lt;br /&gt;
&lt;br /&gt;
         ufw app info &amp;lt;name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       where &#039;&amp;lt;name&amp;gt;&#039; is one of the applications seen with the app list command.  Users may also specify all to see the profiles for all known applications.&lt;br /&gt;
&lt;br /&gt;
       Syntax for the application profiles is a simple .INI format:&lt;br /&gt;
&lt;br /&gt;
         [&amp;lt;name&amp;gt;]&lt;br /&gt;
         title=&amp;lt;title&amp;gt;&lt;br /&gt;
         description=&amp;lt;description&amp;gt;&lt;br /&gt;
         ports=&amp;lt;ports&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       The  &#039;ports&#039;  field  may  specify a &#039;|&#039;-separated list of ports/protocols where the protocol is optional. A comma-separated list or a range (specified with &#039;start:end&#039;) may also be used to specify multiple ports, in which case the&lt;br /&gt;
       protocol is required. For example:&lt;br /&gt;
&lt;br /&gt;
         [SomeService]&lt;br /&gt;
         title=Some title&lt;br /&gt;
         description=Some description&lt;br /&gt;
         ports=12/udp|34|56,78:90/tcp&lt;br /&gt;
&lt;br /&gt;
       In the above example, &#039;SomeService&#039; may be used in app rules and it specifies UDP port 12, TCP and UDP on port 34 and TCP ports 56 and 78-90 inclusive.&lt;br /&gt;
&lt;br /&gt;
       After creating or editing an application profile, users can run:&lt;br /&gt;
&lt;br /&gt;
         ufw app update &amp;lt;name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       This command will automatically update the firewall with updated profile information. If specify &#039;all&#039; for name, then all the profiles will be updated.  To update a profile and add a new rule to the firewall  automatically,  users&lt;br /&gt;
       can run:&lt;br /&gt;
&lt;br /&gt;
         ufw app update --add-new &amp;lt;name&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       The behavior of the update --add-new command can be configured using:&lt;br /&gt;
&lt;br /&gt;
         ufw app default &amp;lt;policy&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       The  default application policy is skip, which means that the update --add-new command will do nothing. Users may also specify a policy of allow or deny so the update --add-new command may automatically update the firewall.  WARN‐&lt;br /&gt;
       ING: it may be a security to risk to use a default allow policy for application profiles. Carefully consider the security ramifications before using a default allow policy.&lt;br /&gt;
&lt;br /&gt;
LOGGING&lt;br /&gt;
       ufw supports multiple logging levels. ufw defaults to a loglevel of &#039;low&#039; when a loglevel is not specified. Users may specify a loglevel with:&lt;br /&gt;
&lt;br /&gt;
         ufw logging LEVEL&lt;br /&gt;
&lt;br /&gt;
       LEVEL may be &#039;off&#039;, &#039;low&#039;, &#039;medium&#039;, &#039;high&#039; and &#039;full&#039;. Log levels are defined as:&lt;br /&gt;
&lt;br /&gt;
       off    disables ufw managed logging&lt;br /&gt;
&lt;br /&gt;
       low    logs all blocked packets not matching the defined policy (with rate limiting), as well as packets matching logged rules&lt;br /&gt;
&lt;br /&gt;
       medium log level low, plus all allowed packets not matching the defined policy, all INVALID packets, and all new connections.  All logging is done with rate limiting.&lt;br /&gt;
&lt;br /&gt;
       high   log level medium (without rate limiting), plus all packets with rate limiting&lt;br /&gt;
&lt;br /&gt;
       full   log level high without rate limiting&lt;br /&gt;
&lt;br /&gt;
       Loglevels above medium generate a lot of logging output, and may quickly fill up your disk. Loglevel medium may generate a lot of logging output on a busy system.&lt;br /&gt;
&lt;br /&gt;
       Specifying &#039;on&#039; simply enables logging at log level &#039;low&#039; if logging is currently not enabled.&lt;br /&gt;
&lt;br /&gt;
REPORTS&lt;br /&gt;
       The following reports are supported. Each is based on the live system and with the exception of the listening report, is in raw iptables format:&lt;br /&gt;
&lt;br /&gt;
         raw&lt;br /&gt;
         builtins&lt;br /&gt;
         before-rules&lt;br /&gt;
         user-rules&lt;br /&gt;
         after-rules&lt;br /&gt;
         logging-rules&lt;br /&gt;
         listening&lt;br /&gt;
         added&lt;br /&gt;
&lt;br /&gt;
       The raw report shows the complete firewall, while the others show a subset of what is in the raw report.&lt;br /&gt;
&lt;br /&gt;
       The listening report will display the ports on the live system in the listening state for tcp and the open state for udp, along with the address of the interface and the executable listening on the port. An &#039;*&#039; is used in place of&lt;br /&gt;
       the address of the interface when the executable is bound to all interfaces on that port. Following this information is a list of rules which may affect connections on this port. The rules are listed in the order they  are  evalu‐&lt;br /&gt;
       ated by the kernel, and the first match wins. Please note that the default policy is not listed and tcp6 and udp6 are shown only if IPV6 is enabled.&lt;br /&gt;
&lt;br /&gt;
       The  added report displays the list of rules as they were added on the command-line. This report does not show the status of the running firewall (use &#039;ufw status&#039; instead). Because rules are normalized by ufw, rules may look dif‐&lt;br /&gt;
       ferent than the originally added rule. Also, ufw does not record command ordering, so an equivalent ordering is used which lists IPv6-only rules after other rules.&lt;br /&gt;
&lt;br /&gt;
NOTES&lt;br /&gt;
       On installation, ufw is disabled with a default incoming policy of deny, a default forward policy of deny, and a default outgoing policy of allow, with stateful tracking for NEW connections for incoming and forwarded  connections.&lt;br /&gt;
       In addition to the above, a default ruleset is put in place that does the following:&lt;br /&gt;
&lt;br /&gt;
       - DROP packets with RH0 headers&lt;br /&gt;
&lt;br /&gt;
       - DROP INVALID packets&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT certain icmp packets (INPUT and FORWARD): destination-unreachable, source-quench, time-exceeded, parameter-problem, and echo-request for IPv4. destination-unreachable, packet-too-big, time-exceeded, parameter-problem, and&lt;br /&gt;
       echo-request for IPv6.&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT icmpv6 packets for stateless autoconfiguration (INPUT)&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT ping replies from IPv6 link-local (ffe8::/10) addresses (INPUT)&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT DHCP client traffic (INPUT)&lt;br /&gt;
&lt;br /&gt;
       - DROP non-local traffic (INPUT)&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT mDNS (zeroconf/bonjour/avahi 224.0.0.251 for IPv4 and ff02::fb for IPv6) for service discovery (INPUT)&lt;br /&gt;
&lt;br /&gt;
       - ACCEPT UPnP (239.255.255.250 for IPv4 and ff02::f for IPv6) for service discovery (INPUT)&lt;br /&gt;
&lt;br /&gt;
       Rule ordering is important and the first match wins. Therefore when adding rules, add the more specific rules first with more general rules later.&lt;br /&gt;
&lt;br /&gt;
       ufw is not intended to provide complete firewall functionality via its command interface, but instead provides an easy way to add or remove simple rules.&lt;br /&gt;
&lt;br /&gt;
       The  status  command  shows basic information about the state of the firewall, as well as rules managed via the ufw command. It does not show rules from the rules files in /etc/ufw. To see the complete state of the firewall, users&lt;br /&gt;
       can ufw show raw.  This displays the filter, nat, mangle and raw tables using:&lt;br /&gt;
&lt;br /&gt;
         iptables -n -L -v -x -t &amp;lt;table&amp;gt;&lt;br /&gt;
         ip6tables -n -L -v -x -t &amp;lt;table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
       See the iptables and ip6tables documentation for more details.&lt;br /&gt;
&lt;br /&gt;
       If the default policy is set to REJECT, ufw may interfere with rules added outside of the ufw framework. See README for details.&lt;br /&gt;
&lt;br /&gt;
       IPV6 is allowed by default. To change this behavior to only accept IPv6 traffic on the loopback interface, set IPV6 to &#039;no&#039; in /etc/default/ufw and reload ufw. When IPv6 is enabled, you may specify rules in the  same  way  as  for&lt;br /&gt;
       IPv4  rules, and they will be displayed with ufw status. Rules that match both IPv4 and IPv6 addresses apply to both IP versions. For example, when IPv6 is enabled, the following rule will allow access to port 22 for both IPv4 and&lt;br /&gt;
       IPv6 traffic:&lt;br /&gt;
&lt;br /&gt;
         ufw allow 22&lt;br /&gt;
&lt;br /&gt;
       IPv6 over IPv4 tunnels and 6to4 are supported by using the &#039;ipv6&#039; protocol (&#039;41&#039;). This protocol can only be used with the full syntax. For example:&lt;br /&gt;
&lt;br /&gt;
         ufw allow to 10.0.0.1 proto ipv6&lt;br /&gt;
         ufw allow to 10.0.0.1 from 10.4.0.0/16 proto ipv6&lt;br /&gt;
&lt;br /&gt;
       IPSec is supported by using the &#039;esp&#039; (&#039;50&#039;) and &#039;ah&#039; (&#039;51&#039;) protocols. These protocols can only be used with the full syntax. For example:&lt;br /&gt;
&lt;br /&gt;
         ufw allow to 10.0.0.1 proto esp&lt;br /&gt;
         ufw allow to 10.0.0.1 from 10.4.0.0/16 proto esp&lt;br /&gt;
         ufw allow to 10.0.0.1 proto ah&lt;br /&gt;
         ufw allow to 10.0.0.1 from 10.4.0.0/16 proto ah&lt;br /&gt;
&lt;br /&gt;
       keepalived is supported by using the &#039;vrrp&#039; (&#039;112&#039;) protocol. This protocol can only be used with the full syntax. For example:&lt;br /&gt;
&lt;br /&gt;
         ufw allow to 224.0.0.0/24 from 10.0.0.1 proto vrrp&lt;br /&gt;
&lt;br /&gt;
       In addition to the command-line interface, ufw also provides a framework which allows administrators to modify default behavior as well as take full advantage of netfilter. See the ufw-framework manual page for more information.&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       ufw-framework(8), iptables(8), ip6tables(8), iptables-restore(8), ip6tables-restore(8), sysctl(8), sysctl.conf(5)&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       ufw is Copyright 2008-2023, Canonical Ltd.&lt;br /&gt;
&lt;br /&gt;
May 2023                                                                                                                                                                                                                              UFW:(8)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=NMAP_-_Manpage&amp;diff=1108</id>
		<title>NMAP - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=NMAP_-_Manpage&amp;diff=1108"/>
		<updated>2026-01-17T13:11:33Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== nmap --help ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
Nmap 7.93 ( https://nmap.org )&lt;br /&gt;
Usage: nmap [Scan Type(s)] [Options] {target specification}&lt;br /&gt;
TARGET SPECIFICATION:&lt;br /&gt;
  Can pass hostnames, IP addresses, networks, etc.&lt;br /&gt;
  Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254&lt;br /&gt;
  -iL &amp;lt;inputfilename&amp;gt;: Input from list of hosts/networks&lt;br /&gt;
  -iR &amp;lt;num hosts&amp;gt;: Choose random targets&lt;br /&gt;
  --exclude &amp;lt;host1[,host2][,host3],...&amp;gt;: Exclude hosts/networks&lt;br /&gt;
  --excludefile &amp;lt;exclude_file&amp;gt;: Exclude list from file&lt;br /&gt;
HOST DISCOVERY:&lt;br /&gt;
  -sL: List Scan - simply list targets to scan&lt;br /&gt;
  -sn: Ping Scan - disable port scan&lt;br /&gt;
  -Pn: Treat all hosts as online -- skip host discovery&lt;br /&gt;
  -PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports&lt;br /&gt;
  -PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes&lt;br /&gt;
  -PO[protocol list]: IP Protocol Ping&lt;br /&gt;
  -n/-R: Never do DNS resolution/Always resolve [default: sometimes]&lt;br /&gt;
  --dns-servers &amp;lt;serv1[,serv2],...&amp;gt;: Specify custom DNS servers&lt;br /&gt;
  --system-dns: Use OS&#039;s DNS resolver&lt;br /&gt;
  --traceroute: Trace hop path to each host&lt;br /&gt;
SCAN TECHNIQUES:&lt;br /&gt;
  -sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans&lt;br /&gt;
  -sU: UDP Scan&lt;br /&gt;
  -sN/sF/sX: TCP Null, FIN, and Xmas scans&lt;br /&gt;
  --scanflags &amp;lt;flags&amp;gt;: Customize TCP scan flags&lt;br /&gt;
  -sI &amp;lt;zombie host[:probeport]&amp;gt;: Idle scan&lt;br /&gt;
  -sY/sZ: SCTP INIT/COOKIE-ECHO scans&lt;br /&gt;
  -sO: IP protocol scan&lt;br /&gt;
  -b &amp;lt;FTP relay host&amp;gt;: FTP bounce scan&lt;br /&gt;
PORT SPECIFICATION AND SCAN ORDER:&lt;br /&gt;
  -p &amp;lt;port ranges&amp;gt;: Only scan specified ports&lt;br /&gt;
    Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9&lt;br /&gt;
  --exclude-ports &amp;lt;port ranges&amp;gt;: Exclude the specified ports from scanning&lt;br /&gt;
  -F: Fast mode - Scan fewer ports than the default scan&lt;br /&gt;
  -r: Scan ports sequentially - don&#039;t randomize&lt;br /&gt;
  --top-ports &amp;lt;number&amp;gt;: Scan &amp;lt;number&amp;gt; most common ports&lt;br /&gt;
  --port-ratio &amp;lt;ratio&amp;gt;: Scan ports more common than &amp;lt;ratio&amp;gt;&lt;br /&gt;
SERVICE/VERSION DETECTION:&lt;br /&gt;
  -sV: Probe open ports to determine service/version info&lt;br /&gt;
  --version-intensity &amp;lt;level&amp;gt;: Set from 0 (light) to 9 (try all probes)&lt;br /&gt;
  --version-light: Limit to most likely probes (intensity 2)&lt;br /&gt;
  --version-all: Try every single probe (intensity 9)&lt;br /&gt;
  --version-trace: Show detailed version scan activity (for debugging)&lt;br /&gt;
SCRIPT SCAN:&lt;br /&gt;
  -sC: equivalent to --script=default&lt;br /&gt;
  --script=&amp;lt;Lua scripts&amp;gt;: &amp;lt;Lua scripts&amp;gt; is a comma separated list of&lt;br /&gt;
           directories, script-files or script-categories&lt;br /&gt;
  --script-args=&amp;lt;n1=v1,[n2=v2,...]&amp;gt;: provide arguments to scripts&lt;br /&gt;
  --script-args-file=filename: provide NSE script args in a file&lt;br /&gt;
  --script-trace: Show all data sent and received&lt;br /&gt;
  --script-updatedb: Update the script database.&lt;br /&gt;
  --script-help=&amp;lt;Lua scripts&amp;gt;: Show help about scripts.&lt;br /&gt;
           &amp;lt;Lua scripts&amp;gt; is a comma-separated list of script-files or&lt;br /&gt;
           script-categories.&lt;br /&gt;
OS DETECTION:&lt;br /&gt;
  -O: Enable OS detection&lt;br /&gt;
  --osscan-limit: Limit OS detection to promising targets&lt;br /&gt;
  --osscan-guess: Guess OS more aggressively&lt;br /&gt;
TIMING AND PERFORMANCE:&lt;br /&gt;
  Options which take &amp;lt;time&amp;gt; are in seconds, or append &#039;ms&#039; (milliseconds),&lt;br /&gt;
  &#039;s&#039; (seconds), &#039;m&#039; (minutes), or &#039;h&#039; (hours) to the value (e.g. 30m).&lt;br /&gt;
  -T&amp;lt;0-5&amp;gt;: Set timing template (higher is faster)&lt;br /&gt;
  --min-hostgroup/max-hostgroup &amp;lt;size&amp;gt;: Parallel host scan group sizes&lt;br /&gt;
  --min-parallelism/max-parallelism &amp;lt;numprobes&amp;gt;: Probe parallelization&lt;br /&gt;
  --min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout &amp;lt;time&amp;gt;: Specifies&lt;br /&gt;
      probe round trip time.&lt;br /&gt;
  --max-retries &amp;lt;tries&amp;gt;: Caps number of port scan probe retransmissions.&lt;br /&gt;
  --host-timeout &amp;lt;time&amp;gt;: Give up on target after this long&lt;br /&gt;
  --scan-delay/--max-scan-delay &amp;lt;time&amp;gt;: Adjust delay between probes&lt;br /&gt;
  --min-rate &amp;lt;number&amp;gt;: Send packets no slower than &amp;lt;number&amp;gt; per second&lt;br /&gt;
  --max-rate &amp;lt;number&amp;gt;: Send packets no faster than &amp;lt;number&amp;gt; per second&lt;br /&gt;
FIREWALL/IDS EVASION AND SPOOFING:&lt;br /&gt;
  -f; --mtu &amp;lt;val&amp;gt;: fragment packets (optionally w/given MTU)&lt;br /&gt;
  -D &amp;lt;decoy1,decoy2[,ME],...&amp;gt;: Cloak a scan with decoys&lt;br /&gt;
  -S &amp;lt;IP_Address&amp;gt;: Spoof source address&lt;br /&gt;
  -e &amp;lt;iface&amp;gt;: Use specified interface&lt;br /&gt;
  -g/--source-port &amp;lt;portnum&amp;gt;: Use given port number&lt;br /&gt;
  --proxies &amp;lt;url1,[url2],...&amp;gt;: Relay connections through HTTP/SOCKS4 proxies&lt;br /&gt;
  --data &amp;lt;hex string&amp;gt;: Append a custom payload to sent packets&lt;br /&gt;
  --data-string &amp;lt;string&amp;gt;: Append a custom ASCII string to sent packets&lt;br /&gt;
  --data-length &amp;lt;num&amp;gt;: Append random data to sent packets&lt;br /&gt;
  --ip-options &amp;lt;options&amp;gt;: Send packets with specified ip options&lt;br /&gt;
  --ttl &amp;lt;val&amp;gt;: Set IP time-to-live field&lt;br /&gt;
  --spoof-mac &amp;lt;mac address/prefix/vendor name&amp;gt;: Spoof your MAC address&lt;br /&gt;
  --badsum: Send packets with a bogus TCP/UDP/SCTP checksum&lt;br /&gt;
OUTPUT:&lt;br /&gt;
  -oN/-oX/-oS/-oG &amp;lt;file&amp;gt;: Output scan in normal, XML, s|&amp;lt;rIpt kIddi3,&lt;br /&gt;
     and Grepable format, respectively, to the given filename.&lt;br /&gt;
  -oA &amp;lt;basename&amp;gt;: Output in the three major formats at once&lt;br /&gt;
  -v: Increase verbosity level (use -vv or more for greater effect)&lt;br /&gt;
  -d: Increase debugging level (use -dd or more for greater effect)&lt;br /&gt;
  --reason: Display the reason a port is in a particular state&lt;br /&gt;
  --open: Only show open (or possibly open) ports&lt;br /&gt;
  --packet-trace: Show all packets sent and received&lt;br /&gt;
  --iflist: Print host interfaces and routes (for debugging)&lt;br /&gt;
  --append-output: Append to rather than clobber specified output files&lt;br /&gt;
  --resume &amp;lt;filename&amp;gt;: Resume an aborted scan&lt;br /&gt;
  --noninteractive: Disable runtime interactions via keyboard&lt;br /&gt;
  --stylesheet &amp;lt;path/URL&amp;gt;: XSL stylesheet to transform XML output to HTML&lt;br /&gt;
  --webxml: Reference stylesheet from Nmap.Org for more portable XML&lt;br /&gt;
  --no-stylesheet: Prevent associating of XSL stylesheet w/XML output&lt;br /&gt;
MISC:&lt;br /&gt;
  -6: Enable IPv6 scanning&lt;br /&gt;
  -A: Enable OS detection, version detection, script scanning, and traceroute&lt;br /&gt;
  --datadir &amp;lt;dirname&amp;gt;: Specify custom Nmap data file location&lt;br /&gt;
  --send-eth/--send-ip: Send using raw ethernet frames or IP packets&lt;br /&gt;
  --privileged: Assume that the user is fully privileged&lt;br /&gt;
  --unprivileged: Assume the user lacks raw socket privileges&lt;br /&gt;
  -V: Print version number&lt;br /&gt;
  -h: Print this help summary page.&lt;br /&gt;
EXAMPLES:&lt;br /&gt;
  nmap -v -A scanme.nmap.org&lt;br /&gt;
  nmap -v -sn 192.168.0.0/16 10.0.0.0/8&lt;br /&gt;
  nmap -v -iR 10000 -Pn -p 80&lt;br /&gt;
SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
NMAP(1)                                                                                      Nmap Reference Guide                                                                                     NMAP(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       nmap - Network exploration tool and security / port scanner&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       nmap [Scan Type...] [Options] {target specification}&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       Nmap (“Network Mapper”) is an open source tool for network exploration and security auditing. It was designed to rapidly scan large networks, although it works fine against single hosts. Nmap uses&lt;br /&gt;
       raw IP packets in novel ways to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and OS versions)&lt;br /&gt;
       they are running, what type of packet filters/firewalls are in use, and dozens of other characteristics. While Nmap is commonly used for security audits, many systems and network administrators find&lt;br /&gt;
       it useful for routine tasks such as network inventory, managing service upgrade schedules, and monitoring host or service uptime.&lt;br /&gt;
&lt;br /&gt;
       The output from Nmap is a list of scanned targets, with supplemental information on each depending on the options used. Key among that information is the “interesting ports table”.  That table lists&lt;br /&gt;
       the port number and protocol, service name, and state. The state is either open, filtered, closed, or unfiltered.  Open means that an application on the target machine is listening for&lt;br /&gt;
       connections/packets on that port.  Filtered means that a firewall, filter, or other network obstacle is blocking the port so that Nmap cannot tell whether it is open or closed.  Closed ports have no&lt;br /&gt;
       application listening on them, though they could open up at any time. Ports are classified as unfiltered when they are responsive to Nmap&#039;s probes, but Nmap cannot determine whether they are open or&lt;br /&gt;
       closed. Nmap reports the state combinations open|filtered and closed|filtered when it cannot determine which of the two states describe a port. The port table may also include software version&lt;br /&gt;
       details when version detection has been requested. When an IP protocol scan is requested (-sO), Nmap provides information on supported IP protocols rather than listening ports.&lt;br /&gt;
&lt;br /&gt;
       In addition to the interesting ports table, Nmap can provide further information on targets, including reverse DNS names, operating system guesses, device types, and MAC addresses.&lt;br /&gt;
&lt;br /&gt;
       A typical Nmap scan is shown in Example 1. The only Nmap arguments used in this example are -A, to enable OS and version detection, script scanning, and traceroute; -T4 for faster execution; and&lt;br /&gt;
       then the hostname.&lt;br /&gt;
&lt;br /&gt;
       Example 1. A representative Nmap scan&lt;br /&gt;
&lt;br /&gt;
           # nmap -A -T4 scanme.nmap.org&lt;br /&gt;
&lt;br /&gt;
           Nmap scan report for scanme.nmap.org (74.207.244.221)&lt;br /&gt;
           Host is up (0.029s latency).&lt;br /&gt;
           rDNS record for 74.207.244.221: li86-221.members.linode.com&lt;br /&gt;
           Not shown: 995 closed ports&lt;br /&gt;
           PORT     STATE    SERVICE     VERSION&lt;br /&gt;
           22/tcp   open     ssh         OpenSSH 5.3p1 Debian 3ubuntu7 (protocol 2.0)&lt;br /&gt;
           | ssh-hostkey: 1024 8d:60:f1:7c:ca:b7:3d:0a:d6:67:54:9d:69:d9:b9:dd (DSA)&lt;br /&gt;
           |_2048 79:f8:09:ac:d4:e2:32:42:10:49:d3:bd:20:82:85:ec (RSA)&lt;br /&gt;
           80/tcp   open     http        Apache httpd 2.2.14 ((Ubuntu))&lt;br /&gt;
           |_http-title: Go ahead and ScanMe!&lt;br /&gt;
           646/tcp  filtered ldp&lt;br /&gt;
           1720/tcp filtered H.323/Q.931&lt;br /&gt;
           9929/tcp open     nping-echo  Nping echo&lt;br /&gt;
           Device type: general purpose&lt;br /&gt;
           Running: Linux 2.6.X&lt;br /&gt;
           OS CPE: cpe:/o:linux:linux_kernel:2.6.39&lt;br /&gt;
           OS details: Linux 2.6.39&lt;br /&gt;
           Network Distance: 11 hops&lt;br /&gt;
           Service Info: OS: Linux; CPE: cpe:/o:linux:kernel&lt;br /&gt;
&lt;br /&gt;
           TRACEROUTE (using port 53/tcp)&lt;br /&gt;
           HOP RTT      ADDRESS&lt;br /&gt;
           [Cut first 10 hops for brevity]&lt;br /&gt;
           11  17.65 ms li86-221.members.linode.com (74.207.244.221)&lt;br /&gt;
&lt;br /&gt;
           Nmap done: 1 IP address (1 host up) scanned in 14.40 seconds&lt;br /&gt;
&lt;br /&gt;
       The newest version of Nmap can be obtained from https://nmap.org. The newest version of this man page is available at https://nmap.org/book/man.html.  It is also included as a chapter of Nmap&lt;br /&gt;
       Network Scanning: The Official Nmap Project Guide to Network Discovery and Security Scanning (see https://nmap.org/book/).&lt;br /&gt;
&lt;br /&gt;
OPTIONS SUMMARY&lt;br /&gt;
       This options summary is printed when Nmap is run with no arguments, and the latest version is always available at https://svn.nmap.org/nmap/docs/nmap.usage.txt. It helps people remember the most&lt;br /&gt;
       common options, but is no substitute for the in-depth documentation in the rest of this manual. Some obscure options aren&#039;t even included here.&lt;br /&gt;
&lt;br /&gt;
           Nmap 7.93 ( https://nmap.org )&lt;br /&gt;
           Usage: nmap [Scan Type(s)] [Options] {target specification}&lt;br /&gt;
           TARGET SPECIFICATION:&lt;br /&gt;
             Can pass hostnames, IP addresses, networks, etc.&lt;br /&gt;
             Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254&lt;br /&gt;
             -iL &amp;lt;inputfilename&amp;gt;: Input from list of hosts/networks&lt;br /&gt;
             -iR &amp;lt;num hosts&amp;gt;: Choose random targets&lt;br /&gt;
             --exclude &amp;lt;host1[,host2][,host3],...&amp;gt;: Exclude hosts/networks&lt;br /&gt;
             --excludefile &amp;lt;exclude_file&amp;gt;: Exclude list from file&lt;br /&gt;
           HOST DISCOVERY:&lt;br /&gt;
             -sL: List Scan - simply list targets to scan&lt;br /&gt;
             -sn: Ping Scan - disable port scan&lt;br /&gt;
             -Pn: Treat all hosts as online -- skip host discovery&lt;br /&gt;
             -PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports&lt;br /&gt;
             -PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes&lt;br /&gt;
             -PO[protocol list]: IP Protocol Ping&lt;br /&gt;
             -n/-R: Never do DNS resolution/Always resolve [default: sometimes]&lt;br /&gt;
             --dns-servers &amp;lt;serv1[,serv2],...&amp;gt;: Specify custom DNS servers&lt;br /&gt;
             --system-dns: Use OS&#039;s DNS resolver&lt;br /&gt;
             --traceroute: Trace hop path to each host&lt;br /&gt;
           SCAN TECHNIQUES:&lt;br /&gt;
             -sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans&lt;br /&gt;
             -sU: UDP Scan&lt;br /&gt;
             -sN/sF/sX: TCP Null, FIN, and Xmas scans&lt;br /&gt;
             --scanflags &amp;lt;flags&amp;gt;: Customize TCP scan flags&lt;br /&gt;
             -sI &amp;lt;zombie host[:probeport]&amp;gt;: Idle scan&lt;br /&gt;
             -sY/sZ: SCTP INIT/COOKIE-ECHO scans&lt;br /&gt;
             -sO: IP protocol scan&lt;br /&gt;
             -b &amp;lt;FTP relay host&amp;gt;: FTP bounce scan&lt;br /&gt;
           PORT SPECIFICATION AND SCAN ORDER:&lt;br /&gt;
             -p &amp;lt;port ranges&amp;gt;: Only scan specified ports&lt;br /&gt;
               Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9&lt;br /&gt;
             --exclude-ports &amp;lt;port ranges&amp;gt;: Exclude the specified ports from scanning&lt;br /&gt;
             -F: Fast mode - Scan fewer ports than the default scan&lt;br /&gt;
             -r: Scan ports sequentially - don&#039;t randomize&lt;br /&gt;
             --top-ports &amp;lt;number&amp;gt;: Scan &amp;lt;number&amp;gt; most common ports&lt;br /&gt;
             --port-ratio &amp;lt;ratio&amp;gt;: Scan ports more common than &amp;lt;ratio&amp;gt;&lt;br /&gt;
           SERVICE/VERSION DETECTION:&lt;br /&gt;
             -sV: Probe open ports to determine service/version info&lt;br /&gt;
             --version-intensity &amp;lt;level&amp;gt;: Set from 0 (light) to 9 (try all probes)&lt;br /&gt;
             --version-light: Limit to most likely probes (intensity 2)&lt;br /&gt;
             --version-all: Try every single probe (intensity 9)&lt;br /&gt;
             --version-trace: Show detailed version scan activity (for debugging)&lt;br /&gt;
           SCRIPT SCAN:&lt;br /&gt;
             -sC: equivalent to --script=default&lt;br /&gt;
             --script=&amp;lt;Lua scripts&amp;gt;: &amp;lt;Lua scripts&amp;gt; is a comma separated list of&lt;br /&gt;
                      directories, script-files or script-categories&lt;br /&gt;
             --script-args=&amp;lt;n1=v1,[n2=v2,...]&amp;gt;: provide arguments to scripts&lt;br /&gt;
             --script-args-file=filename: provide NSE script args in a file&lt;br /&gt;
             --script-trace: Show all data sent and received&lt;br /&gt;
             --script-updatedb: Update the script database.&lt;br /&gt;
             --script-help=&amp;lt;Lua scripts&amp;gt;: Show help about scripts.&lt;br /&gt;
                      &amp;lt;Lua scripts&amp;gt; is a comma-separated list of script-files or&lt;br /&gt;
                      script-categories.&lt;br /&gt;
           OS DETECTION:&lt;br /&gt;
             -O: Enable OS detection&lt;br /&gt;
             --osscan-limit: Limit OS detection to promising targets&lt;br /&gt;
             --osscan-guess: Guess OS more aggressively&lt;br /&gt;
           TIMING AND PERFORMANCE:&lt;br /&gt;
             Options which take &amp;lt;time&amp;gt; are in seconds, or append &#039;ms&#039; (milliseconds),&lt;br /&gt;
             &#039;s&#039; (seconds), &#039;m&#039; (minutes), or &#039;h&#039; (hours) to the value (e.g. 30m).&lt;br /&gt;
             -T&amp;lt;0-5&amp;gt;: Set timing template (higher is faster)&lt;br /&gt;
             --min-hostgroup/max-hostgroup &amp;lt;size&amp;gt;: Parallel host scan group sizes&lt;br /&gt;
             --min-parallelism/max-parallelism &amp;lt;numprobes&amp;gt;: Probe parallelization&lt;br /&gt;
             --min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout &amp;lt;time&amp;gt;: Specifies&lt;br /&gt;
                 probe round trip time.&lt;br /&gt;
             --max-retries &amp;lt;tries&amp;gt;: Caps number of port scan probe retransmissions.&lt;br /&gt;
             --host-timeout &amp;lt;time&amp;gt;: Give up on target after this long&lt;br /&gt;
             --scan-delay/--max-scan-delay &amp;lt;time&amp;gt;: Adjust delay between probes&lt;br /&gt;
             --min-rate &amp;lt;number&amp;gt;: Send packets no slower than &amp;lt;number&amp;gt; per second&lt;br /&gt;
             --max-rate &amp;lt;number&amp;gt;: Send packets no faster than &amp;lt;number&amp;gt; per second&lt;br /&gt;
           FIREWALL/IDS EVASION AND SPOOFING:&lt;br /&gt;
             -f; --mtu &amp;lt;val&amp;gt;: fragment packets (optionally w/given MTU)&lt;br /&gt;
             -D &amp;lt;decoy1,decoy2[,ME],...&amp;gt;: Cloak a scan with decoys&lt;br /&gt;
             -S &amp;lt;IP_Address&amp;gt;: Spoof source address&lt;br /&gt;
             -e &amp;lt;iface&amp;gt;: Use specified interface&lt;br /&gt;
             -g/--source-port &amp;lt;portnum&amp;gt;: Use given port number&lt;br /&gt;
             --proxies &amp;lt;url1,[url2],...&amp;gt;: Relay connections through HTTP/SOCKS4 proxies&lt;br /&gt;
             --data &amp;lt;hex string&amp;gt;: Append a custom payload to sent packets&lt;br /&gt;
             --data-string &amp;lt;string&amp;gt;: Append a custom ASCII string to sent packets&lt;br /&gt;
             --data-length &amp;lt;num&amp;gt;: Append random data to sent packets&lt;br /&gt;
             --ip-options &amp;lt;options&amp;gt;: Send packets with specified ip options&lt;br /&gt;
             --ttl &amp;lt;val&amp;gt;: Set IP time-to-live field&lt;br /&gt;
             --spoof-mac &amp;lt;mac address/prefix/vendor name&amp;gt;: Spoof your MAC address&lt;br /&gt;
             --badsum: Send packets with a bogus TCP/UDP/SCTP checksum&lt;br /&gt;
           OUTPUT:&lt;br /&gt;
             -oN/-oX/-oS/-oG &amp;lt;file&amp;gt;: Output scan in normal, XML, s|&amp;lt;rIpt kIddi3,&lt;br /&gt;
                and Grepable format, respectively, to the given filename.&lt;br /&gt;
             -oA &amp;lt;basename&amp;gt;: Output in the three major formats at once&lt;br /&gt;
             -v: Increase verbosity level (use -vv or more for greater effect)&lt;br /&gt;
             -d: Increase debugging level (use -dd or more for greater effect)&lt;br /&gt;
             --reason: Display the reason a port is in a particular state&lt;br /&gt;
             --open: Only show open (or possibly open) ports&lt;br /&gt;
             --packet-trace: Show all packets sent and received&lt;br /&gt;
             --iflist: Print host interfaces and routes (for debugging)&lt;br /&gt;
             --append-output: Append to rather than clobber specified output files&lt;br /&gt;
             --resume &amp;lt;filename&amp;gt;: Resume an aborted scan&lt;br /&gt;
             --noninteractive: Disable runtime interactions via keyboard&lt;br /&gt;
             --stylesheet &amp;lt;path/URL&amp;gt;: XSL stylesheet to transform XML output to HTML&lt;br /&gt;
             --webxml: Reference stylesheet from Nmap.Org for more portable XML&lt;br /&gt;
             --no-stylesheet: Prevent associating of XSL stylesheet w/XML output&lt;br /&gt;
           MISC:&lt;br /&gt;
             -6: Enable IPv6 scanning&lt;br /&gt;
             -A: Enable OS detection, version detection, script scanning, and traceroute&lt;br /&gt;
             --datadir &amp;lt;dirname&amp;gt;: Specify custom Nmap data file location&lt;br /&gt;
             --send-eth/--send-ip: Send using raw ethernet frames or IP packets&lt;br /&gt;
             --privileged: Assume that the user is fully privileged&lt;br /&gt;
             --unprivileged: Assume the user lacks raw socket privileges&lt;br /&gt;
             -V: Print version number&lt;br /&gt;
             -h: Print this help summary page.&lt;br /&gt;
           EXAMPLES:&lt;br /&gt;
             nmap -v -A scanme.nmap.org&lt;br /&gt;
             nmap -v -sn 192.168.0.0/16 10.0.0.0/8&lt;br /&gt;
             nmap -v -iR 10000 -Pn -p 80&lt;br /&gt;
           SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES&lt;br /&gt;
&lt;br /&gt;
TARGET SPECIFICATION&lt;br /&gt;
       Everything on the Nmap command-line that isn&#039;t an option (or option argument) is treated as a target host specification. The simplest case is to specify a target IP address or hostname for scanning.&lt;br /&gt;
&lt;br /&gt;
       When a hostname is given as a target, it is resolved via the Domain Name System (DNS) to determine the IP address to scan. If the name resolves to more than one IP address, only the first one will&lt;br /&gt;
       be scanned. To make Nmap scan all the resolved addresses instead of only the first one, use the --resolve-all option.&lt;br /&gt;
&lt;br /&gt;
       Sometimes you wish to scan a whole network of adjacent hosts. For this, Nmap supports CIDR-style addressing. You can append /numbits to an IP address or hostname and Nmap will scan every IP address&lt;br /&gt;
       for which the first numbits are the same as for the reference IP or hostname given. For example, 192.168.10.0/24 would scan the 256 hosts between 192.168.10.0 (binary: 11000000 10101000 00001010&lt;br /&gt;
       00000000) and 192.168.10.255 (binary: 11000000 10101000 00001010 11111111), inclusive.  192.168.10.40/24 would scan exactly the same targets. Given that the host scanme.nmap.org is at the IP address&lt;br /&gt;
       64.13.134.52, the specification scanme.nmap.org/16 would scan the 65,536 IP addresses between 64.13.0.0 and 64.13.255.255. The smallest allowed value is /0, which targets the whole Internet. The&lt;br /&gt;
       largest value for IPv4 is /32, which scans just the named host or IP address because all address bits are fixed. The largest value for IPv6 is /128, which does the same thing.&lt;br /&gt;
&lt;br /&gt;
       CIDR notation is short but not always flexible enough. For example, you might want to scan 192.168.0.0/16 but skip any IPs ending with .0 or .255 because they may be used as subnet network and&lt;br /&gt;
       broadcast addresses. Nmap supports this through octet range addressing. Rather than specify a normal IP address, you can specify a comma-separated list of numbers or ranges for each octet. For&lt;br /&gt;
       example, 192.168.0-255.1-254 will skip all addresses in the range that end in .0 or .255, and 192.168.3-5,7.1 will scan the four addresses 192.168.3.1, 192.168.4.1, 192.168.5.1, and 192.168.7.1.&lt;br /&gt;
       Either side of a range may be omitted; the default values are 0 on the left and 255 on the right. Using - by itself is the same as 0-255, but remember to use 0- in the first octet so the target&lt;br /&gt;
       specification doesn&#039;t look like a command-line option. Ranges need not be limited to the final octets: the specifier 0-255.0-255.13.37 will perform an Internet-wide scan for all IP addresses ending&lt;br /&gt;
       in 13.37. This sort of broad sampling can be useful for Internet surveys and research.&lt;br /&gt;
&lt;br /&gt;
       IPv6 addresses can be specified by their fully qualified IPv6 address or hostname or with CIDR notation for subnets. Octet ranges aren&#039;t yet supported for IPv6.&lt;br /&gt;
&lt;br /&gt;
       IPv6 addresses with non-global scope need to have a zone ID suffix. On Unix systems, this is a percent sign followed by an interface name; a complete address might be fe80::a8bb:ccff:fedd:eeff%eth0.&lt;br /&gt;
       On Windows, use an interface index number in place of an interface name: fe80::a8bb:ccff:fedd:eeff%1. You can see a list of interface indexes by running the command netsh.exe interface ipv6 show&lt;br /&gt;
       interface.&lt;br /&gt;
&lt;br /&gt;
       Nmap accepts multiple host specifications on the command line, and they don&#039;t need to be the same type. The command nmap scanme.nmap.org 192.168.0.0/8 10.0.0,1,3-7.- does what you would expect.&lt;br /&gt;
&lt;br /&gt;
       While targets are usually specified on the command lines, the following options are also available to control target selection:&lt;br /&gt;
&lt;br /&gt;
       -iL inputfilename (Input from list)&lt;br /&gt;
           Reads target specifications from inputfilename. Passing a huge list of hosts is often awkward on the command line, yet it is a common desire. For example, your DHCP server might export a list of&lt;br /&gt;
           10,000 current leases that you wish to scan. Or maybe you want to scan all IP addresses except for those to locate hosts using unauthorized static IP addresses. Simply generate the list of hosts&lt;br /&gt;
           to scan and pass that filename to Nmap as an argument to the -iL option. Entries can be in any of the formats accepted by Nmap on the command line (IP address, hostname, CIDR, IPv6, or octet&lt;br /&gt;
           ranges). Each entry must be separated by one or more spaces, tabs, or newlines. You can specify a hyphen (-) as the filename if you want Nmap to read hosts from standard input rather than an&lt;br /&gt;
           actual file.&lt;br /&gt;
&lt;br /&gt;
           The input file may contain comments that start with # and extend to the end of the line.&lt;br /&gt;
&lt;br /&gt;
       -iR num hosts (Choose random targets)&lt;br /&gt;
           For Internet-wide surveys and other research, you may want to choose targets at random. The num hosts argument tells Nmap how many IPs to generate. Undesirable IPs such as those in certain&lt;br /&gt;
           private, multicast, or unallocated address ranges are automatically skipped. The argument 0 can be specified for a never-ending scan. Keep in mind that some network administrators bristle at&lt;br /&gt;
           unauthorized scans of their networks and may complain. Use this option at your own risk! If you find yourself really bored one rainy afternoon, try the command nmap -Pn -sS -p 80 -iR 0 --open to&lt;br /&gt;
           locate random web servers for browsing.&lt;br /&gt;
&lt;br /&gt;
       --exclude host1[,host2[,...]] (Exclude hosts/networks)&lt;br /&gt;
           Specifies a comma-separated list of targets to be excluded from the scan even if they are part of the overall network range you specify. The list you pass in uses normal Nmap syntax, so it can&lt;br /&gt;
           include hostnames, CIDR netblocks, octet ranges, etc. This can be useful when the network you wish to scan includes untouchable mission-critical servers, systems that are known to react&lt;br /&gt;
           adversely to port scans, or subnets administered by other people.&lt;br /&gt;
&lt;br /&gt;
       --excludefile exclude_file (Exclude list from file)&lt;br /&gt;
           This offers the same functionality as the --exclude option, except that the excluded targets are provided in a newline-, space-, or tab-delimited exclude_file rather than on the command line.&lt;br /&gt;
&lt;br /&gt;
           The exclude file may contain comments that start with # and extend to the end of the line.&lt;br /&gt;
&lt;br /&gt;
       -n (No DNS resolution)&lt;br /&gt;
&lt;br /&gt;
           Tells Nmap to never do reverse DNS resolution on the active IP addresses it finds. Since DNS can be slow even with Nmap&#039;s built-in parallel stub resolver, this option can slash scanning times.&lt;br /&gt;
&lt;br /&gt;
       -R (DNS resolution for all targets)&lt;br /&gt;
           Tells Nmap to always do reverse DNS resolution on the target IP addresses. Normally reverse DNS is only performed against responsive (online) hosts.&lt;br /&gt;
&lt;br /&gt;
       --resolve-all (Scan each resolved address)&lt;br /&gt;
           If a hostname target resolves to more than one address, scan all of them. The default behavior is to only scan the first resolved address. Regardless, only addresses in the appropriate address&lt;br /&gt;
           family will be scanned: IPv4 by default, IPv6 with -6.&lt;br /&gt;
&lt;br /&gt;
       --unique (Scan each address only once)&lt;br /&gt;
           Scan each IP address only once. The default behavior is to scan each address as many times as it is specified in the target list, such as when network ranges overlap or different hostnames&lt;br /&gt;
           resolve to the same address.&lt;br /&gt;
&lt;br /&gt;
       --system-dns (Use system DNS resolver)&lt;br /&gt;
           By default, Nmap reverse-resolves IP addresses by sending queries directly to the name servers configured on your host and then listening for responses. Many requests (often dozens) are&lt;br /&gt;
           performed in parallel to improve performance. Specify this option to use your system resolver instead (one IP at a time via the getnameinfo call). This is slower and rarely useful unless you&lt;br /&gt;
           find a bug in the Nmap parallel resolver (please let us know if you do). The system resolver is always used for forward lookups (getting an IP address from a hostname).&lt;br /&gt;
&lt;br /&gt;
       --dns-servers server1[,server2[,...]]  (Servers to use for reverse DNS queries)&lt;br /&gt;
           By default, Nmap determines your DNS servers (for rDNS resolution) from your resolv.conf file (Unix) or the Registry (Win32). Alternatively, you may use this option to specify alternate servers.&lt;br /&gt;
           This option is not honored if you are using --system-dns. Using multiple DNS servers is often faster, especially if you choose authoritative servers for your target IP space. This option can&lt;br /&gt;
           also improve stealth, as your requests can be bounced off just about any recursive DNS server on the Internet.&lt;br /&gt;
&lt;br /&gt;
           This option also comes in handy when scanning private networks. Sometimes only a few name servers provide proper rDNS information, and you may not even know where they are. You can scan the&lt;br /&gt;
           network for port 53 (perhaps with version detection), then try Nmap list scans (-sL) specifying each name server one at a time with --dns-servers until you find one which works.&lt;br /&gt;
&lt;br /&gt;
           This option might not be honored if the DNS response exceeds the size of a UDP packet. In such a situation our DNS resolver will make the best effort to extract a response from the truncated&lt;br /&gt;
           packet, and if not successful it will fall back to using the system resolver. Also, responses that contain CNAME aliases will fall back to the system resolver.&lt;br /&gt;
&lt;br /&gt;
HOST DISCOVERY&lt;br /&gt;
       One of the very first steps in any network reconnaissance mission is to reduce a (sometimes huge) set of IP ranges into a list of active or interesting hosts. Scanning every port of every single IP&lt;br /&gt;
       address is slow and usually unnecessary. Of course what makes a host interesting depends greatly on the scan purposes. Network administrators may only be interested in hosts running a certain&lt;br /&gt;
       service, while security auditors may care about every single device with an IP address. An administrator may be comfortable using just an ICMP ping to locate hosts on his internal network, while an&lt;br /&gt;
       external penetration tester may use a diverse set of dozens of probes in an attempt to evade firewall restrictions.&lt;br /&gt;
&lt;br /&gt;
       Because host discovery needs are so diverse, Nmap offers a wide variety of options for customizing the techniques used. Host discovery is sometimes called ping scan, but it goes well beyond the&lt;br /&gt;
       simple ICMP echo request packets associated with the ubiquitous ping tool. Users can skip the discovery step entirely with a list scan (-sL) or by disabling host discovery (-Pn), or engage the&lt;br /&gt;
       network with arbitrary combinations of multi-port TCP SYN/ACK, UDP, SCTP INIT and ICMP probes. The goal of these probes is to solicit responses which demonstrate that an IP address is actually&lt;br /&gt;
       active (is being used by a host or network device). On many networks, only a small percentage of IP addresses are active at any given time. This is particularly common with private address space&lt;br /&gt;
       such as 10.0.0.0/8. That network has 16 million IPs, but I have seen it used by companies with less than a thousand machines. Host discovery can find those machines in a sparsely allocated sea of IP&lt;br /&gt;
       addresses.&lt;br /&gt;
&lt;br /&gt;
       If no host discovery options are given, Nmap sends an ICMP echo request, a TCP SYN packet to port 443, a TCP ACK packet to port 80, and an ICMP timestamp request. (For IPv6, the ICMP timestamp&lt;br /&gt;
       request is omitted because it is not part of ICMPv6.) These defaults are equivalent to the -PE -PS443 -PA80 -PP options. The exceptions to this are the ARP (for IPv4) and Neighbor Discovery (for&lt;br /&gt;
       IPv6) scans which are used for any targets on a local ethernet network. For unprivileged Unix shell users, the default probes are a SYN packet to ports 80 and 443 using the connect system call.&lt;br /&gt;
       This host discovery is often sufficient when scanning local networks, but a more comprehensive set of discovery probes is recommended for security auditing.&lt;br /&gt;
&lt;br /&gt;
       The -P* options (which select ping types) can be combined. You can increase your odds of penetrating strict firewalls by sending many probe types using different TCP ports/flags and ICMP codes. Also&lt;br /&gt;
       note that ARP/Neighbor Discovery is done by default against targets on a local Ethernet network even if you specify other -P* options, because it is almost always faster and more effective.&lt;br /&gt;
&lt;br /&gt;
       By default, Nmap does host discovery and then performs a port scan against each host it determines is online. This is true even if you specify non-default host discovery types such as UDP probes&lt;br /&gt;
       (-PU). Read about the -sn option to learn how to perform only host discovery, or use -Pn to skip host discovery and port scan all target addresses. The following options control host discovery:&lt;br /&gt;
&lt;br /&gt;
       -sL (List Scan)&lt;br /&gt;
           The list scan is a degenerate form of host discovery that simply lists each host of the network(s) specified, without sending any packets to the target hosts. By default, Nmap still does&lt;br /&gt;
           reverse-DNS resolution on the hosts to learn their names. It is often surprising how much useful information simple hostnames give out. For example, fw.chi is the name of one company&#039;s Chicago&lt;br /&gt;
           firewall.&lt;br /&gt;
&lt;br /&gt;
           Nmap also reports the total number of IP addresses at the end. The list scan is a good sanity check to ensure that you have proper IP addresses for your targets. If the hosts sport domain names&lt;br /&gt;
           you do not recognize, it is worth investigating further to prevent scanning the wrong company&#039;s network.&lt;br /&gt;
&lt;br /&gt;
           Since the idea is to simply print a list of target hosts, options for higher level functionality such as port scanning, OS detection, or host discovery cannot be combined with this. If you wish&lt;br /&gt;
           to disable host discovery while still performing such higher level functionality, read up on the -Pn (skip host discovery) option.&lt;br /&gt;
&lt;br /&gt;
       -sn (No port scan)&lt;br /&gt;
           This option tells Nmap not to do a port scan after host discovery, and only print out the available hosts that responded to the host discovery probes. This is often known as a “ping scan”, but&lt;br /&gt;
           you can also request that traceroute and NSE host scripts be run. This is by default one step more intrusive than the list scan, and can often be used for the same purposes. It allows light&lt;br /&gt;
           reconnaissance of a target network without attracting much attention. Knowing how many hosts are up is more valuable to attackers than the list provided by list scan of every single IP and host&lt;br /&gt;
           name.&lt;br /&gt;
&lt;br /&gt;
           Systems administrators often find this option valuable as well. It can easily be used to count available machines on a network or monitor server availability. This is often called a ping sweep,&lt;br /&gt;
           and is more reliable than pinging the broadcast address because many hosts do not reply to broadcast queries.&lt;br /&gt;
&lt;br /&gt;
           The default host discovery done with -sn consists of an ICMP echo request, TCP SYN to port 443, TCP ACK to port 80, and an ICMP timestamp request by default. When executed by an unprivileged&lt;br /&gt;
           user, only SYN packets are sent (using a connect call) to ports 80 and 443 on the target. When a privileged user tries to scan targets on a local ethernet network, ARP requests are used unless&lt;br /&gt;
           --send-ip was specified. The -sn option can be combined with any of the discovery probe types (the -P* options) for greater flexibility. If any of those probe type and port number options are&lt;br /&gt;
           used, the default probes are overridden. When strict firewalls are in place between the source host running Nmap and the target network, using those advanced techniques is recommended. Otherwise&lt;br /&gt;
           hosts could be missed when the firewall drops probes or their responses.&lt;br /&gt;
&lt;br /&gt;
           In previous releases of Nmap, -sn was known as -sP.&lt;br /&gt;
&lt;br /&gt;
       -Pn (No ping)&lt;br /&gt;
           This option skips the host discovery stage altogether. Normally, Nmap uses this stage to determine active machines for heavier scanning and to gauge the speed of the network. By default, Nmap&lt;br /&gt;
           only performs heavy probing such as port scans, version detection, or OS detection against hosts that are found to be up. Disabling host discovery with -Pn causes Nmap to attempt the requested&lt;br /&gt;
           scanning functions against every target IP address specified. So if a /16 sized network is specified on the command line, all 65,536 IP addresses are scanned. Proper host discovery is skipped as&lt;br /&gt;
           with the list scan, but instead of stopping and printing the target list, Nmap continues to perform requested functions as if each target IP is active. Default timing parameters are used, which&lt;br /&gt;
           may result in slower scans. To skip host discovery and port scan, while still allowing NSE to run, use the two options -Pn -sn together.&lt;br /&gt;
&lt;br /&gt;
           For machines on a local ethernet network, ARP scanning will still be performed (unless --disable-arp-ping or --send-ip is specified) because Nmap needs MAC addresses to further scan target&lt;br /&gt;
           hosts. In previous versions of Nmap, -Pn was -P0 and -PN.&lt;br /&gt;
&lt;br /&gt;
       -PS port list (TCP SYN Ping)&lt;br /&gt;
           This option sends an empty TCP packet with the SYN flag set. The default destination port is 80 (configurable at compile time by changing DEFAULT_TCP_PROBE_PORT_SPEC in nmap.h).  Alternate ports&lt;br /&gt;
           can be specified as a parameter. The syntax is the same as for the -p except that port type specifiers like T: are not allowed. Examples are -PS22 and -PS22-25,80,113,1050,35000. Note that there&lt;br /&gt;
           can be no space between -PS and the port list. If multiple probes are specified they will be sent in parallel.&lt;br /&gt;
&lt;br /&gt;
           The SYN flag suggests to the remote system that you are attempting to establish a connection. Normally the destination port will be closed, and a RST (reset) packet sent back. If the port&lt;br /&gt;
           happens to be open, the target will take the second step of a TCP three-way-handshake by responding with a SYN/ACK TCP packet. The machine running Nmap then tears down the nascent connection by&lt;br /&gt;
           responding with a RST rather than sending an ACK packet which would complete the three-way-handshake and establish a full connection. The RST packet is sent by the kernel of the machine running&lt;br /&gt;
           Nmap in response to the unexpected SYN/ACK, not by Nmap itself.&lt;br /&gt;
&lt;br /&gt;
           Nmap does not care whether the port is open or closed. Either the RST or SYN/ACK response discussed previously tell Nmap that the host is available and responsive.&lt;br /&gt;
&lt;br /&gt;
           On Unix boxes, only the privileged user root is generally able to send and receive raw TCP packets.  For unprivileged users, a workaround is automatically employed whereby the connect system&lt;br /&gt;
           call is initiated against each target port. This has the effect of sending a SYN packet to the target host, in an attempt to establish a connection. If connect returns with a quick success or an&lt;br /&gt;
           ECONNREFUSED failure, the underlying TCP stack must have received a SYN/ACK or RST and the host is marked available. If the connection attempt is left hanging until a timeout is reached, the&lt;br /&gt;
           host is marked as down.&lt;br /&gt;
&lt;br /&gt;
       -PA port list (TCP ACK Ping)&lt;br /&gt;
           The TCP ACK ping is quite similar to the just-discussed SYN ping. The difference, as you could likely guess, is that the TCP ACK flag is set instead of the SYN flag. Such an ACK packet purports&lt;br /&gt;
           to be acknowledging data over an established TCP connection, but no such connection exists. So remote hosts should always respond with a RST packet, disclosing their existence in the process.&lt;br /&gt;
&lt;br /&gt;
           The -PA option uses the same default port as the SYN probe (80) and can also take a list of destination ports in the same format. If an unprivileged user tries this, the connect workaround&lt;br /&gt;
           discussed previously is used. This workaround is imperfect because connect is actually sending a SYN packet rather than an ACK.&lt;br /&gt;
&lt;br /&gt;
           The reason for offering both SYN and ACK ping probes is to maximize the chances of bypassing firewalls. Many administrators configure routers and other simple firewalls to block incoming SYN&lt;br /&gt;
           packets except for those destined for public services like the company web site or mail server. This prevents other incoming connections to the organization, while allowing users to make&lt;br /&gt;
           unobstructed outgoing connections to the Internet. This non-stateful approach takes up few resources on the firewall/router and is widely supported by hardware and software filters. The Linux&lt;br /&gt;
           Netfilter/iptables firewall software offers the --syn convenience option to implement this stateless approach. When stateless firewall rules such as this are in place, SYN ping probes (-PS) are&lt;br /&gt;
           likely to be blocked when sent to closed target ports. In such cases, the ACK probe shines as it cuts right through these rules.&lt;br /&gt;
&lt;br /&gt;
           Another common type of firewall uses stateful rules that drop unexpected packets. This feature was initially found mostly on high-end firewalls, though it has become much more common over the&lt;br /&gt;
           years. The Linux Netfilter/iptables system supports this through the --state option, which categorizes packets based on connection state. A SYN probe is more likely to work against such a&lt;br /&gt;
           system, as unexpected ACK packets are generally recognized as bogus and dropped. A solution to this quandary is to send both SYN and ACK probes by specifying -PS and -PA.&lt;br /&gt;
&lt;br /&gt;
       -PU port list (UDP Ping)&lt;br /&gt;
           Another host discovery option is the UDP ping, which sends a UDP packet to the given ports. For most ports, the packet will be empty, though some use a protocol-specific payload that is more&lt;br /&gt;
           likely to elicit a response.  The payload database is described at https://nmap.org/book/nmap-payloads.html.&lt;br /&gt;
&lt;br /&gt;
           Packet content can also be affected with the --data, --data-string, and --data-length options.&lt;br /&gt;
&lt;br /&gt;
           The port list takes the same format as with the previously discussed -PS and -PA options. If no ports are specified, the default is 40125.  This default can be configured at compile-time by&lt;br /&gt;
           changing DEFAULT_UDP_PROBE_PORT_SPEC in nmap.h.  A highly uncommon port is used by default because sending to open ports is often undesirable for this particular scan type.&lt;br /&gt;
&lt;br /&gt;
           Upon hitting a closed port on the target machine, the UDP probe should elicit an ICMP port unreachable packet in return. This signifies to Nmap that the machine is up and available. Many other&lt;br /&gt;
           types of ICMP errors, such as host/network unreachables or TTL exceeded are indicative of a down or unreachable host. A lack of response is also interpreted this way. If an open port is reached,&lt;br /&gt;
           most services simply ignore the empty packet and fail to return any response. This is why the default probe port is 40125, which is highly unlikely to be in use. A few services, such as the&lt;br /&gt;
           Character Generator (chargen) protocol, will respond to an empty UDP packet, and thus disclose to Nmap that the machine is available.&lt;br /&gt;
&lt;br /&gt;
           The primary advantage of this scan type is that it bypasses firewalls and filters that only screen TCP. For example, I once owned a Linksys BEFW11S4 wireless broadband router. The external&lt;br /&gt;
           interface of this device filtered all TCP ports by default, but UDP probes would still elicit port unreachable messages and thus give away the device.&lt;br /&gt;
&lt;br /&gt;
       -PY port list (SCTP INIT Ping)&lt;br /&gt;
           This option sends an SCTP packet containing a minimal INIT chunk. The default destination port is 80 (configurable at compile time by changing DEFAULT_SCTP_PROBE_PORT_SPEC in nmap.h). Alternate&lt;br /&gt;
           ports can be specified as a parameter. The syntax is the same as for the -p except that port type specifiers like S: are not allowed. Examples are -PY22 and -PY22,80,179,5060. Note that there&lt;br /&gt;
           can be no space between -PY and the port list. If multiple probes are specified they will be sent in parallel.&lt;br /&gt;
&lt;br /&gt;
           The INIT chunk suggests to the remote system that you are attempting to establish an association. Normally the destination port will be closed, and an ABORT chunk will be sent back. If the port&lt;br /&gt;
           happens to be open, the target will take the second step of an SCTP four-way-handshake by responding with an INIT-ACK chunk. If the machine running Nmap has a functional SCTP stack, then it&lt;br /&gt;
           tears down the nascent association by responding with an ABORT chunk rather than sending a COOKIE-ECHO chunk which would be the next step in the four-way-handshake. The ABORT packet is sent by&lt;br /&gt;
           the kernel of the machine running Nmap in response to the unexpected INIT-ACK, not by Nmap itself.&lt;br /&gt;
&lt;br /&gt;
           Nmap does not care whether the port is open or closed. Either the ABORT or INIT-ACK response discussed previously tell Nmap that the host is available and responsive.&lt;br /&gt;
&lt;br /&gt;
           On Unix boxes, only the privileged user root is generally able to send and receive raw SCTP packets.  Using SCTP INIT Pings is currently not possible for unprivileged users.&lt;br /&gt;
&lt;br /&gt;
       -PE; -PP; -PM (ICMP Ping Types)&lt;br /&gt;
           In addition to the unusual TCP, UDP and SCTP host discovery types discussed previously, Nmap can send the standard packets sent by the ubiquitous ping program. Nmap sends an ICMP type 8 (echo&lt;br /&gt;
           request) packet to the target IP addresses, expecting a type 0 (echo reply) in return from available hosts.  Unfortunately for network explorers, many hosts and firewalls now block these&lt;br /&gt;
           packets, rather than responding as required by RFC 1122[2].  For this reason, ICMP-only scans are rarely reliable enough against unknown targets over the Internet. But for system administrators&lt;br /&gt;
           monitoring an internal network, they can be a practical and efficient approach. Use the -PE option to enable this echo request behavior.&lt;br /&gt;
&lt;br /&gt;
           While echo request is the standard ICMP ping query, Nmap does not stop there. The ICMP standards (RFC 792[3] and RFC 950[4] ) also specify timestamp request, information request, and address&lt;br /&gt;
           mask request packets as codes 13, 15, and 17, respectively. While the ostensible purpose for these queries is to learn information such as address masks and current times, they can easily be&lt;br /&gt;
           used for host discovery. A system that replies is up and available. Nmap does not currently implement information request packets, as they are not widely supported. RFC 1122 insists that “a host&lt;br /&gt;
           SHOULD NOT implement these messages”. Timestamp and address mask queries can be sent with the -PP and -PM options, respectively. A timestamp reply (ICMP code 14) or address mask reply (code 18)&lt;br /&gt;
           discloses that the host is available. These two queries can be valuable when administrators specifically block echo request packets while forgetting that other ICMP queries can be used for the&lt;br /&gt;
           same purpose.&lt;br /&gt;
&lt;br /&gt;
       -PO protocol list (IP Protocol Ping)&lt;br /&gt;
           One of the newer host discovery options is the IP protocol ping, which sends IP packets with the specified protocol number set in their IP header. The protocol list takes the same format as do&lt;br /&gt;
           port lists in the previously discussed TCP, UDP and SCTP host discovery options. If no protocols are specified, the default is to send multiple IP packets for ICMP (protocol 1), IGMP (protocol&lt;br /&gt;
           2), and IP-in-IP (protocol 4). The default protocols can be configured at compile-time by changing DEFAULT_PROTO_PROBE_PORT_SPEC in nmap.h. Note that for the ICMP, IGMP, TCP (protocol 6), UDP&lt;br /&gt;
           (protocol 17) and SCTP (protocol 132), the packets are sent with the proper protocol headers while other protocols are sent with no additional data beyond the IP header (unless any of --data,&lt;br /&gt;
           --data-string, or --data-length options are specified).&lt;br /&gt;
&lt;br /&gt;
           This host discovery method looks for either responses using the same protocol as a probe, or ICMP protocol unreachable messages which signify that the given protocol isn&#039;t supported on the&lt;br /&gt;
           destination host. Either type of response signifies that the target host is alive.&lt;br /&gt;
&lt;br /&gt;
       --disable-arp-ping (No ARP or ND Ping)&lt;br /&gt;
           Nmap normally does ARP or IPv6 Neighbor Discovery (ND) discovery of locally connected ethernet hosts, even if other host discovery options such as -Pn or -PE are used. To disable this implicit&lt;br /&gt;
           behavior, use the --disable-arp-ping option.&lt;br /&gt;
&lt;br /&gt;
           The default behavior is normally faster, but this option is useful on networks using proxy ARP, in which a router speculatively replies to all ARP requests, making every target appear to be up&lt;br /&gt;
           according to ARP scan.&lt;br /&gt;
&lt;br /&gt;
       --discovery-ignore-rst&lt;br /&gt;
           In some cases, firewalls may spoof TCP reset (RST) replies in response to probes to unoccupied or disallowed addresses. Since Nmap ordinarily considers RST replies to be proof that the target is&lt;br /&gt;
           up, this can lead to wasted time scanning targets that aren&#039;t there. Using the --discovery-ignore-rst will prevent Nmap from considering these replies during host discovery. You may need to&lt;br /&gt;
           select extra host discovery options to ensure you don&#039;t miss targets in this case.&lt;br /&gt;
&lt;br /&gt;
       --traceroute (Trace path to host)&lt;br /&gt;
           Traceroutes are performed post-scan using information from the scan results to determine the port and protocol most likely to reach the target. It works with all scan types except connect scans&lt;br /&gt;
           (-sT) and idle scans (-sI). All traces use Nmap&#039;s dynamic timing model and are performed in parallel.&lt;br /&gt;
&lt;br /&gt;
           Traceroute works by sending packets with a low TTL (time-to-live) in an attempt to elicit ICMP Time Exceeded messages from intermediate hops between the scanner and the target host. Standard&lt;br /&gt;
           traceroute implementations start with a TTL of 1 and increment the TTL until the destination host is reached. Nmap&#039;s traceroute starts with a high TTL and then decrements the TTL until it&lt;br /&gt;
           reaches zero. Doing it backwards lets Nmap employ clever caching algorithms to speed up traces over multiple hosts. On average Nmap sends 5–10 fewer packets per host, depending on network&lt;br /&gt;
           conditions. If a single subnet is being scanned (i.e. 192.168.0.0/24) Nmap may only have to send two packets to most hosts.&lt;br /&gt;
&lt;br /&gt;
PORT SCANNING BASICS&lt;br /&gt;
       While Nmap has grown in functionality over the years, it began as an efficient port scanner, and that remains its core function. The simple command nmap target scans 1,000 TCP ports on the host&lt;br /&gt;
       target. While many port scanners have traditionally lumped all ports into the open or closed states, Nmap is much more granular. It divides ports into six states: open, closed, filtered, unfiltered,&lt;br /&gt;
       open|filtered, or closed|filtered.&lt;br /&gt;
&lt;br /&gt;
       These states are not intrinsic properties of the port itself, but describe how Nmap sees them. For example, an Nmap scan from the same network as the target may show port 135/tcp as open, while a&lt;br /&gt;
       scan at the same time with the same options from across the Internet might show that port as filtered.&lt;br /&gt;
&lt;br /&gt;
       The six port states recognized by Nmap&lt;br /&gt;
&lt;br /&gt;
       open&lt;br /&gt;
           An application is actively accepting TCP connections, UDP datagrams or SCTP associations on this port. Finding these is often the primary goal of port scanning. Security-minded people know that&lt;br /&gt;
           each open port is an avenue for attack. Attackers and pen-testers want to exploit the open ports, while administrators try to close or protect them with firewalls without thwarting legitimate&lt;br /&gt;
           users. Open ports are also interesting for non-security scans because they show services available for use on the network.&lt;br /&gt;
&lt;br /&gt;
       closed&lt;br /&gt;
           A closed port is accessible (it receives and responds to Nmap probe packets), but there is no application listening on it. They can be helpful in showing that a host is up on an IP address (host&lt;br /&gt;
           discovery, or ping scanning), and as part of OS detection. Because closed ports are reachable, it may be worth scanning later in case some open up. Administrators may want to consider blocking&lt;br /&gt;
           such ports with a firewall. Then they would appear in the filtered state, discussed next.&lt;br /&gt;
&lt;br /&gt;
       filtered&lt;br /&gt;
           Nmap cannot determine whether the port is open because packet filtering prevents its probes from reaching the port. The filtering could be from a dedicated firewall device, router rules, or&lt;br /&gt;
           host-based firewall software. These ports frustrate attackers because they provide so little information. Sometimes they respond with ICMP error messages such as type 3 code 13 (destination&lt;br /&gt;
           unreachable: communication administratively prohibited), but filters that simply drop probes without responding are far more common. This forces Nmap to retry several times just in case the&lt;br /&gt;
           probe was dropped due to network congestion rather than filtering. This slows down the scan dramatically.&lt;br /&gt;
&lt;br /&gt;
       unfiltered&lt;br /&gt;
           The unfiltered state means that a port is accessible, but Nmap is unable to determine whether it is open or closed. Only the ACK scan, which is used to map firewall rulesets, classifies ports&lt;br /&gt;
           into this state. Scanning unfiltered ports with other scan types such as Window scan, SYN scan, or FIN scan, may help resolve whether the port is open.&lt;br /&gt;
&lt;br /&gt;
       open|filtered&lt;br /&gt;
           Nmap places ports in this state when it is unable to determine whether a port is open or filtered. This occurs for scan types in which open ports give no response. The lack of response could&lt;br /&gt;
           also mean that a packet filter dropped the probe or any response it elicited. So Nmap does not know for sure whether the port is open or being filtered. The UDP, IP protocol, FIN, NULL, and Xmas&lt;br /&gt;
           scans classify ports this way.&lt;br /&gt;
&lt;br /&gt;
       closed|filtered&lt;br /&gt;
           This state is used when Nmap is unable to determine whether a port is closed or filtered. It is only used for the IP ID idle scan.&lt;br /&gt;
&lt;br /&gt;
PORT SCANNING TECHNIQUES&lt;br /&gt;
       As a novice performing automotive repair, I can struggle for hours trying to fit my rudimentary tools (hammer, duct tape, wrench, etc.) to the task at hand. When I fail miserably and tow my jalopy&lt;br /&gt;
       to a real mechanic, he invariably fishes around in a huge tool chest until pulling out the perfect gizmo which makes the job seem effortless. The art of port scanning is similar. Experts understand&lt;br /&gt;
       the dozens of scan techniques and choose the appropriate one (or combination) for a given task. Inexperienced users and script kiddies, on the other hand, try to solve every problem with the default&lt;br /&gt;
       SYN scan. Since Nmap is free, the only barrier to port scanning mastery is knowledge. That certainly beats the automotive world, where it may take great skill to determine that you need a strut&lt;br /&gt;
       spring compressor, then you still have to pay thousands of dollars for it.&lt;br /&gt;
&lt;br /&gt;
       Most of the scan types are only available to privileged users.  This is because they send and receive raw packets, which requires root access on Unix systems. Using an administrator account on&lt;br /&gt;
       Windows is recommended, though Nmap sometimes works for unprivileged users on that platform when Npcap has already been loaded into the OS. Requiring root privileges was a serious limitation when&lt;br /&gt;
       Nmap was released in 1997, as many users only had access to shared shell accounts. Now, the world is different. Computers are cheaper, far more people have always-on direct Internet access, and&lt;br /&gt;
       desktop Unix systems (including Linux and Mac OS X) are prevalent. A Windows version of Nmap is now available, allowing it to run on even more desktops. For all these reasons, users have less need&lt;br /&gt;
       to run Nmap from limited shared shell accounts. This is fortunate, as the privileged options make Nmap far more powerful and flexible.&lt;br /&gt;
&lt;br /&gt;
       While Nmap attempts to produce accurate results, keep in mind that all of its insights are based on packets returned by the target machines (or firewalls in front of them). Such hosts may be&lt;br /&gt;
       untrustworthy and send responses intended to confuse or mislead Nmap. Much more common are non-RFC-compliant hosts that do not respond as they should to Nmap probes. FIN, NULL, and Xmas scans are&lt;br /&gt;
       particularly susceptible to this problem. Such issues are specific to certain scan types and so are discussed in the individual scan type entries.&lt;br /&gt;
&lt;br /&gt;
       This section documents the dozen or so port scan techniques supported by Nmap. Only one method may be used at a time, except that UDP scan (-sU) and any one of the SCTP scan types (-sY, -sZ) may be&lt;br /&gt;
       combined with any one of the TCP scan types. As a memory aid, port scan type options are of the form -sC, where C is a prominent character in the scan name, usually the first. The one exception to&lt;br /&gt;
       this is the deprecated FTP bounce scan (-b). By default, Nmap performs a SYN Scan, though it substitutes a connect scan if the user does not have proper privileges to send raw packets (requires root&lt;br /&gt;
       access on Unix). Of the scans listed in this section, unprivileged users can only execute connect and FTP bounce scans.&lt;br /&gt;
&lt;br /&gt;
       -sS (TCP SYN scan)&lt;br /&gt;
           SYN scan is the default and most popular scan option for good reasons. It can be performed quickly, scanning thousands of ports per second on a fast network not hampered by restrictive&lt;br /&gt;
           firewalls. It is also relatively unobtrusive and stealthy since it never completes TCP connections. SYN scan works against any compliant TCP stack rather than depending on idiosyncrasies of&lt;br /&gt;
           specific platforms as Nmap&#039;s FIN/NULL/Xmas, Maimon and idle scans do. It also allows clear, reliable differentiation between the open, closed, and filtered states.&lt;br /&gt;
&lt;br /&gt;
           This technique is often referred to as half-open scanning, because you don&#039;t open a full TCP connection. You send a SYN packet, as if you are going to open a real connection and then wait for a&lt;br /&gt;
           response. A SYN/ACK indicates the port is listening (open), while a RST (reset) is indicative of a non-listener. If no response is received after several retransmissions, the port is marked as&lt;br /&gt;
           filtered. The port is also marked filtered if an ICMP unreachable error (type 3, code 0, 1, 2, 3, 9, 10, or 13) is received. The port is also considered open if a SYN packet (without the ACK&lt;br /&gt;
           flag) is received in response. This can be due to an extremely rare TCP feature known as a simultaneous open or split handshake connection (see https://nmap.org/misc/split-handshake.pdf).&lt;br /&gt;
&lt;br /&gt;
       -sT (TCP connect scan)&lt;br /&gt;
           TCP connect scan is the default TCP scan type when SYN scan is not an option. This is the case when a user does not have raw packet privileges. Instead of writing raw packets as most other scan&lt;br /&gt;
           types do, Nmap asks the underlying operating system to establish a connection with the target machine and port by issuing the connect system call. This is the same high-level system call that&lt;br /&gt;
           web browsers, P2P clients, and most other network-enabled applications use to establish a connection. It is part of a programming interface known as the Berkeley Sockets API. Rather than read&lt;br /&gt;
           raw packet responses off the wire, Nmap uses this API to obtain status information on each connection attempt.&lt;br /&gt;
&lt;br /&gt;
           When SYN scan is available, it is usually a better choice. Nmap has less control over the high level connect call than with raw packets, making it less efficient. The system call completes&lt;br /&gt;
           connections to open target ports rather than performing the half-open reset that SYN scan does. Not only does this take longer and require more packets to obtain the same information, but target&lt;br /&gt;
           machines are more likely to log the connection. A decent IDS will catch either, but most machines have no such alarm system. Many services on your average Unix system will add a note to syslog,&lt;br /&gt;
           and sometimes a cryptic error message, when Nmap connects and then closes the connection without sending data. Truly pathetic services crash when this happens, though that is uncommon. An&lt;br /&gt;
           administrator who sees a bunch of connection attempts in her logs from a single system should know that she has been connect scanned.&lt;br /&gt;
&lt;br /&gt;
       -sU (UDP scans)&lt;br /&gt;
           While most popular services on the Internet run over the TCP protocol, UDP[5] services are widely deployed. DNS, SNMP, and DHCP (registered ports 53, 161/162, and 67/68) are three of the most&lt;br /&gt;
           common. Because UDP scanning is generally slower and more difficult than TCP, some security auditors ignore these ports. This is a mistake, as exploitable UDP services are quite common and&lt;br /&gt;
           attackers certainly don&#039;t ignore the whole protocol. Fortunately, Nmap can help inventory UDP ports.&lt;br /&gt;
&lt;br /&gt;
           UDP scan is activated with the -sU option. It can be combined with a TCP scan type such as SYN scan (-sS) to check both protocols during the same run.&lt;br /&gt;
&lt;br /&gt;
           UDP scan works by sending a UDP packet to every targeted port. For some common ports such as 53 and 161, a protocol-specific payload is sent to increase response rate, but for most ports the&lt;br /&gt;
           packet is empty unless the --data, --data-string, or --data-length options are specified. If an ICMP port unreachable error (type 3, code 3) is returned, the port is closed. Other ICMP&lt;br /&gt;
           unreachable errors (type 3, codes 0, 1, 2, 9, 10, or 13) mark the port as filtered. Occasionally, a service will respond with a UDP packet, proving that it is open. If no response is received&lt;br /&gt;
           after retransmissions, the port is classified as open|filtered. This means that the port could be open, or perhaps packet filters are blocking the communication. Version detection (-sV) can be&lt;br /&gt;
           used to help differentiate the truly open ports from the filtered ones.&lt;br /&gt;
&lt;br /&gt;
           A big challenge with UDP scanning is doing it quickly. Open and filtered ports rarely send any response, leaving Nmap to time out and then conduct retransmissions just in case the probe or&lt;br /&gt;
           response were lost. Closed ports are often an even bigger problem. They usually send back an ICMP port unreachable error. But unlike the RST packets sent by closed TCP ports in response to a SYN&lt;br /&gt;
           or connect scan, many hosts rate limit ICMP port unreachable messages by default. Linux and Solaris are particularly strict about this. For example, the Linux 2.4.20 kernel limits destination&lt;br /&gt;
           unreachable messages to one per second (in net/ipv4/icmp.c).&lt;br /&gt;
&lt;br /&gt;
           Nmap detects rate limiting and slows down accordingly to avoid flooding the network with useless packets that the target machine will drop. Unfortunately, a Linux-style limit of one packet per&lt;br /&gt;
           second makes a 65,536-port scan take more than 18 hours. Ideas for speeding your UDP scans up include scanning more hosts in parallel, doing a quick scan of just the popular ports first,&lt;br /&gt;
           scanning from behind the firewall, and using --host-timeout to skip slow hosts.&lt;br /&gt;
&lt;br /&gt;
       -sY (SCTP INIT scan)&lt;br /&gt;
           SCTP[6] is a relatively new alternative to the TCP and UDP protocols, combining most characteristics of TCP and UDP, and also adding new features like multi-homing and multi-streaming. It is&lt;br /&gt;
           mostly being used for SS7/SIGTRAN related services but has the potential to be used for other applications as well. SCTP INIT scan is the SCTP equivalent of a TCP SYN scan. It can be performed&lt;br /&gt;
           quickly, scanning thousands of ports per second on a fast network not hampered by restrictive firewalls. Like SYN scan, INIT scan is relatively unobtrusive and stealthy, since it never completes&lt;br /&gt;
           SCTP associations. It also allows clear, reliable differentiation between the open, closed, and filtered states.&lt;br /&gt;
&lt;br /&gt;
           This technique is often referred to as half-open scanning, because you don&#039;t open a full SCTP association. You send an INIT chunk, as if you are going to open a real association and then wait&lt;br /&gt;
           for a response. An INIT-ACK chunk indicates the port is listening (open), while an ABORT chunk is indicative of a non-listener. If no response is received after several retransmissions, the port&lt;br /&gt;
           is marked as filtered. The port is also marked filtered if an ICMP unreachable error (type 3, code 0, 1, 2, 3, 9, 10, or 13) is received.&lt;br /&gt;
&lt;br /&gt;
       -sN; -sF; -sX (TCP NULL, FIN, and Xmas scans)&lt;br /&gt;
           These three scan types (even more are possible with the --scanflags option described in the next section) exploit a subtle loophole in the TCP RFC[7] to differentiate between open and closed&lt;br /&gt;
           ports. Page 65 of RFC 793 says that “if the [destination] port state is CLOSED .... an incoming segment not containing a RST causes a RST to be sent in response.”  Then the next page discusses&lt;br /&gt;
           packets sent to open ports without the SYN, RST, or ACK bits set, stating that: “you are unlikely to get here, but if you do, drop the segment, and return.”&lt;br /&gt;
&lt;br /&gt;
           When scanning systems compliant with this RFC text, any packet not containing SYN, RST, or ACK bits will result in a returned RST if the port is closed and no response at all if the port is&lt;br /&gt;
           open. As long as none of those three bits are included, any combination of the other three (FIN, PSH, and URG) are OK. Nmap exploits this with three scan types:&lt;br /&gt;
&lt;br /&gt;
           Null scan (-sN)&lt;br /&gt;
               Does not set any bits (TCP flag header is 0)&lt;br /&gt;
&lt;br /&gt;
           FIN scan (-sF)&lt;br /&gt;
               Sets just the TCP FIN bit.&lt;br /&gt;
&lt;br /&gt;
           Xmas scan (-sX)&lt;br /&gt;
               Sets the FIN, PSH, and URG flags, lighting the packet up like a Christmas tree.&lt;br /&gt;
&lt;br /&gt;
           These three scan types are exactly the same in behavior except for the TCP flags set in probe packets. If a RST packet is received, the port is considered closed, while no response means it is&lt;br /&gt;
           open|filtered. The port is marked filtered if an ICMP unreachable error (type 3, code 0, 1, 2, 3, 9, 10, or 13) is received.&lt;br /&gt;
&lt;br /&gt;
           The key advantage to these scan types is that they can sneak through certain non-stateful firewalls and packet filtering routers. Another advantage is that these scan types are a little more&lt;br /&gt;
           stealthy than even a SYN scan. Don&#039;t count on this though—most modern IDS products can be configured to detect them. The big downside is that not all systems follow RFC 793 to the letter. A&lt;br /&gt;
           number of systems send RST responses to the probes regardless of whether the port is open or not. This causes all of the ports to be labeled closed. Major operating systems that do this are&lt;br /&gt;
           Microsoft Windows, many Cisco devices, BSDI, and IBM OS/400. This scan does work against most Unix-based systems though. Another downside of these scans is that they can&#039;t distinguish open ports&lt;br /&gt;
           from certain filtered ones, leaving you with the response open|filtered.&lt;br /&gt;
&lt;br /&gt;
       -sA (TCP ACK scan)&lt;br /&gt;
           This scan is different than the others discussed so far in that it never determines open (or even open|filtered) ports. It is used to map out firewall rulesets, determining whether they are&lt;br /&gt;
           stateful or not and which ports are filtered.&lt;br /&gt;
&lt;br /&gt;
           The ACK scan probe packet has only the ACK flag set (unless you use --scanflags). When scanning unfiltered systems, open and closed ports will both return a RST packet. Nmap then labels them as&lt;br /&gt;
           unfiltered, meaning that they are reachable by the ACK packet, but whether they are open or closed is undetermined. Ports that don&#039;t respond, or send certain ICMP error messages back (type 3,&lt;br /&gt;
           code 0, 1, 2, 3, 9, 10, or 13), are labeled filtered.&lt;br /&gt;
&lt;br /&gt;
       -sW (TCP Window scan)&lt;br /&gt;
           Window scan is exactly the same as ACK scan except that it exploits an implementation detail of certain systems to differentiate open ports from closed ones, rather than always printing&lt;br /&gt;
           unfiltered when a RST is returned. It does this by examining the TCP Window field of the RST packets returned. On some systems, open ports use a positive window size (even for RST packets) while&lt;br /&gt;
           closed ones have a zero window. So instead of always listing a port as unfiltered when it receives a RST back, Window scan lists the port as open or closed if the TCP Window value in that reset&lt;br /&gt;
           is positive or zero, respectively.&lt;br /&gt;
&lt;br /&gt;
           This scan relies on an implementation detail of a minority of systems out on the Internet, so you can&#039;t always trust it. Systems that don&#039;t support it will usually return all ports closed. Of&lt;br /&gt;
           course, it is possible that the machine really has no open ports. If most scanned ports are closed but a few common port numbers (such as 22, 25, 53) are filtered, the system is most likely&lt;br /&gt;
           susceptible. Occasionally, systems will even show the exact opposite behavior. If your scan shows 1,000 open ports and three closed or filtered ports, then those three may very well be the truly&lt;br /&gt;
           open ones.&lt;br /&gt;
&lt;br /&gt;
       -sM (TCP Maimon scan)&lt;br /&gt;
           The Maimon scan is named after its discoverer, Uriel Maimon.  He described the technique in Phrack Magazine issue #49 (November 1996).  Nmap, which included this technique, was released two&lt;br /&gt;
           issues later. This technique is exactly the same as NULL, FIN, and Xmas scans, except that the probe is FIN/ACK. According to RFC 793[7] (TCP), a RST packet should be generated in response to&lt;br /&gt;
           such a probe whether the port is open or closed. However, Uriel noticed that many BSD-derived systems simply drop the packet if the port is open.&lt;br /&gt;
&lt;br /&gt;
       --scanflags (Custom TCP scan)&lt;br /&gt;
           Truly advanced Nmap users need not limit themselves to the canned scan types offered. The --scanflags option allows you to design your own scan by specifying arbitrary TCP flags.  Let your&lt;br /&gt;
           creative juices flow, while evading intrusion detection systems whose vendors simply paged through the Nmap man page adding specific rules!&lt;br /&gt;
&lt;br /&gt;
           The --scanflags argument can be a numerical flag value such as 9 (PSH and FIN), but using symbolic names is easier. Just mash together any combination of URG, ACK, PSH, RST, SYN, and FIN. For&lt;br /&gt;
           example, --scanflags URGACKPSHRSTSYNFIN sets everything, though it&#039;s not very useful for scanning. The order these are specified in is irrelevant.&lt;br /&gt;
&lt;br /&gt;
           In addition to specifying the desired flags, you can specify a TCP scan type (such as -sA or -sF). That base type tells Nmap how to interpret responses. For example, a SYN scan considers&lt;br /&gt;
           no-response to indicate a filtered port, while a FIN scan treats the same as open|filtered. Nmap will behave the same way it does for the base scan type, except that it will use the TCP flags&lt;br /&gt;
           you specify instead. If you don&#039;t specify a base type, SYN scan is used.&lt;br /&gt;
&lt;br /&gt;
       -sZ (SCTP COOKIE ECHO scan)&lt;br /&gt;
           SCTP COOKIE ECHO scan is a more advanced SCTP scan. It takes advantage of the fact that SCTP implementations should silently drop packets containing COOKIE ECHO chunks on open ports, but send an&lt;br /&gt;
           ABORT if the port is closed. The advantage of this scan type is that it is not as obvious a port scan than an INIT scan. Also, there may be non-stateful firewall rulesets blocking INIT chunks,&lt;br /&gt;
           but not COOKIE ECHO chunks. Don&#039;t be fooled into thinking that this will make a port scan invisible; a good IDS will be able to detect SCTP COOKIE ECHO scans too. The downside is that SCTP&lt;br /&gt;
           COOKIE ECHO scans cannot differentiate between open and filtered ports, leaving you with the state open|filtered in both cases.&lt;br /&gt;
&lt;br /&gt;
       -sI zombie host[:probeport] (idle scan)&lt;br /&gt;
           This advanced scan method allows for a truly blind TCP port scan of the target (meaning no packets are sent to the target from your real IP address). Instead, a unique side-channel attack&lt;br /&gt;
           exploits predictable IP fragmentation ID sequence generation on the zombie host to glean information about the open ports on the target. IDS systems will display the scan as coming from the&lt;br /&gt;
           zombie machine you specify (which must be up and meet certain criteria).  This fascinating scan type is too complex to fully describe in this reference guide, so I wrote and posted an informal&lt;br /&gt;
           paper with full details at https://nmap.org/book/idlescan.html.&lt;br /&gt;
&lt;br /&gt;
           Besides being extraordinarily stealthy (due to its blind nature), this scan type permits mapping out IP-based trust relationships between machines. The port listing shows open ports from the&lt;br /&gt;
           perspective of the zombie host.  So you can try scanning a target using various zombies that you think might be trusted (via router/packet filter rules).&lt;br /&gt;
&lt;br /&gt;
           You can add a colon followed by a port number to the zombie host if you wish to probe a particular port on the zombie for IP ID changes. Otherwise Nmap will use the port it uses by default for&lt;br /&gt;
           TCP pings (80).&lt;br /&gt;
&lt;br /&gt;
       -sO (IP protocol scan)&lt;br /&gt;
           IP protocol scan allows you to determine which IP protocols (TCP, ICMP, IGMP, etc.) are supported by target machines. This isn&#039;t technically a port scan, since it cycles through IP protocol&lt;br /&gt;
           numbers rather than TCP or UDP port numbers. Yet it still uses the -p option to select scanned protocol numbers, reports its results within the normal port table format, and even uses the same&lt;br /&gt;
           underlying scan engine as the true port scanning methods. So it is close enough to a port scan that it belongs here.&lt;br /&gt;
&lt;br /&gt;
           Besides being useful in its own right, protocol scan demonstrates the power of open-source software. While the fundamental idea is pretty simple, I had not thought to add it nor received any&lt;br /&gt;
           requests for such functionality. Then in the summer of 2000, Gerhard Rieger conceived the idea, wrote an excellent patch implementing it, and sent it to the announce mailing list (then called&lt;br /&gt;
           nmap-hackers).  I incorporated that patch into the Nmap tree and released a new version the next day. Few pieces of commercial software have users enthusiastic enough to design and contribute&lt;br /&gt;
           their own improvements!&lt;br /&gt;
&lt;br /&gt;
           Protocol scan works in a similar fashion to UDP scan. Instead of iterating through the port number field of a UDP packet, it sends IP packet headers and iterates through the eight-bit IP&lt;br /&gt;
           protocol field. The headers are usually empty, containing no data and not even the proper header for the claimed protocol. The exceptions are TCP, UDP, ICMP, SCTP, and IGMP. A proper protocol&lt;br /&gt;
           header for those is included since some systems won&#039;t send them otherwise and because Nmap already has functions to create them. Instead of watching for ICMP port unreachable messages, protocol&lt;br /&gt;
           scan is on the lookout for ICMP protocol unreachable messages. If Nmap receives any response in any protocol from the target host, Nmap marks that protocol as open. An ICMP protocol unreachable&lt;br /&gt;
           error (type 3, code 2) causes the protocol to be marked as closed while port unreachable (type 3, code 3) marks the protocol open. Other ICMP unreachable errors (type 3, code 0, 1, 9, 10, or 13)&lt;br /&gt;
           cause the protocol to be marked filtered (though they prove that ICMP is open at the same time). If no response is received after retransmissions, the protocol is marked open|filtered&lt;br /&gt;
&lt;br /&gt;
       -b FTP relay host (FTP bounce scan)&lt;br /&gt;
           An interesting feature of the FTP protocol (RFC 959[8]) is support for so-called proxy FTP connections. This allows a user to connect to one FTP server, then ask that files be sent to a&lt;br /&gt;
           third-party server. Such a feature is ripe for abuse on many levels, so most servers have ceased supporting it. One of the abuses this feature allows is causing the FTP server to port scan other&lt;br /&gt;
           hosts. Simply ask the FTP server to send a file to each interesting port of a target host in turn. The error message will describe whether the port is open or not. This is a good way to bypass&lt;br /&gt;
           firewalls because organizational FTP servers are often placed where they have more access to other internal hosts than any old Internet host would. Nmap supports FTP bounce scan with the -b&lt;br /&gt;
           option. It takes an argument of the form username:password@server:port.  Server is the name or IP address of a vulnerable FTP server. As with a normal URL, you may omit username:password, in&lt;br /&gt;
           which case anonymous login credentials (user: anonymous password:-wwwuser@) are used. The port number (and preceding colon) may be omitted as well, in which case the default FTP port (21) on&lt;br /&gt;
           server is used.&lt;br /&gt;
&lt;br /&gt;
           This vulnerability was widespread in 1997 when Nmap was released, but has largely been fixed. Vulnerable servers are still around, so it is worth trying when all else fails. If bypassing a&lt;br /&gt;
           firewall is your goal, scan the target network for port 21 (or even for any FTP services if you scan all ports with version detection) and use the ftp-bounce NSE script. Nmap will tell you&lt;br /&gt;
           whether the host is vulnerable or not. If you are just trying to cover your tracks, you don&#039;t need to (and, in fact, shouldn&#039;t) limit yourself to hosts on the target network. Before you go&lt;br /&gt;
           scanning random Internet addresses for vulnerable FTP servers, consider that sysadmins may not appreciate you abusing their servers in this way.&lt;br /&gt;
&lt;br /&gt;
PORT SPECIFICATION AND SCAN ORDER&lt;br /&gt;
       In addition to all of the scan methods discussed previously, Nmap offers options for specifying which ports are scanned and whether the scan order is randomized or sequential. By default, Nmap scans&lt;br /&gt;
       the most common 1,000 ports for each protocol.&lt;br /&gt;
&lt;br /&gt;
       -p port ranges (Only scan specified ports)&lt;br /&gt;
           This option specifies which ports you want to scan and overrides the default. Individual port numbers are OK, as are ranges separated by a hyphen (e.g.  1-1023). The beginning and/or end values&lt;br /&gt;
           of a range may be omitted, causing Nmap to use 1 and 65535, respectively. So you can specify -p- to scan ports from 1 through 65535. Scanning port zero is allowed if you specify it explicitly.&lt;br /&gt;
           For IP protocol scanning (-sO), this option specifies the protocol numbers you wish to scan for (0–255).&lt;br /&gt;
&lt;br /&gt;
           When scanning a combination of protocols (e.g. TCP and UDP), you can specify a particular protocol by preceding the port numbers by T: for TCP, U: for UDP, S: for SCTP, or P: for IP Protocol.&lt;br /&gt;
           The qualifier lasts until you specify another qualifier. For example, the argument -p U:53,111,137,T:21-25,80,139,8080 would scan UDP ports 53, 111,and 137, as well as the listed TCP ports. Note&lt;br /&gt;
           that to scan both UDP and TCP, you have to specify -sU and at least one TCP scan type (such as -sS, -sF, or -sT). If no protocol qualifier is given, the port numbers are added to all protocol&lt;br /&gt;
           lists.  Ports can also be specified by name according to what the port is referred to in the nmap-services. You can even use the wildcards * and ?  with the names. For example, to scan FTP and&lt;br /&gt;
           all ports whose names begin with “http”, use -p ftp,http*. Be careful about shell expansions and quote the argument to -p if unsure.&lt;br /&gt;
&lt;br /&gt;
           Ranges of ports can be surrounded by square brackets to indicate ports inside that range that appear in nmap-services. For example, the following will scan all ports in nmap-services equal to or&lt;br /&gt;
           below 1024: -p [-1024]. Be careful with shell expansions and quote the argument to -p if unsure.&lt;br /&gt;
&lt;br /&gt;
       --exclude-ports port ranges (Exclude the specified ports from scanning)&lt;br /&gt;
           This option specifies which ports you do want Nmap to exclude from scanning. The port ranges are specified similar to -p. For IP protocol scanning (-sO), this option specifies the protocol&lt;br /&gt;
           numbers you wish to exclude (0–255).&lt;br /&gt;
&lt;br /&gt;
           When ports are asked to be excluded, they are excluded from all types of scans (i.e. they will not be scanned under any circumstances). This also includes the discovery phase.&lt;br /&gt;
&lt;br /&gt;
       -F (Fast (limited port) scan)&lt;br /&gt;
           Specifies that you wish to scan fewer ports than the default. Normally Nmap scans the most common 1,000 ports for each scanned protocol. With -F, this is reduced to 100.&lt;br /&gt;
&lt;br /&gt;
           Nmap needs an nmap-services file with frequency information in order to know which ports are the most common. If port frequency information isn&#039;t available, perhaps because of the use of a&lt;br /&gt;
           custom nmap-services file, Nmap scans all named ports plus ports 1-1024. In that case, -F means to scan only ports that are named in the services file.&lt;br /&gt;
&lt;br /&gt;
       -r (Don&#039;t randomize ports)&lt;br /&gt;
           By default, Nmap randomizes the scanned port order (except that certain commonly accessible ports are moved near the beginning for efficiency reasons). This randomization is normally desirable,&lt;br /&gt;
           but you can specify -r for sequential (sorted from lowest to highest) port scanning instead.&lt;br /&gt;
&lt;br /&gt;
       --port-ratio ratio&amp;lt;decimal number between 0 and 1&amp;gt;&lt;br /&gt;
           Scans all ports in nmap-services file with a ratio greater than the one given.  ratio must be between 0.0 and 1.0.&lt;br /&gt;
&lt;br /&gt;
       --top-ports n&lt;br /&gt;
           Scans the n highest-ratio ports found in nmap-services file after excluding all ports specified by --exclude-ports.  n must be 1 or greater.&lt;br /&gt;
&lt;br /&gt;
SERVICE AND VERSION DETECTION&lt;br /&gt;
       Point Nmap at a remote machine and it might tell you that ports 25/tcp, 80/tcp, and 53/udp are open. Using its nmap-services database of about 2,200 well-known services, Nmap would report that those&lt;br /&gt;
       ports probably correspond to a mail server (SMTP), web server (HTTP), and name server (DNS) respectively. This lookup is usually accurate—the vast majority of daemons listening on TCP port 25 are,&lt;br /&gt;
       in fact, mail servers. However, you should not bet your security on this! People can and do run services on strange ports.&lt;br /&gt;
&lt;br /&gt;
       Even if Nmap is right, and the hypothetical server above is running SMTP, HTTP, and DNS servers, that is not a lot of information. When doing vulnerability assessments (or even simple network&lt;br /&gt;
       inventories) of your companies or clients, you really want to know which mail and DNS servers and versions are running. Having an accurate version number helps dramatically in determining which&lt;br /&gt;
       exploits a server is vulnerable to. Version detection helps you obtain this information.&lt;br /&gt;
&lt;br /&gt;
       After TCP and/or UDP ports are discovered using one of the other scan methods, version detection interrogates those ports to determine more about what is actually running. The nmap-service-probes&lt;br /&gt;
       database contains probes for querying various services and match expressions to recognize and parse responses. Nmap tries to determine the service protocol (e.g. FTP, SSH, Telnet, HTTP), the&lt;br /&gt;
       application name (e.g. ISC BIND, Apache httpd, Solaris telnetd), the version number, hostname, device type (e.g. printer, router), the OS family (e.g. Windows, Linux). When possible, Nmap also gets&lt;br /&gt;
       the Common Platform Enumeration (CPE) representation of this information. Sometimes miscellaneous details like whether an X server is open to connections, the SSH protocol version, or the KaZaA user&lt;br /&gt;
       name, are available. Of course, most services don&#039;t provide all of this information. If Nmap was compiled with OpenSSL support, it will connect to SSL servers to deduce the service listening behind&lt;br /&gt;
       that encryption layer.  Some UDP ports are left in the open|filtered state after a UDP port scan is unable to determine whether the port is open or filtered. Version detection will try to elicit a&lt;br /&gt;
       response from these ports (just as it does with open ports), and change the state to open if it succeeds.  open|filtered TCP ports are treated the same way. Note that the Nmap -A option enables&lt;br /&gt;
       version detection among other things.  A paper documenting the workings, usage, and customization of version detection is available at https://nmap.org/book/vscan.html.&lt;br /&gt;
&lt;br /&gt;
       When RPC services are discovered, the Nmap RPC grinder is automatically used to determine the RPC program and version numbers. It takes all the TCP/UDP ports detected as RPC and floods them with&lt;br /&gt;
       SunRPC program NULL commands in an attempt to determine whether they are RPC ports, and if so, what program and version number they serve up. Thus you can effectively obtain the same info as rpcinfo&lt;br /&gt;
       -p even if the target&#039;s portmapper is behind a firewall (or protected by TCP wrappers). Decoys do not currently work with RPC scan.&lt;br /&gt;
&lt;br /&gt;
       When Nmap receives responses from a service but cannot match them to its database, it prints out a special fingerprint and a URL for you to submit it to if you know for sure what is running on the&lt;br /&gt;
       port. Please take a couple minutes to make the submission so that your find can benefit everyone. Thanks to these submissions, Nmap has about 6,500 pattern matches for more than 650 protocols such&lt;br /&gt;
       as SMTP, FTP, HTTP, etc.&lt;br /&gt;
&lt;br /&gt;
       Version detection is enabled and controlled with the following options:&lt;br /&gt;
&lt;br /&gt;
       -sV (Version detection)&lt;br /&gt;
           Enables version detection, as discussed above. Alternatively, you can use -A, which enables version detection among other things.&lt;br /&gt;
&lt;br /&gt;
           -sR is an alias for -sV. Prior to March 2011, it was used to active the RPC grinder separately from version detection, but now these options are always combined.&lt;br /&gt;
&lt;br /&gt;
       --allports (Don&#039;t exclude any ports from version detection)&lt;br /&gt;
           By default, Nmap version detection skips TCP port 9100 because some printers simply print anything sent to that port, leading to dozens of pages of HTTP GET requests, binary SSL session&lt;br /&gt;
           requests, etc. This behavior can be changed by modifying or removing the Exclude directive in nmap-service-probes, or you can specify --allports to scan all ports regardless of any Exclude&lt;br /&gt;
           directive.&lt;br /&gt;
&lt;br /&gt;
       --version-intensity intensity (Set version scan intensity)&lt;br /&gt;
           When performing a version scan (-sV), Nmap sends a series of probes, each of which is assigned a rarity value between one and nine. The lower-numbered probes are effective against a wide variety&lt;br /&gt;
           of common services, while the higher-numbered ones are rarely useful. The intensity level specifies which probes should be applied. The higher the number, the more likely it is the service will&lt;br /&gt;
           be correctly identified. However, high intensity scans take longer. The intensity must be between 0 and 9.  The default is 7.  When a probe is registered to the target port via the&lt;br /&gt;
           nmap-service-probes ports directive, that probe is tried regardless of intensity level. This ensures that the DNS probes will always be attempted against any open port 53, the SSL probe will be&lt;br /&gt;
           done against 443, etc.&lt;br /&gt;
&lt;br /&gt;
       --version-light (Enable light mode)&lt;br /&gt;
           This is a convenience alias for --version-intensity 2. This light mode makes version scanning much faster, but it is slightly less likely to identify services.&lt;br /&gt;
&lt;br /&gt;
       --version-all (Try every single probe)&lt;br /&gt;
           An alias for --version-intensity 9, ensuring that every single probe is attempted against each port.&lt;br /&gt;
&lt;br /&gt;
       --version-trace (Trace version scan activity)&lt;br /&gt;
           This causes Nmap to print out extensive debugging info about what version scanning is doing. It is a subset of what you get with --packet-trace.&lt;br /&gt;
&lt;br /&gt;
OS DETECTION&lt;br /&gt;
       One of Nmap&#039;s best-known features is remote OS detection using TCP/IP stack fingerprinting. Nmap sends a series of TCP and UDP packets to the remote host and examines practically every bit in the&lt;br /&gt;
       responses. After performing dozens of tests such as TCP ISN sampling, TCP options support and ordering, IP ID sampling, and the initial window size check, Nmap compares the results to its nmap-os-db&lt;br /&gt;
       database of more than 2,600 known OS fingerprints and prints out the OS details if there is a match. Each fingerprint includes a freeform textual description of the OS, and a classification which&lt;br /&gt;
       provides the vendor name (e.g. Sun), underlying OS (e.g. Solaris), OS generation (e.g. 10), and device type (general purpose, router, switch, game console, etc). Most fingerprints also have a Common&lt;br /&gt;
       Platform Enumeration (CPE) representation, like cpe:/o:linux:linux_kernel:2.6.&lt;br /&gt;
&lt;br /&gt;
       If Nmap is unable to guess the OS of a machine, and conditions are good (e.g. at least one open port and one closed port were found), Nmap will provide a URL you can use to submit the fingerprint if&lt;br /&gt;
       you know (for sure) the OS running on the machine. By doing this you contribute to the pool of operating systems known to Nmap and thus it will be more accurate for everyone.&lt;br /&gt;
&lt;br /&gt;
       OS detection enables some other tests which make use of information that is gathered during the process anyway. One of these is TCP Sequence Predictability Classification. This measures&lt;br /&gt;
       approximately how hard it is to establish a forged TCP connection against the remote host. It is useful for exploiting source-IP based trust relationships (rlogin, firewall filters, etc) or for&lt;br /&gt;
       hiding the source of an attack. This sort of spoofing is rarely performed any more, but many machines are still vulnerable to it. The actual difficulty number is based on statistical sampling and&lt;br /&gt;
       may fluctuate. It is generally better to use the English classification such as “worthy challenge” or “trivial joke”. This is only reported in normal output in verbose (-v) mode. When verbose mode&lt;br /&gt;
       is enabled along with -O, IP ID sequence generation is also reported. Most machines are in the “incremental” class, which means that they increment the ID field in the IP header for each packet they&lt;br /&gt;
       send. This makes them vulnerable to several advanced information gathering and spoofing attacks.&lt;br /&gt;
&lt;br /&gt;
       Another bit of extra information enabled by OS detection is a guess at a target&#039;s uptime. This uses the TCP timestamp option (RFC 1323[9]) to guess when a machine was last rebooted. The guess can be&lt;br /&gt;
       inaccurate due to the timestamp counter not being initialized to zero or the counter overflowing and wrapping around, so it is printed only in verbose mode.&lt;br /&gt;
&lt;br /&gt;
       A paper documenting the workings, usage, and customization of OS detection is available at https://nmap.org/book/osdetect.html.&lt;br /&gt;
&lt;br /&gt;
       OS detection is enabled and controlled with the following options:&lt;br /&gt;
&lt;br /&gt;
       -O (Enable OS detection)&lt;br /&gt;
           Enables OS detection, as discussed above. Alternatively, you can use -A to enable OS detection along with other things.&lt;br /&gt;
&lt;br /&gt;
       --osscan-limit (Limit OS detection to promising targets)&lt;br /&gt;
           OS detection is far more effective if at least one open and one closed TCP port are found. Set this option and Nmap will not even try OS detection against hosts that do not meet this criteria.&lt;br /&gt;
           This can save substantial time, particularly on -Pn scans against many hosts. It only matters when OS detection is requested with -O or -A.&lt;br /&gt;
&lt;br /&gt;
       --osscan-guess; --fuzzy (Guess OS detection results)&lt;br /&gt;
           When Nmap is unable to detect a perfect OS match, it sometimes offers up near-matches as possibilities. The match has to be very close for Nmap to do this by default. Either of these&lt;br /&gt;
           (equivalent) options make Nmap guess more aggressively. Nmap will still tell you when an imperfect match is printed and display its confidence level (percentage) for each guess.&lt;br /&gt;
&lt;br /&gt;
       --max-os-tries (Set the maximum number of OS detection tries against a target)&lt;br /&gt;
           When Nmap performs OS detection against a target and fails to find a perfect match, it usually repeats the attempt. By default, Nmap tries five times if conditions are favorable for OS&lt;br /&gt;
           fingerprint submission, and twice when conditions aren&#039;t so good. Specifying a lower --max-os-tries value (such as 1) speeds Nmap up, though you miss out on retries which could potentially&lt;br /&gt;
           identify the OS. Alternatively, a high value may be set to allow even more retries when conditions are favorable. This is rarely done, except to generate better fingerprints for submission and&lt;br /&gt;
           integration into the Nmap OS database.&lt;br /&gt;
&lt;br /&gt;
NMAP SCRIPTING ENGINE (NSE)&lt;br /&gt;
       The Nmap Scripting Engine (NSE) is one of Nmap&#039;s most powerful and flexible features. It allows users to write (and share) simple scripts (using the Lua programming language[10]&lt;br /&gt;
&lt;br /&gt;
       ) to automate a wide variety of networking tasks. Those scripts are executed in parallel with the speed and efficiency you expect from Nmap. Users can rely on the growing and diverse set of scripts&lt;br /&gt;
       distributed with Nmap, or write their own to meet custom needs.&lt;br /&gt;
&lt;br /&gt;
       Tasks we had in mind when creating the system include network discovery, more sophisticated version detection, vulnerability detection. NSE can even be used for vulnerability exploitation.&lt;br /&gt;
&lt;br /&gt;
       To reflect those different uses and to simplify the choice of which scripts to run, each script contains a field associating it with one or more categories. Currently defined categories are auth,&lt;br /&gt;
       broadcast, default.  discovery, dos, exploit, external, fuzzer, intrusive, malware, safe, version, and vuln. These are all described at https://nmap.org/book/nse-usage.html#nse-categories.&lt;br /&gt;
&lt;br /&gt;
       Scripts are not run in a sandbox and thus could accidentally or maliciously damage your system or invade your privacy. Never run scripts from third parties unless you trust the authors or have&lt;br /&gt;
       carefully audited the scripts yourself.&lt;br /&gt;
&lt;br /&gt;
       The Nmap Scripting Engine is described in detail at https://nmap.org/book/nse.html&lt;br /&gt;
&lt;br /&gt;
       and is controlled by the following options:&lt;br /&gt;
&lt;br /&gt;
       -sC&lt;br /&gt;
           Performs a script scan using the default set of scripts. It is equivalent to --script=default. Some of the scripts in this category are considered intrusive and should not be run against a&lt;br /&gt;
           target network without permission.&lt;br /&gt;
&lt;br /&gt;
       --script filename|category|directory/|expression[,...]&lt;br /&gt;
           Runs a script scan using the comma-separated list of filenames, script categories, and directories. Each element in the list may also be a Boolean expression describing a more complex set of&lt;br /&gt;
           scripts. Each element is interpreted first as an expression, then as a category, and finally as a file or directory name.&lt;br /&gt;
&lt;br /&gt;
           There are two special features for advanced users only. One is to prefix script names and expressions with + to force them to run even if they normally wouldn&#039;t (e.g. the relevant service wasn&#039;t&lt;br /&gt;
           detected on the target port). The other is that the argument all may be used to specify every script in Nmap&#039;s database. Be cautious with this because NSE contains dangerous scripts such as&lt;br /&gt;
           exploits, brute force authentication crackers, and denial of service attacks.&lt;br /&gt;
&lt;br /&gt;
           File and directory names may be relative or absolute. Absolute names are used directly. Relative paths are looked for in the scripts of each of the following places until found:&lt;br /&gt;
               --datadir&lt;br /&gt;
               $NMAPDIR&lt;br /&gt;
               ~/.nmap (not searched on Windows)&lt;br /&gt;
               APPDATA\nmap (only on Windows)&lt;br /&gt;
               the directory containing the nmap executable&lt;br /&gt;
               the directory containing the nmap executable, followed by ../share/nmap (not searched on Windows)&lt;br /&gt;
               NMAPDATADIR (not searched on Windows)&lt;br /&gt;
               the current directory.&lt;br /&gt;
&lt;br /&gt;
           When a directory name ending in / is given, Nmap loads every file in the directory whose name ends with .nse. All other files are ignored and directories are not searched recursively. When a&lt;br /&gt;
           filename is given, it does not have to have the .nse extension; it will be added automatically if necessary.  Nmap scripts are stored in a scripts subdirectory of the Nmap data directory by&lt;br /&gt;
           default (see https://nmap.org/book/data-files.html).&lt;br /&gt;
&lt;br /&gt;
           For efficiency, scripts are indexed in a database stored in scripts/script.db, which lists the category or categories in which each script belongs.  When referring to scripts from script.db by&lt;br /&gt;
           name, you can use a shell-style ‘*’ wildcard.&lt;br /&gt;
&lt;br /&gt;
           nmap --script &amp;quot;http-*&amp;quot;&lt;br /&gt;
               Loads all scripts whose name starts with http-, such as http-auth and http-open-proxy. The argument to --script had to be in quotes to protect the wildcard from the shell.&lt;br /&gt;
&lt;br /&gt;
           More complicated script selection can be done using the and, or, and not operators to build Boolean expressions. The operators have the same precedence[11] as in Lua: not is the highest,&lt;br /&gt;
           followed by and and then or. You can alter precedence by using parentheses. Because expressions contain space characters it is necessary to quote them.&lt;br /&gt;
&lt;br /&gt;
           nmap --script &amp;quot;not intrusive&amp;quot;&lt;br /&gt;
               Loads every script except for those in the intrusive category.&lt;br /&gt;
&lt;br /&gt;
           nmap --script &amp;quot;default or safe&amp;quot;&lt;br /&gt;
               This is functionally equivalent to nmap --script &amp;quot;default,safe&amp;quot;. It loads all scripts that are in the default category or the safe category or both.&lt;br /&gt;
&lt;br /&gt;
           nmap --script &amp;quot;default and safe&amp;quot;&lt;br /&gt;
               Loads those scripts that are in both the default and safe categories.&lt;br /&gt;
&lt;br /&gt;
           nmap --script &amp;quot;(default or safe or intrusive) and not http-*&amp;quot;&lt;br /&gt;
               Loads scripts in the default, safe, or intrusive categories, except for those whose names start with http-.&lt;br /&gt;
&lt;br /&gt;
       --script-args n1=v1,n2={n3=v3},n4={v4,v5}&lt;br /&gt;
           Lets you provide arguments to NSE scripts. Arguments are a comma-separated list of name=value pairs. Names and values may be strings not containing whitespace or the characters ‘{’, ‘}’, ‘=’, or&lt;br /&gt;
           ‘,’. To include one of these characters in a string, enclose the string in single or double quotes. Within a quoted string, ‘\’ escapes a quote. A backslash is only used to escape quotation&lt;br /&gt;
           marks in this special case; in all other cases a backslash is interpreted literally. Values may also be tables enclosed in {}, just as in Lua. A table may contain simple string values or more&lt;br /&gt;
           name-value pairs, including nested tables. Many scripts qualify their arguments with the script name, as in xmpp-info.server_name. You may use that full qualified version to affect just the&lt;br /&gt;
           specified script, or you may pass the unqualified version (server_name in this case) to affect all scripts using that argument name. A script will first check for its fully qualified argument&lt;br /&gt;
           name (the name specified in its documentation) before it accepts an unqualified argument name. A complex example of script arguments is --script-args&lt;br /&gt;
           &#039;user=foo,pass=&amp;quot;,{}=bar&amp;quot;,whois={whodb=nofollow+ripe},xmpp-info.server_name=localhost&#039;. The online NSE Documentation Portal at https://nmap.org/nsedoc/ lists the arguments that each script&lt;br /&gt;
           accepts.&lt;br /&gt;
&lt;br /&gt;
       --script-args-file filename&lt;br /&gt;
           Lets you load arguments to NSE scripts from a file. Any arguments on the command line supersede ones in the file. The file can be an absolute path, or a path relative to Nmap&#039;s usual search path&lt;br /&gt;
           (NMAPDIR, etc.) Arguments can be comma-separated or newline-separated, but otherwise follow the same rules as for --script-args, without requiring special quoting and escaping, since they are&lt;br /&gt;
           not parsed by the shell.&lt;br /&gt;
&lt;br /&gt;
       --script-help filename|category|directory|expression|all[,...]&lt;br /&gt;
           Shows help about scripts. For each script matching the given specification, Nmap prints the script name, its categories, and its description. The specifications are the same as those accepted by&lt;br /&gt;
           --script; so for example if you want help about the ftp-anon script, you would run nmap --script-help ftp-anon. In addition to getting help for individual scripts, you can use this as a preview&lt;br /&gt;
           of what scripts will be run for a specification, for example with nmap --script-help default.&lt;br /&gt;
&lt;br /&gt;
       --script-trace&lt;br /&gt;
           This option does what --packet-trace does, just one ISO layer higher. If this option is specified all incoming and outgoing communication performed by a script is printed. The displayed&lt;br /&gt;
           information includes the communication protocol, the source, the target and the transmitted data. If more than 5% of all transmitted data is not printable, then the trace output is in a hex dump&lt;br /&gt;
           format. Specifying --packet-trace enables script tracing too.&lt;br /&gt;
&lt;br /&gt;
       --script-updatedb&lt;br /&gt;
           This option updates the script database found in scripts/script.db which is used by Nmap to determine the available default scripts and categories. It is only necessary to update the database if&lt;br /&gt;
           you have added or removed NSE scripts from the default scripts directory or if you have changed the categories of any script. This option is generally used by itself: nmap --script-updatedb.&lt;br /&gt;
&lt;br /&gt;
TIMING AND PERFORMANCE&lt;br /&gt;
       One of my highest Nmap development priorities has always been performance. A default scan (nmap hostname) of a host on my local network takes a fifth of a second. That is barely enough time to&lt;br /&gt;
       blink, but adds up when you are scanning hundreds or thousands of hosts. Moreover, certain scan options such as UDP scanning and version detection can increase scan times substantially. So can&lt;br /&gt;
       certain firewall configurations, particularly response rate limiting. While Nmap utilizes parallelism and many advanced algorithms to accelerate these scans, the user has ultimate control over how&lt;br /&gt;
       Nmap runs. Expert users carefully craft Nmap commands to obtain only the information they care about while meeting their time constraints.&lt;br /&gt;
&lt;br /&gt;
       Techniques for improving scan times include omitting non-critical tests, and upgrading to the latest version of Nmap (performance enhancements are made frequently). Optimizing timing parameters can&lt;br /&gt;
       also make a substantial difference. Those options are listed below.&lt;br /&gt;
&lt;br /&gt;
       Some options accept a time parameter. This is specified in seconds by default, though you can append ‘ms’, ‘s’, ‘m’, or ‘h’ to the value to specify milliseconds, seconds, minutes, or hours. So the&lt;br /&gt;
       --host-timeout arguments 900000ms, 900, 900s, and 15m all do the same thing.&lt;br /&gt;
&lt;br /&gt;
       --min-hostgroup numhosts; --max-hostgroup numhosts (Adjust parallel scan group sizes)&lt;br /&gt;
           Nmap has the ability to port scan or version scan multiple hosts in parallel. Nmap does this by dividing the target IP space into groups and then scanning one group at a time. In general, larger&lt;br /&gt;
           groups are more efficient. The downside is that host results can&#039;t be provided until the whole group is finished. So if Nmap started out with a group size of 50, the user would not receive any&lt;br /&gt;
           reports (except for the updates offered in verbose mode) until the first 50 hosts are completed.&lt;br /&gt;
&lt;br /&gt;
           By default, Nmap takes a compromise approach to this conflict. It starts out with a group size as low as five so the first results come quickly and then increases the groupsize to as high as&lt;br /&gt;
           1024. The exact default numbers depend on the options given. For efficiency reasons, Nmap uses larger group sizes for UDP or few-port TCP scans.&lt;br /&gt;
&lt;br /&gt;
           When a maximum group size is specified with --max-hostgroup, Nmap will never exceed that size. Specify a minimum size with --min-hostgroup and Nmap will try to keep group sizes above that level.&lt;br /&gt;
           Nmap may have to use smaller groups than you specify if there are not enough target hosts left on a given interface to fulfill the specified minimum. Both may be set to keep the group size&lt;br /&gt;
           within a specific range, though this is rarely desired.&lt;br /&gt;
&lt;br /&gt;
           These options do not have an effect during the host discovery phase of a scan. This includes plain ping scans (-sn). Host discovery always works in large groups of hosts to improve speed and&lt;br /&gt;
           accuracy.&lt;br /&gt;
&lt;br /&gt;
           The primary use of these options is to specify a large minimum group size so that the full scan runs more quickly. A common choice is 256 to scan a network in /24 sized chunks. For a scan with&lt;br /&gt;
           many ports, exceeding that number is unlikely to help much. For scans of just a few port numbers, host group sizes of 2048 or more may be helpful.&lt;br /&gt;
&lt;br /&gt;
       --min-parallelism numprobes; --max-parallelism numprobes (Adjust probe parallelization)&lt;br /&gt;
           These options control the total number of probes that may be outstanding for a host group. They are used for port scanning and host discovery. By default, Nmap calculates an ever-changing ideal&lt;br /&gt;
           parallelism based on network performance. If packets are being dropped, Nmap slows down and allows fewer outstanding probes. The ideal probe number slowly rises as the network proves itself&lt;br /&gt;
           worthy. These options place minimum or maximum bounds on that variable. By default, the ideal parallelism can drop to one if the network proves unreliable and rise to several hundred in perfect&lt;br /&gt;
           conditions.&lt;br /&gt;
&lt;br /&gt;
           The most common usage is to set --min-parallelism to a number higher than one to speed up scans of poorly performing hosts or networks. This is a risky option to play with, as setting it too&lt;br /&gt;
           high may affect accuracy. Setting this also reduces Nmap&#039;s ability to control parallelism dynamically based on network conditions. A value of 10 might be reasonable, though I only adjust this&lt;br /&gt;
           value as a last resort.&lt;br /&gt;
&lt;br /&gt;
           The --max-parallelism option is sometimes set to one to prevent Nmap from sending more than one probe at a time to hosts. The --scan-delay option, discussed later, is another way to do this.&lt;br /&gt;
&lt;br /&gt;
       --min-rtt-timeout time, --max-rtt-timeout time, --initial-rtt-timeout time (Adjust probe timeouts)&lt;br /&gt;
           Nmap maintains a running timeout value for determining how long it will wait for a probe response before giving up or retransmitting the probe. This is calculated based on the response times of&lt;br /&gt;
           previous probes.&lt;br /&gt;
&lt;br /&gt;
           If the network latency shows itself to be significant and variable, this timeout can grow to several seconds. It also starts at a conservative (high) level and may stay that way for a while when&lt;br /&gt;
           Nmap scans unresponsive hosts.&lt;br /&gt;
&lt;br /&gt;
           Specifying a lower --max-rtt-timeout and --initial-rtt-timeout than the defaults can cut scan times significantly. This is particularly true for pingless (-Pn) scans, and those against heavily&lt;br /&gt;
           filtered networks. Don&#039;t get too aggressive though. The scan can end up taking longer if you specify such a low value that many probes are timing out and retransmitting while the response is in&lt;br /&gt;
           transit.&lt;br /&gt;
&lt;br /&gt;
           If all the hosts are on a local network, 100 milliseconds (--max-rtt-timeout 100ms) is a reasonable aggressive value. If routing is involved, ping a host on the network first with the ICMP ping&lt;br /&gt;
           utility, or with a custom packet crafter such as Nping that is more likely to get through a firewall. Look at the maximum round trip time out of ten packets or so. You might want to double that&lt;br /&gt;
           for the --initial-rtt-timeout and triple or quadruple it for the --max-rtt-timeout. I generally do not set the maximum RTT below 100 ms, no matter what the ping times are. Nor do I exceed&lt;br /&gt;
           1000 ms.&lt;br /&gt;
&lt;br /&gt;
           --min-rtt-timeout is a rarely used option that could be useful when a network is so unreliable that even Nmap&#039;s default is too aggressive. Since Nmap only reduces the timeout down to the minimum&lt;br /&gt;
           when the network seems to be reliable, this need is unusual and should be reported as a bug to the nmap-dev mailing list.&lt;br /&gt;
&lt;br /&gt;
       --max-retries numtries (Specify the maximum number of port scan probe retransmissions)&lt;br /&gt;
           When Nmap receives no response to a port scan probe, it could mean the port is filtered. Or maybe the probe or response was simply lost on the network. It is also possible that the target host&lt;br /&gt;
           has rate limiting enabled that temporarily blocked the response. So Nmap tries again by retransmitting the initial probe. If Nmap detects poor network reliability, it may try many more times&lt;br /&gt;
           before giving up on a port. While this benefits accuracy, it also lengthens scan times. When performance is critical, scans may be sped up by limiting the number of retransmissions allowed. You&lt;br /&gt;
           can even specify --max-retries 0 to prevent any retransmissions, though that is only recommended for situations such as informal surveys where occasional missed ports and hosts are acceptable.&lt;br /&gt;
&lt;br /&gt;
           The default (with no -T template) is to allow ten retransmissions. If a network seems reliable and the target hosts aren&#039;t rate limiting, Nmap usually only does one retransmission. So most&lt;br /&gt;
           target scans aren&#039;t even affected by dropping --max-retries to a low value such as three. Such values can substantially speed scans of slow (rate limited) hosts. You usually lose some&lt;br /&gt;
           information when Nmap gives up on ports early, though that may be preferable to letting the --host-timeout expire and losing all information about the target.&lt;br /&gt;
&lt;br /&gt;
       --host-timeout time (Give up on slow target hosts)&lt;br /&gt;
           Some hosts simply take a long time to scan. This may be due to poorly performing or unreliable networking hardware or software, packet rate limiting, or a restrictive firewall. The slowest few&lt;br /&gt;
           percent of the scanned hosts can eat up a majority of the scan time. Sometimes it is best to cut your losses and skip those hosts initially. Specify --host-timeout with the maximum amount of&lt;br /&gt;
           time you are willing to wait. For example, specify 30m to ensure that Nmap doesn&#039;t waste more than half an hour on a single host. Note that Nmap may be scanning other hosts at the same time&lt;br /&gt;
           during that half an hour, so it isn&#039;t a complete loss. A host that times out is skipped. No port table, OS detection, or version detection results are printed for that host.&lt;br /&gt;
&lt;br /&gt;
           The special value 0 can be used to mean “no timeout”, which can be used to override the T5 timing template, which sets the host timeout to 15 minutes.&lt;br /&gt;
&lt;br /&gt;
       --script-timeout time&lt;br /&gt;
           While some scripts complete in fractions of a second, others can take hours or more depending on the nature of the script, arguments passed in, network and application conditions, and more. The&lt;br /&gt;
           --script-timeout option sets a ceiling on script execution time. Any script instance which exceeds that time will be terminated and no output will be shown. If debugging (-d) is enabled, Nmap&lt;br /&gt;
           will report on each timeout. For host and service scripts, a script instance only scans a single target host or port and the timeout period will be reset for the next instance.&lt;br /&gt;
&lt;br /&gt;
           The special value 0 can be used to mean “no timeout”, which can be used to override the T5 timing template, which sets the script timeout to 10 minutes.&lt;br /&gt;
&lt;br /&gt;
       --scan-delay time; --max-scan-delay time (Adjust delay between probes)&lt;br /&gt;
           This option causes Nmap to wait at least the given amount of time between each probe it sends to a given host. This is particularly useful in the case of rate limiting.  Solaris machines (among&lt;br /&gt;
           many others) will usually respond to UDP scan probe packets with only one ICMP message per second. Any more than that sent by Nmap will be wasteful. A --scan-delay of 1s will keep Nmap at that&lt;br /&gt;
           slow rate. Nmap tries to detect rate limiting and adjust the scan delay accordingly, but it doesn&#039;t hurt to specify it explicitly if you already know what rate works best.&lt;br /&gt;
&lt;br /&gt;
           When Nmap adjusts the scan delay upward to cope with rate limiting, the scan slows down dramatically. The --max-scan-delay option specifies the largest delay that Nmap will allow. A low&lt;br /&gt;
           --max-scan-delay can speed up Nmap, but it is risky. Setting this value too low can lead to wasteful packet retransmissions and possible missed ports when the target implements strict rate&lt;br /&gt;
           limiting.&lt;br /&gt;
&lt;br /&gt;
           Another use of --scan-delay is to evade threshold based intrusion detection and prevention systems (IDS/IPS).&lt;br /&gt;
&lt;br /&gt;
       --min-rate number; --max-rate number (Directly control the scanning rate)&lt;br /&gt;
           Nmap&#039;s dynamic timing does a good job of finding an appropriate speed at which to scan. Sometimes, however, you may happen to know an appropriate scanning rate for a network, or you may have to&lt;br /&gt;
           guarantee that a scan will be finished by a certain time. Or perhaps you must keep Nmap from scanning too quickly. The --min-rate and --max-rate options are designed for these situations.&lt;br /&gt;
&lt;br /&gt;
           When the --min-rate option is given Nmap will do its best to send packets as fast as or faster than the given rate. The argument is a positive real number representing a packet rate in packets&lt;br /&gt;
           per second. For example, specifying --min-rate 300 means that Nmap will try to keep the sending rate at or above 300 packets per second. Specifying a minimum rate does not keep Nmap from going&lt;br /&gt;
           faster if conditions warrant.&lt;br /&gt;
&lt;br /&gt;
           Likewise, --max-rate limits a scan&#039;s sending rate to a given maximum. Use --max-rate 100, for example, to limit sending to 100 packets per second on a fast network. Use --max-rate 0.1 for a slow&lt;br /&gt;
           scan of one packet every ten seconds. Use --min-rate and --max-rate together to keep the rate inside a certain range.&lt;br /&gt;
&lt;br /&gt;
           These two options are global, affecting an entire scan, not individual hosts. They only affect port scans and host discovery scans. Other features like OS detection implement their own timing.&lt;br /&gt;
&lt;br /&gt;
           There are two conditions when the actual scanning rate may fall below the requested minimum. The first is if the minimum is faster than the fastest rate at which Nmap can send, which is&lt;br /&gt;
           dependent on hardware. In this case Nmap will simply send packets as fast as possible, but be aware that such high rates are likely to cause a loss of accuracy. The second case is when Nmap has&lt;br /&gt;
           nothing to send, for example at the end of a scan when the last probes have been sent and Nmap is waiting for them to time out or be responded to. It&#039;s normal to see the scanning rate drop at&lt;br /&gt;
           the end of a scan or in between hostgroups. The sending rate may temporarily exceed the maximum to make up for unpredictable delays, but on average the rate will stay at or below the maximum.&lt;br /&gt;
&lt;br /&gt;
           Specifying a minimum rate should be done with care. Scanning faster than a network can support may lead to a loss of accuracy. In some cases, using a faster rate can make a scan take longer than&lt;br /&gt;
           it would with a slower rate. This is because Nmap&#039;s adaptive retransmission algorithms will detect the network congestion caused by an excessive scanning rate and increase the number of&lt;br /&gt;
           retransmissions in order to improve accuracy. So even though packets are sent at a higher rate, more packets are sent overall. Cap the number of retransmissions with the --max-retries option if&lt;br /&gt;
           you need to set an upper limit on total scan time.&lt;br /&gt;
&lt;br /&gt;
       --defeat-rst-ratelimit&lt;br /&gt;
           Many hosts have long used rate limiting to reduce the number of ICMP error messages (such as port-unreachable errors) they send. Some systems now apply similar rate limits to the RST (reset)&lt;br /&gt;
           packets they generate. This can slow Nmap down dramatically as it adjusts its timing to reflect those rate limits. You can tell Nmap to ignore those rate limits (for port scans such as SYN scan&lt;br /&gt;
           which don&#039;t treat non-responsive ports as open) by specifying --defeat-rst-ratelimit.&lt;br /&gt;
&lt;br /&gt;
           Using this option can reduce accuracy, as some ports will appear non-responsive because Nmap didn&#039;t wait long enough for a rate-limited RST response. With a SYN scan, the non-response results in&lt;br /&gt;
           the port being labeled filtered rather than the closed state we see when RST packets are received. This option is useful when you only care about open ports, and distinguishing between closed&lt;br /&gt;
           and filtered ports isn&#039;t worth the extra time.&lt;br /&gt;
&lt;br /&gt;
       --defeat-icmp-ratelimit&lt;br /&gt;
           Similar to --defeat-rst-ratelimit, the --defeat-icmp-ratelimit option trades accuracy for speed, increasing UDP scanning speed against hosts that rate-limit ICMP error messages. Because this&lt;br /&gt;
           option causes Nmap to not delay in order to receive the port unreachable messages, a non-responsive port will be labeled closed|filtered instead of the default open|filtered. This has the effect&lt;br /&gt;
           of only treating ports which actually respond via UDP as open. Since many UDP services do not respond in this way, the chance for inaccuracy is greater with this option than with&lt;br /&gt;
           --defeat-rst-ratelimit.&lt;br /&gt;
&lt;br /&gt;
       --nsock-engine iocp|epoll|kqueue|poll|select&lt;br /&gt;
           Enforce use of a given nsock IO multiplexing engine. Only the select(2)-based fallback engine is guaranteed to be available on your system. Engines are named after the name of the IO management&lt;br /&gt;
           facility they leverage. Engines currently implemented are epoll, kqueue, poll, and select, but not all will be present on any platform. By default, Nmap will use the &amp;quot;best&amp;quot; engine, i.e. the&lt;br /&gt;
           first one in this list that is supported. Use nmap -V to see which engines are supported on your platform.&lt;br /&gt;
&lt;br /&gt;
       -T paranoid|sneaky|polite|normal|aggressive|insane (Set a timing template)&lt;br /&gt;
           While the fine-grained timing controls discussed in the previous section are powerful and effective, some people find them confusing. Moreover, choosing the appropriate values can sometimes take&lt;br /&gt;
           more time than the scan you are trying to optimize. Fortunately, Nmap offers a simpler approach, with six timing templates. You can specify them with the -T option and their number (0–5) or&lt;br /&gt;
           their name. The template names are paranoid (0), sneaky (1), polite (2), normal (3), aggressive (4), and insane (5). The first two are for IDS evasion. Polite mode slows down the scan to use&lt;br /&gt;
           less bandwidth and target machine resources. Normal mode is the default and so -T3 does nothing. Aggressive mode speeds scans up by making the assumption that you are on a reasonably fast and&lt;br /&gt;
           reliable network. Finally insane mode assumes that you are on an extraordinarily fast network or are willing to sacrifice some accuracy for speed.&lt;br /&gt;
&lt;br /&gt;
           These templates allow the user to specify how aggressive they wish to be, while leaving Nmap to pick the exact timing values. The templates also make some minor speed adjustments for which&lt;br /&gt;
           fine-grained control options do not currently exist. For example, -T4 prohibits the dynamic scan delay from exceeding 10 ms for TCP ports and -T5 caps that value at 5 ms. Templates can be used&lt;br /&gt;
           in combination with fine-grained controls, and the fine-grained controls that you specify will take precedence over the timing template default for that parameter. I recommend using -T4 when&lt;br /&gt;
           scanning reasonably modern and reliable networks. Keep that option even when you add fine-grained controls so that you benefit from those extra minor optimizations that it enables.&lt;br /&gt;
&lt;br /&gt;
           If you are on a decent broadband or ethernet connection, I would recommend always using -T4. Some people love -T5 though it is too aggressive for my taste. People sometimes specify -T2 because&lt;br /&gt;
           they think it is less likely to crash hosts or because they consider themselves to be polite in general. They often don&#039;t realize just how slow -T polite really is. Their scan may take ten times&lt;br /&gt;
           longer than a default scan. Machine crashes and bandwidth problems are rare with the default timing options (-T3) and so I normally recommend that for cautious scanners. Omitting version&lt;br /&gt;
           detection is far more effective than playing with timing values at reducing these problems.&lt;br /&gt;
&lt;br /&gt;
           While -T0 and -T1 may be useful for avoiding IDS alerts, they will take an extraordinarily long time to scan thousands of machines or ports. For such a long scan, you may prefer to set the exact&lt;br /&gt;
           timing values you need rather than rely on the canned -T0 and -T1 values.&lt;br /&gt;
&lt;br /&gt;
           The main effects of T0 are serializing the scan so only one port is scanned at a time, and waiting five minutes between sending each probe.  T1 and T2 are similar but they only wait 15 seconds&lt;br /&gt;
           and 0.4 seconds, respectively, between probes.  T3 is Nmap&#039;s default behavior, which includes parallelization.  -T4 does the equivalent of --max-rtt-timeout 1250ms --min-rtt-timeout 100ms&lt;br /&gt;
           --initial-rtt-timeout 500ms --max-retries 6 and sets the maximum TCP and SCTP scan delay to 10ms.  T5 does the equivalent of --max-rtt-timeout 300ms --min-rtt-timeout 50ms --initial-rtt-timeout&lt;br /&gt;
           250ms --max-retries 2 --host-timeout 15m --script-timeout 10m --max-scan-delay as well as setting the maximum TCP and SCTP scan delay to 5ms. Maximum UDP scan delay is not set by T4 or T5, but&lt;br /&gt;
           it can be set with the --max-scan-delay option.&lt;br /&gt;
&lt;br /&gt;
FIREWALL/IDS EVASION AND SPOOFING&lt;br /&gt;
       Many Internet pioneers envisioned a global open network with a universal IP address space allowing virtual connections between any two nodes. This allows hosts to act as true peers, serving and&lt;br /&gt;
       retrieving information from each other. People could access all of their home systems from work, changing the climate control settings or unlocking the doors for early guests. This vision of&lt;br /&gt;
       universal connectivity has been stifled by address space shortages and security concerns. In the early 1990s, organizations began deploying firewalls for the express purpose of reducing&lt;br /&gt;
       connectivity. Huge networks were cordoned off from the unfiltered Internet by application proxies, network address translation, and packet filters. The unrestricted flow of information gave way to&lt;br /&gt;
       tight regulation of approved communication channels and the content that passes over them.&lt;br /&gt;
&lt;br /&gt;
       Network obstructions such as firewalls can make mapping a network exceedingly difficult. It will not get any easier, as stifling casual reconnaissance is often a key goal of implementing the&lt;br /&gt;
       devices. Nevertheless, Nmap offers many features to help understand these complex networks, and to verify that filters are working as intended. It even supports mechanisms for bypassing poorly&lt;br /&gt;
       implemented defenses. One of the best methods of understanding your network security posture is to try to defeat it. Place yourself in the mind-set of an attacker, and deploy techniques from this&lt;br /&gt;
       section against your networks. Launch an FTP bounce scan, idle scan, fragmentation attack, or try to tunnel through one of your own proxies.&lt;br /&gt;
&lt;br /&gt;
       In addition to restricting network activity, companies are increasingly monitoring traffic with intrusion detection systems (IDS). All of the major IDSs ship with rules designed to detect Nmap scans&lt;br /&gt;
       because scans are sometimes a precursor to attacks. Many of these products have recently morphed into intrusion prevention systems (IPS) that actively block traffic deemed malicious. Unfortunately&lt;br /&gt;
       for network administrators and IDS vendors, reliably detecting bad intentions by analyzing packet data is a tough problem. Attackers with patience, skill, and the help of certain Nmap options can&lt;br /&gt;
       usually pass by IDSs undetected. Meanwhile, administrators must cope with large numbers of false positive results where innocent activity is misdiagnosed and alerted on or blocked.&lt;br /&gt;
&lt;br /&gt;
       Occasionally people suggest that Nmap should not offer features for evading firewall rules or sneaking past IDSs. They argue that these features are just as likely to be misused by attackers as used&lt;br /&gt;
       by administrators to enhance security. The problem with this logic is that these methods would still be used by attackers, who would just find other tools or patch the functionality into Nmap.&lt;br /&gt;
       Meanwhile, administrators would find it that much harder to do their jobs. Deploying only modern, patched FTP servers is a far more powerful defense than trying to prevent the distribution of tools&lt;br /&gt;
       implementing the FTP bounce attack.&lt;br /&gt;
&lt;br /&gt;
       There is no magic bullet (or Nmap option) for detecting and subverting firewalls and IDS systems. It takes skill and experience. A tutorial is beyond the scope of this reference guide, which only&lt;br /&gt;
       lists the relevant options and describes what they do.&lt;br /&gt;
&lt;br /&gt;
       -f (fragment packets); --mtu (using the specified MTU)&lt;br /&gt;
           The -f option causes the requested scan (including host discovery scans) to use tiny fragmented IP packets. The idea is to split up the TCP header over several packets to make it harder for&lt;br /&gt;
           packet filters, intrusion detection systems, and other annoyances to detect what you are doing. Be careful with this! Some programs have trouble handling these tiny packets. The old-school&lt;br /&gt;
           sniffer named Sniffit segmentation faulted immediately upon receiving the first fragment. Specify this option once, and Nmap splits the packets into eight bytes or less after the IP header. So a&lt;br /&gt;
           20-byte TCP header would be split into three packets. Two with eight bytes of the TCP header, and one with the final four. Of course each fragment also has an IP header. Specify -f again to use&lt;br /&gt;
           16 bytes per fragment (reducing the number of fragments).  Or you can specify your own offset size with the --mtu option. Don&#039;t also specify -f if you use --mtu. The offset must be a multiple of&lt;br /&gt;
           eight. While fragmented packets won&#039;t get by packet filters and firewalls that queue all IP fragments, such as the CONFIG_IP_ALWAYS_DEFRAG option in the Linux kernel, some networks can&#039;t afford&lt;br /&gt;
           the performance hit this causes and thus leave it disabled. Others can&#039;t enable this because fragments may take different routes into their networks. Some source systems defragment outgoing&lt;br /&gt;
           packets in the kernel. Linux with the iptables connection tracking module is one such example. Do a scan while a sniffer such as Wireshark is running to ensure that sent packets are fragmented.&lt;br /&gt;
           If your host OS is causing problems, try the --send-eth option to bypass the IP layer and send raw ethernet frames.&lt;br /&gt;
&lt;br /&gt;
           Fragmentation is only supported for Nmap&#039;s raw packet features, which includes TCP and UDP port scans (except connect scan and FTP bounce scan) and OS detection. Features such as version&lt;br /&gt;
           detection and the Nmap Scripting Engine generally don&#039;t support fragmentation because they rely on your host&#039;s TCP stack to communicate with target services.&lt;br /&gt;
&lt;br /&gt;
       -D decoy1[,decoy2][,ME][,...] (Cloak a scan with decoys)&lt;br /&gt;
           Causes a decoy scan to be performed, which makes it appear to the remote host that the host(s) you specify as decoys are scanning the target network too. Thus their IDS might report 5–10 port&lt;br /&gt;
           scans from unique IP addresses, but they won&#039;t know which IP was scanning them and which were innocent decoys. While this can be defeated through router path tracing, response-dropping, and&lt;br /&gt;
           other active mechanisms, it is generally an effective technique for hiding your IP address.&lt;br /&gt;
&lt;br /&gt;
           Separate each decoy host with commas, and you can optionally use ME as one of the decoys to represent the position for your real IP address. If you put ME in the sixth position or later, some&lt;br /&gt;
           common port scan detectors (such as Solar Designer&#039;s excellent Scanlogd) are unlikely to show your IP address at all. If you don&#039;t use ME, Nmap will put you in a random position. You can also&lt;br /&gt;
           use RND to generate a random, non-reserved IP address, or RND:number to generate number addresses.&lt;br /&gt;
&lt;br /&gt;
           Note that the hosts you use as decoys should be up or you might accidentally SYN flood your targets. Also it will be pretty easy to determine which host is scanning if only one is actually up on&lt;br /&gt;
           the network. You might want to use IP addresses instead of names (so the decoy networks don&#039;t see you in their nameserver logs). Right now random IP address generation is only supported with&lt;br /&gt;
           IPv4&lt;br /&gt;
&lt;br /&gt;
           Decoys are used both in the initial host discovery scan (using ICMP, SYN, ACK, or whatever) and during the actual port scanning phase. Decoys are also used during remote OS detection (-O).&lt;br /&gt;
           Decoys do not work with version detection or TCP connect scan. When a scan delay is in effect, the delay is enforced between each batch of spoofed probes, not between each individual probe.&lt;br /&gt;
           Because decoys are sent as a batch all at once, they may temporarily violate congestion control limits.&lt;br /&gt;
&lt;br /&gt;
           It is worth noting that using too many decoys may slow your scan and potentially even make it less accurate. Also, some ISPs will filter out your spoofed packets, but many do not restrict&lt;br /&gt;
           spoofed IP packets at all.&lt;br /&gt;
&lt;br /&gt;
       -S IP_Address (Spoof source address)&lt;br /&gt;
           In some circumstances, Nmap may not be able to determine your source address (Nmap will tell you if this is the case). In this situation, use -S with the IP address of the interface you wish to&lt;br /&gt;
           send packets through.&lt;br /&gt;
&lt;br /&gt;
           Another possible use of this flag is to spoof the scan to make the targets think that someone else is scanning them. Imagine a company being repeatedly port scanned by a competitor! The -e&lt;br /&gt;
           option and -Pn are generally required for this sort of usage. Note that you usually won&#039;t receive reply packets back (they will be addressed to the IP you are spoofing), so Nmap won&#039;t produce&lt;br /&gt;
           useful reports.&lt;br /&gt;
&lt;br /&gt;
       -e interface (Use specified interface)&lt;br /&gt;
           Tells Nmap what interface to send and receive packets on. Nmap should be able to detect this automatically, but it will tell you if it cannot.&lt;br /&gt;
&lt;br /&gt;
       --source-port portnumber; -g portnumber (Spoof source port number)&lt;br /&gt;
           One surprisingly common misconfiguration is to trust traffic based only on the source port number. It is easy to understand how this comes about. An administrator will set up a shiny new&lt;br /&gt;
           firewall, only to be flooded with complaints from ungrateful users whose applications stopped working. In particular, DNS may be broken because the UDP DNS replies from external servers can no&lt;br /&gt;
           longer enter the network. FTP is another common example. In active FTP transfers, the remote server tries to establish a connection back to the client to transfer the requested file.&lt;br /&gt;
&lt;br /&gt;
           Secure solutions to these problems exist, often in the form of application-level proxies or protocol-parsing firewall modules. Unfortunately there are also easier, insecure solutions. Noting&lt;br /&gt;
           that DNS replies come from port 53 and active FTP from port 20, many administrators have fallen into the trap of simply allowing incoming traffic from those ports. They often assume that no&lt;br /&gt;
           attacker would notice and exploit such firewall holes. In other cases, administrators consider this a short-term stop-gap measure until they can implement a more secure solution. Then they&lt;br /&gt;
           forget the security upgrade.&lt;br /&gt;
&lt;br /&gt;
           Overworked network administrators are not the only ones to fall into this trap. Numerous products have shipped with these insecure rules. Even Microsoft has been guilty. The IPsec filters that&lt;br /&gt;
           shipped with Windows 2000 and Windows XP contain an implicit rule that allows all TCP or UDP traffic from port 88 (Kerberos). In another well-known case, versions of the Zone Alarm personal&lt;br /&gt;
           firewall up to 2.1.25 allowed any incoming UDP packets with the source port 53 (DNS) or 67 (DHCP).&lt;br /&gt;
&lt;br /&gt;
           Nmap offers the -g and --source-port options (they are equivalent) to exploit these weaknesses. Simply provide a port number and Nmap will send packets from that port where possible. Most&lt;br /&gt;
           scanning operations that use raw sockets, including SYN and UDP scans, support the option completely. The option notably doesn&#039;t have an effect for any operations that use normal operating&lt;br /&gt;
           system sockets, including DNS requests, TCP connect scan, version detection, and script scanning. Setting the source port also doesn&#039;t work for OS detection, because Nmap must use different port&lt;br /&gt;
           numbers for certain OS detection tests to work properly.&lt;br /&gt;
&lt;br /&gt;
       --data hex string (Append custom binary data to sent packets)&lt;br /&gt;
           This option lets you include binary data as payload in sent packets.  hex string may be specified in any of the following formats: 0xAABBCCDDEEFF..., AABBCCDDEEFF...  or&lt;br /&gt;
           \xAA\xBB\xCC\xDD\xEE\xFF.... Examples of use are --data 0xdeadbeef and --data \xCA\xFE\x09. Note that if you specify a number like 0x00ff no byte-order conversion is performed. Make sure you&lt;br /&gt;
           specify the information in the byte order expected by the receiver.&lt;br /&gt;
&lt;br /&gt;
       --data-string string (Append custom string to sent packets)&lt;br /&gt;
           This option lets you include a regular string as payload in sent packets.  string can contain any string. However, note that some characters may depend on your system&#039;s locale and the receiver&lt;br /&gt;
           may not see the same information. Also, make sure you enclose the string in double quotes and escape any special characters from the shell. Examples: --data-string &amp;quot;Scan conducted by Security&lt;br /&gt;
           Ops, extension 7192&amp;quot; or --data-string &amp;quot;Ph34r my l33t skills&amp;quot;. Keep in mind that nobody is likely to actually see any comments left by this option unless they are carefully monitoring the network&lt;br /&gt;
           with a sniffer or custom IDS rules.&lt;br /&gt;
&lt;br /&gt;
       --data-length number (Append random data to sent packets)&lt;br /&gt;
           Normally Nmap sends minimalist packets containing only a header. So its TCP packets are generally 40 bytes and ICMP echo requests are just 28. Some UDP ports and IP protocols get a custom&lt;br /&gt;
           payload by default. This option tells Nmap to append the given number of random bytes to most of the packets it sends, and not to use any protocol-specific payloads. (Use --data-length 0 for no&lt;br /&gt;
           random or protocol-specific payloads.  OS detection (-O) packets are not affected because accuracy there requires probe consistency, but most pinging and portscan packets support this. It slows&lt;br /&gt;
           things down a little, but can make a scan slightly less conspicuous.&lt;br /&gt;
&lt;br /&gt;
       --ip-options S|R [route]|L [route]|T|U ... ; --ip-options hex string (Send packets with specified ip options)&lt;br /&gt;
           The IP protocol[12] offers several options which may be placed in packet headers. Unlike the ubiquitous TCP options, IP options are rarely seen due to practicality and security concerns. In&lt;br /&gt;
           fact, many Internet routers block the most dangerous options such as source routing. Yet options can still be useful in some cases for determining and manipulating the network route to target&lt;br /&gt;
           machines. For example, you may be able to use the record route option to determine a path to a target even when more traditional traceroute-style approaches fail. Or if your packets are being&lt;br /&gt;
           dropped by a certain firewall, you may be able to specify a different route with the strict or loose source routing options.&lt;br /&gt;
&lt;br /&gt;
           The most powerful way to specify IP options is to simply pass in values as the argument to --ip-options. Precede each hex number with \x then the two digits. You may repeat certain characters by&lt;br /&gt;
           following them with an asterisk and then the number of times you wish them to repeat. For example, \x01\x07\x04\x00*36\x01 is a hex string containing 36 NUL bytes.&lt;br /&gt;
&lt;br /&gt;
           Nmap also offers a shortcut mechanism for specifying options. Simply pass the letter R, T, or U to request record-route, record-timestamp, or both options together, respectively. Loose or strict&lt;br /&gt;
           source routing may be specified with an L or S followed by a space and then a space-separated list of IP addresses.&lt;br /&gt;
&lt;br /&gt;
           If you wish to see the options in packets sent and received, specify --packet-trace. For more information and examples of using IP options with Nmap, see&lt;br /&gt;
           https://seclists.org/nmap-dev/2006/q3/52.&lt;br /&gt;
&lt;br /&gt;
       --ttl value (Set IP time-to-live field)&lt;br /&gt;
           Sets the IPv4 time-to-live field in sent packets to the given value.&lt;br /&gt;
&lt;br /&gt;
       --randomize-hosts (Randomize target host order)&lt;br /&gt;
           Tells Nmap to shuffle each group of up to 16384 hosts before it scans them. This can make the scans less obvious to various network monitoring systems, especially when you combine it with slow&lt;br /&gt;
           timing options. If you want to randomize over larger group sizes, increase PING_GROUP_SZ in nmap.h and recompile. An alternative solution is to generate the target IP list with a list scan (-sL&lt;br /&gt;
           -n -oN filename), randomize it with a Perl script, then provide the whole list to Nmap with -iL.&lt;br /&gt;
&lt;br /&gt;
       --spoof-mac MAC address, prefix, or vendor name (Spoof MAC address)&lt;br /&gt;
           Asks Nmap to use the given MAC address&lt;br /&gt;
&lt;br /&gt;
           for all of the raw ethernet frames it sends. This option implies --send-eth to ensure that Nmap actually sends ethernet-level packets. The MAC given can take several formats. If it is simply the&lt;br /&gt;
           number 0, Nmap chooses a completely random MAC address for the session. If the given string is an even number of hex digits (with the pairs optionally separated by a colon), Nmap will use those&lt;br /&gt;
           as the MAC. If fewer than 12 hex digits are provided, Nmap fills in the remainder of the six bytes with random values. If the argument isn&#039;t a zero or hex string, Nmap looks through&lt;br /&gt;
           nmap-mac-prefixes to find a vendor name containing the given string (it is case insensitive). If a match is found, Nmap uses the vendor&#039;s OUI (three-byte prefix) and fills out the remaining&lt;br /&gt;
           three bytes randomly. Valid --spoof-mac argument examples are Apple, 0, 01:02:03:04:05:06, deadbeefcafe, 0020F2, and Cisco. This option only affects raw packet scans such as SYN scan or OS&lt;br /&gt;
           detection, not connection-oriented features such as version detection or the Nmap Scripting Engine.&lt;br /&gt;
&lt;br /&gt;
       --proxies Comma-separated list of proxy URLs (Relay TCP connections through a chain of proxies)&lt;br /&gt;
           Asks Nmap to establish TCP connections with a final target through supplied chain of one or more HTTP or SOCKS4 proxies. Proxies can help hide the true source of a scan or evade certain firewall&lt;br /&gt;
           restrictions, but they can hamper scan performance by increasing latency. Users may need to adjust Nmap timeouts and other scan parameters accordingly. In particular, a lower --max-parallelism&lt;br /&gt;
           may help because some proxies refuse to handle as many concurrent connections as Nmap opens by default.&lt;br /&gt;
&lt;br /&gt;
           This option takes a list of proxies as argument, expressed as URLs in the format proto://host:port. Use commas to separate node URLs in a chain. No authentication is supported yet. Valid&lt;br /&gt;
           protocols are HTTP and SOCKS4.&lt;br /&gt;
&lt;br /&gt;
           Warning: this feature is still under development and has limitations. It is implemented within the nsock library and thus has no effect on the ping, port scanning and OS discovery phases of a&lt;br /&gt;
           scan. Only NSE and version scan benefit from this option so far—other features may disclose your true address. SSL connections are not yet supported, nor is proxy-side DNS resolution (hostnames&lt;br /&gt;
           are always resolved by Nmap).&lt;br /&gt;
&lt;br /&gt;
       --badsum (Send packets with bogus TCP/UDP checksums)&lt;br /&gt;
           Asks Nmap to use an invalid TCP, UDP or SCTP checksum for packets sent to target hosts. Since virtually all host IP stacks properly drop these packets, any responses received are likely coming&lt;br /&gt;
           from a firewall or IDS that didn&#039;t bother to verify the checksum. For more details on this technique, see https://nmap.org/p60-12.html&lt;br /&gt;
&lt;br /&gt;
       --adler32 (Use deprecated Adler32 instead of CRC32C for SCTP checksums)&lt;br /&gt;
           Asks Nmap to use the deprecated Adler32 algorithm for calculating the SCTP checksum. If --adler32 is not given, CRC-32C (Castagnoli) is used.  RFC 2960[13] originally defined Adler32 as checksum&lt;br /&gt;
           algorithm for SCTP; RFC 4960[6] later redefined the SCTP checksums to use CRC-32C. Current SCTP implementations should be using CRC-32C, but in order to elicit responses from old, legacy SCTP&lt;br /&gt;
           implementations, it may be preferable to use Adler32.&lt;br /&gt;
&lt;br /&gt;
OUTPUT&lt;br /&gt;
       Any security tool is only as useful as the output it generates. Complex tests and algorithms are of little value if they aren&#039;t presented in an organized and comprehensible fashion. Given the number&lt;br /&gt;
       of ways Nmap is used by people and other software, no single format can please everyone. So Nmap offers several formats, including the interactive mode for humans to read directly and XML for easy&lt;br /&gt;
       parsing by software.&lt;br /&gt;
&lt;br /&gt;
       In addition to offering different output formats, Nmap provides options for controlling the verbosity of output as well as debugging messages. Output types may be sent to standard output or to named&lt;br /&gt;
       files, which Nmap can append to or clobber. Output files may also be used to resume aborted scans.&lt;br /&gt;
&lt;br /&gt;
       Nmap makes output available in five different formats. The default is called interactive output, and it is sent to standard output (stdout).  There is also normal output, which is similar to&lt;br /&gt;
       interactive except that it displays less runtime information and warnings since it is expected to be analyzed after the scan completes rather than interactively.&lt;br /&gt;
&lt;br /&gt;
       XML output is one of the most important output types, as it can be converted to HTML, easily parsed by programs such as Nmap graphical user interfaces, or imported into databases.&lt;br /&gt;
&lt;br /&gt;
       The two remaining output types are the simple grepable output which includes most information for a target host on a single line, and sCRiPt KiDDi3 0utPUt for users who consider themselves |&amp;lt;-r4d.&lt;br /&gt;
&lt;br /&gt;
       While interactive output is the default and has no associated command-line options, the other four format options use the same syntax. They take one argument, which is the filename that results&lt;br /&gt;
       should be stored in. Multiple formats may be specified, but each format may only be specified once. For example, you may wish to save normal output for your own review while saving XML of the same&lt;br /&gt;
       scan for programmatic analysis. You might do this with the options -oX myscan.xml -oN myscan.nmap. While this chapter uses the simple names like myscan.xml for brevity, more descriptive names are&lt;br /&gt;
       generally recommended. The names chosen are a matter of personal preference, though I use long ones that incorporate the scan date and a word or two describing the scan, placed in a directory named&lt;br /&gt;
       after the company I&#039;m scanning.&lt;br /&gt;
&lt;br /&gt;
       While these options save results to files, Nmap still prints interactive output to stdout as usual. For example, the command nmap -oX myscan.xml target prints XML to myscan.xml and fills standard&lt;br /&gt;
       output with the same interactive results it would have printed if -oX wasn&#039;t specified at all. You can change this by passing a hyphen character as the argument to one of the format types. This&lt;br /&gt;
       causes Nmap to deactivate interactive output, and instead print results in the format you specified to the standard output stream. So the command nmap -oX - target will send only XML output to&lt;br /&gt;
       stdout.  Serious errors may still be printed to the normal error stream, stderr.&lt;br /&gt;
&lt;br /&gt;
       Unlike some Nmap arguments, the space between the logfile option flag (such as -oX) and the filename or hyphen is mandatory. If you omit the flags and give arguments such as -oG- or -oXscan.xml, a&lt;br /&gt;
       backwards compatibility feature of Nmap will cause the creation of normal format output files named G- and Xscan.xml respectively.&lt;br /&gt;
&lt;br /&gt;
       All of these arguments support strftime-like conversions in the filename.  %H, %M, %S, %m, %d, %y, and %Y are all exactly the same as in strftime.  %T is the same as %H%M%S, %R is the same as %H%M,&lt;br /&gt;
       and %D is the same as %m%d%y. A % followed by any other character just yields that character (%% gives you a percent symbol). So -oX &#039;scan-%T-%D.xml&#039; will use an XML file with a name in the form of&lt;br /&gt;
       scan-144840-121307.xml.&lt;br /&gt;
&lt;br /&gt;
       Nmap also offers options to control scan verbosity and to append to output files rather than clobbering them. All of these options are described below.&lt;br /&gt;
&lt;br /&gt;
       Nmap Output Formats&lt;br /&gt;
&lt;br /&gt;
       -oN filespec (normal output)&lt;br /&gt;
           Requests that normal output be directed to the given filename. As discussed above, this differs slightly from interactive output.&lt;br /&gt;
&lt;br /&gt;
       -oX filespec (XML output)&lt;br /&gt;
           Requests that XML output be directed to the given filename. Nmap includes a document type definition (DTD) which allows XML parsers to validate Nmap XML output. While it is primarily intended&lt;br /&gt;
           for programmatic use, it can also help humans interpret Nmap XML output. The DTD defines the legal elements of the format, and often enumerates the attributes and values they can take on. The&lt;br /&gt;
           latest version is always available from https://svn.nmap.org/nmap/docs/nmap.dtd.&lt;br /&gt;
&lt;br /&gt;
           XML offers a stable format that is easily parsed by software. Free XML parsers are available for all major computer languages, including C/C++, Perl, Python, and Java. People have even written&lt;br /&gt;
           bindings for most of these languages to handle Nmap output and execution specifically. Examples are Nmap::Scanner[14] and Nmap::Parser[15] in Perl CPAN. In almost all cases that a non-trivial&lt;br /&gt;
           application interfaces with Nmap, XML is the preferred format.&lt;br /&gt;
&lt;br /&gt;
           The XML output references an XSL stylesheet which can be used to format the results as HTML. The easiest way to use this is simply to load the XML output in a web browser such as Firefox or IE.&lt;br /&gt;
           By default, this will only work on the machine you ran Nmap on (or a similarly configured one) due to the hard-coded nmap.xsl filesystem path. Use the --webxml or --stylesheet options to create&lt;br /&gt;
           portable XML files that render as HTML on any web-connected machine.&lt;br /&gt;
&lt;br /&gt;
       -oS filespec (ScRipT KIdd|3 oUTpuT)&lt;br /&gt;
           Script kiddie output is like interactive output, except that it is post-processed to better suit the l33t HaXXorZ who previously looked down on Nmap due to its consistent capitalization and&lt;br /&gt;
           spelling. Humor impaired people should note that this option is making fun of the script kiddies before flaming me for supposedly “helping them”.&lt;br /&gt;
&lt;br /&gt;
       -oG filespec (grepable output)&lt;br /&gt;
           This output format is covered last because it is deprecated. The XML output format is far more powerful, and is nearly as convenient for experienced users. XML is a standard for which dozens of&lt;br /&gt;
           excellent parsers are available, while grepable output is my own simple hack. XML is extensible to support new Nmap features as they are released, while I often must omit those features from&lt;br /&gt;
           grepable output for lack of a place to put them.&lt;br /&gt;
&lt;br /&gt;
           Nevertheless, grepable output is still quite popular. It is a simple format that lists each host on one line and can be trivially searched and parsed with standard Unix tools such as grep, awk,&lt;br /&gt;
           cut, sed, diff, and Perl. Even I usually use it for one-off tests done at the command line. Finding all the hosts with the SSH port open or that are running Solaris takes only a simple grep to&lt;br /&gt;
           identify the hosts, piped to an awk or cut command to print the desired fields.&lt;br /&gt;
&lt;br /&gt;
           Grepable output consists of comments (lines starting with a pound (#)) and target lines. A target line includes a combination of six labeled fields, separated by tabs and followed with a colon.&lt;br /&gt;
           The fields are Host, Ports, Protocols, Ignored State, OS, Seq Index, IP ID, and Status.&lt;br /&gt;
&lt;br /&gt;
           The most important of these fields is generally Ports, which gives details on each interesting port. It is a comma separated list of port entries. Each port entry represents one interesting&lt;br /&gt;
           port, and takes the form of seven slash (/) separated subfields. Those subfields are: Port number, State, Protocol, Owner, Service, SunRPC info, and Version info.&lt;br /&gt;
&lt;br /&gt;
           As with XML output, this man page does not allow for documenting the entire format. A more detailed look at the Nmap grepable output format is available from&lt;br /&gt;
           https://nmap.org/book/output-formats-grepable-output.html.&lt;br /&gt;
&lt;br /&gt;
       -oA basename (Output to all formats)&lt;br /&gt;
           As a convenience, you may specify -oA basename to store scan results in normal, XML, and grepable formats at once. They are stored in basename.nmap, basename.xml, and basename.gnmap,&lt;br /&gt;
           respectively. As with most programs, you can prefix the filenames with a directory path, such as ~/nmaplogs/foocorp/ on Unix or c:\hacking\sco on Windows.&lt;br /&gt;
&lt;br /&gt;
       Verbosity and debugging options&lt;br /&gt;
&lt;br /&gt;
       -v (Increase verbosity level), -vlevel (Set verbosity level)&lt;br /&gt;
           Increases the verbosity level, causing Nmap to print more information about the scan in progress. Open ports are shown as they are found and completion time estimates are provided when Nmap&lt;br /&gt;
           thinks a scan will take more than a few minutes. Use it twice or more for even greater verbosity: -vv, or give a verbosity level directly, for example -v3.&lt;br /&gt;
&lt;br /&gt;
           Most changes only affect interactive output, and some also affect normal and script kiddie output. The other output types are meant to be processed by machines, so Nmap can give substantial&lt;br /&gt;
           detail by default in those formats without fatiguing a human user. However, there are a few changes in other modes where output size can be reduced substantially by omitting some detail. For&lt;br /&gt;
           example, a comment line in the grepable output that provides a list of all ports scanned is only printed in verbose mode because it can be quite long.&lt;br /&gt;
&lt;br /&gt;
       -d (Increase debugging level), -dlevel (Set debugging level)&lt;br /&gt;
           When even verbose mode doesn&#039;t provide sufficient data for you, debugging is available to flood you with much more! As with the verbosity option (-v), debugging is enabled with a command-line&lt;br /&gt;
           flag (-d) and the debug level can be increased by specifying it multiple times, as in -dd, or by setting a level directly. For example, -d9 sets level nine. That is the highest effective level&lt;br /&gt;
           and will produce thousands of lines unless you run a very simple scan with very few ports and targets.&lt;br /&gt;
&lt;br /&gt;
           Debugging output is useful when a bug is suspected in Nmap, or if you are simply confused as to what Nmap is doing and why. As this feature is mostly intended for developers, debug lines aren&#039;t&lt;br /&gt;
           always self-explanatory. You may get something like: Timeout vals: srtt: -1 rttvar: -1 to: 1000000 delta 14987 ==&amp;gt; srtt: 14987 rttvar: 14987 to: 100000. If you don&#039;t understand a line, your only&lt;br /&gt;
           recourses are to ignore it, look it up in the source code, or request help from the development list (nmap-dev).  Some lines are self explanatory, but the messages become more obscure as the&lt;br /&gt;
           debug level is increased.&lt;br /&gt;
&lt;br /&gt;
       --reason (Host and port state reasons)&lt;br /&gt;
           Shows the reason each port is set to a specific state and the reason each host is up or down. This option displays the type of the packet that determined a port or hosts state. For example, A&lt;br /&gt;
           RST packet from a closed port or an echo reply from an alive host. The information Nmap can provide is determined by the type of scan or ping. The SYN scan and SYN ping (-sS and -PS) are very&lt;br /&gt;
           detailed, but the TCP connect scan (-sT) is limited by the implementation of the connect system call. This feature is automatically enabled by the debug option (-d) and the results are stored in&lt;br /&gt;
           XML log files even if this option is not specified.&lt;br /&gt;
&lt;br /&gt;
       --stats-every time (Print periodic timing stats)&lt;br /&gt;
           Periodically prints a timing status message after each interval of time. The time is a specification of the kind described in the section called “TIMING AND PERFORMANCE”; so for example, use&lt;br /&gt;
           --stats-every 10s to get a status update every 10 seconds. Updates are printed to interactive output (the screen) and XML output.&lt;br /&gt;
&lt;br /&gt;
       --packet-trace (Trace packets and data sent and received)&lt;br /&gt;
           Causes Nmap to print a summary of every packet sent or received. This is often used for debugging, but is also a valuable way for new users to understand exactly what Nmap is doing under the&lt;br /&gt;
           covers. To avoid printing thousands of lines, you may want to specify a limited number of ports to scan, such as -p20-30. If you only care about the goings on of the version detection subsystem,&lt;br /&gt;
           use --version-trace instead. If you only care about script tracing, specify --script-trace. With --packet-trace, you get all of the above.&lt;br /&gt;
&lt;br /&gt;
       --open (Show only open (or possibly open) ports)&lt;br /&gt;
           Sometimes you only care about ports you can actually connect to (open ones), and don&#039;t want results cluttered with closed, filtered, and closed|filtered ports. Output customization is normally&lt;br /&gt;
           done after the scan using tools such as grep, awk, and Perl, but this feature was added due to overwhelming requests. Specify --open to only see hosts with at least one open, open|filtered, or&lt;br /&gt;
           unfiltered port, and only see ports in those states. These three states are treated just as they normally are, which means that open|filtered and unfiltered may be condensed into counts if there&lt;br /&gt;
           are an overwhelming number of them.&lt;br /&gt;
&lt;br /&gt;
           Beginning with Nmap 7.40, the --open option implies&lt;br /&gt;
&lt;br /&gt;
           --defeat-rst-ratelimit, because that option only affects closed and filtered ports, which are hidden by --open.&lt;br /&gt;
&lt;br /&gt;
       --iflist (List interfaces and routes)&lt;br /&gt;
           Prints the interface list and system routes as detected by Nmap and quits. This is useful for debugging routing problems or device mischaracterization (such as Nmap treating a PPP connection as&lt;br /&gt;
           ethernet).&lt;br /&gt;
&lt;br /&gt;
       Miscellaneous output options&lt;br /&gt;
&lt;br /&gt;
       --append-output (Append to rather than clobber output files)&lt;br /&gt;
           When you specify a filename to an output format flag such as -oX or -oN, that file is overwritten by default. If you prefer to keep the existing content of the file and append the new results,&lt;br /&gt;
           specify the --append-output option. All output filenames specified in that Nmap execution will then be appended to rather than clobbered. This doesn&#039;t work well for XML (-oX) scan data as the&lt;br /&gt;
           resultant file generally won&#039;t parse properly until you fix it up by hand.&lt;br /&gt;
&lt;br /&gt;
       --resume filename (Resume aborted scan)&lt;br /&gt;
           Some extensive Nmap runs take a very long time—on the order of days. Such scans don&#039;t always run to completion. Restrictions may prevent Nmap from being run during working hours, the network&lt;br /&gt;
           could go down, the machine Nmap is running on might suffer a planned or unplanned reboot, or Nmap itself could crash. The administrator running Nmap could cancel it for any other reason as well,&lt;br /&gt;
           by pressing ctrl-C. Restarting the whole scan from the beginning may be undesirable. Fortunately, if scan output files were kept, the user can ask Nmap to resume scanning with the target it was&lt;br /&gt;
           working on when execution ceased. Simply specify the --resume option and pass the output file as its argument. No other arguments are permitted, as Nmap parses the output file to use the same&lt;br /&gt;
           ones specified previously. Simply call Nmap as nmap --resume logfilename. Nmap will append new results to the data files specified in the previous execution. Scans can be resumed from any of the&lt;br /&gt;
           3 major output formats: Normal, Grepable, or XML&lt;br /&gt;
&lt;br /&gt;
       --noninteractive (Disable runtime interactions)&lt;br /&gt;
           At times, such as when running Nmap in a shell background, it might be undesirable for Nmap to monitor and respond to user keyboard input when running. (See the section called “RUNTIME&lt;br /&gt;
           INTERACTION” about how to control Nmap during a scan.) Use option --noninteractive to prevent Nmap taking control of the terminal.&lt;br /&gt;
&lt;br /&gt;
       --stylesheet path or URL (Set XSL stylesheet to transform XML output)&lt;br /&gt;
           Nmap ships with an XSL stylesheet named nmap.xsl for viewing or translating XML output to HTML.  The XML output includes an xml-stylesheet directive which points to nmap.xml where it was&lt;br /&gt;
           initially installed by Nmap. Run the XML file through an XSLT processor such as xsltproc[16] to produce an HTML file. Directly opening the XML file in a browser no longer works well because&lt;br /&gt;
           modern browsers limit the locations a stylesheet may be loaded from. If you wish to use a different stylesheet, specify it as the argument to --stylesheet. You must pass the full pathname or&lt;br /&gt;
           URL. One common invocation is --stylesheet https://nmap.org/svn/docs/nmap.xsl. This tells an XSLT processor to load the latest version of the stylesheet from Nmap.Org. The --webxml option does&lt;br /&gt;
           the same thing with less typing and memorization. Loading the XSL from Nmap.Org makes it easier to view results on a machine that doesn&#039;t have Nmap (and thus nmap.xsl) installed. So the URL is&lt;br /&gt;
           often more useful, but the local filesystem location of nmap.xsl is used by default for privacy reasons.&lt;br /&gt;
&lt;br /&gt;
       --webxml (Load stylesheet from Nmap.Org)&lt;br /&gt;
           This is a convenience option, nothing more than an alias for --stylesheet https://nmap.org/svn/docs/nmap.xsl.&lt;br /&gt;
&lt;br /&gt;
       --no-stylesheet (Omit XSL stylesheet declaration from XML)&lt;br /&gt;
           Specify this option to prevent Nmap from associating any XSL stylesheet with its XML output. The xml-stylesheet directive is omitted.&lt;br /&gt;
&lt;br /&gt;
MISCELLANEOUS OPTIONS&lt;br /&gt;
       This section describes some important (and not-so-important) options that don&#039;t really fit anywhere else.&lt;br /&gt;
&lt;br /&gt;
       -6 (Enable IPv6 scanning)&lt;br /&gt;
           Nmap has IPv6 support for its most popular features. Ping scanning, port scanning, version detection, and the Nmap Scripting Engine all support IPv6. The command syntax is the same as usual&lt;br /&gt;
           except that you also add the -6 option. Of course, you must use IPv6 syntax if you specify an address rather than a hostname. An address might look like 3ffe:7501:4819:2000:210:f3ff:fe03:14d0,&lt;br /&gt;
           so hostnames are recommended. The output looks the same as usual, with the IPv6 address on the “interesting ports” line being the only IPv6 giveaway.&lt;br /&gt;
&lt;br /&gt;
           While IPv6 hasn&#039;t exactly taken the world by storm, it gets significant use in some (usually Asian) countries and most modern operating systems support it. To use Nmap with IPv6, both the source&lt;br /&gt;
           and target of your scan must be configured for IPv6. If your ISP (like most of them) does not allocate IPv6 addresses to you, free tunnel brokers are widely available and work fine with Nmap. I&lt;br /&gt;
           use the free IPv6 tunnel broker service at http://www.tunnelbroker.net. Other tunnel brokers are listed at Wikipedia[17]. 6to4 tunnels are another popular, free approach.&lt;br /&gt;
&lt;br /&gt;
           On Windows, raw-socket IPv6 scans are supported only on ethernet devices (not tunnels), and only on Windows Vista and later. Use the --unprivileged option in other situations.&lt;br /&gt;
&lt;br /&gt;
       -A (Aggressive scan options)&lt;br /&gt;
           This option enables additional advanced and aggressive options. Presently this enables OS detection (-O), version scanning (-sV), script scanning (-sC) and traceroute (--traceroute).  More&lt;br /&gt;
           features may be added in the future. The point is to enable a comprehensive set of scan options without people having to remember a large set of flags. However, because script scanning with the&lt;br /&gt;
           default set is considered intrusive, you should not use -A against target networks without permission. This option only enables features, and not timing options (such as -T4) or verbosity&lt;br /&gt;
           options (-v) that you might want as well. Options which require privileges (e.g. root access) such as OS detection and traceroute will only be enabled if those privileges are available.&lt;br /&gt;
&lt;br /&gt;
       --datadir directoryname (Specify custom Nmap data file location)&lt;br /&gt;
           Nmap obtains some special data at runtime in files named nmap-service-probes, nmap-services, nmap-protocols, nmap-rpc, nmap-mac-prefixes, and nmap-os-db. If the location of any of these files&lt;br /&gt;
           has been specified (using the --servicedb or --versiondb options), that location is used for that file. After that, Nmap searches these files in the directory specified with the --datadir option&lt;br /&gt;
           (if any). Any files not found there, are searched for in the directory specified by the NMAPDIR environment variable. Next comes ~/.nmap for real and effective UIDs; or on Windows,&lt;br /&gt;
           HOME\AppData\Roaming\nmap (where HOME is the user&#039;s home directory, like C:\Users\user). This is followed by the location of the nmap executable and the same location with ../share/nmap&lt;br /&gt;
           appended. Then a compiled-in location such as /usr/local/share/nmap or /usr/share/nmap.&lt;br /&gt;
&lt;br /&gt;
       --servicedb services file (Specify custom services file)&lt;br /&gt;
           Asks Nmap to use the specified services file rather than the nmap-services data file that comes with Nmap. Using this option also causes a fast scan (-F) to be used. See the description for&lt;br /&gt;
           --datadir for more information on Nmap&#039;s data files.&lt;br /&gt;
&lt;br /&gt;
       --versiondb service probes file (Specify custom service probes file)&lt;br /&gt;
           Asks Nmap to use the specified service probes file rather than the nmap-service-probes data file that comes with Nmap. See the description for --datadir for more information on Nmap&#039;s data&lt;br /&gt;
           files.&lt;br /&gt;
&lt;br /&gt;
       --send-eth (Use raw ethernet sending)&lt;br /&gt;
           Asks Nmap to send packets at the raw ethernet (data link) layer rather than the higher IP (network) layer. By default, Nmap chooses the one which is generally best for the platform it is running&lt;br /&gt;
           on. Raw sockets (IP layer) are generally most efficient for Unix machines, while ethernet frames are required for Windows operation since Microsoft disabled raw socket support. Nmap still uses&lt;br /&gt;
           raw IP packets on Unix despite this option when there is no other choice (such as non-ethernet connections).&lt;br /&gt;
&lt;br /&gt;
       --send-ip (Send at raw IP level)&lt;br /&gt;
           Asks Nmap to send packets via raw IP sockets rather than sending lower level ethernet frames. It is the complement to the --send-eth option discussed previously.&lt;br /&gt;
&lt;br /&gt;
       --privileged (Assume that the user is fully privileged)&lt;br /&gt;
           Tells Nmap to simply assume that it is privileged enough to perform raw socket sends, packet sniffing, and similar operations that usually require root privileges on Unix systems. By default&lt;br /&gt;
           Nmap quits if such operations are requested but geteuid is not zero.  --privileged is useful with Linux kernel capabilities and similar systems that may be configured to allow unprivileged users&lt;br /&gt;
           to perform raw-packet scans. Be sure to provide this option flag before any flags for options that require privileges (SYN scan, OS detection, etc.). The NMAP_PRIVILEGED environment variable may&lt;br /&gt;
           be set as an equivalent alternative to --privileged.&lt;br /&gt;
&lt;br /&gt;
       --unprivileged (Assume that the user lacks raw socket privileges)&lt;br /&gt;
           This option is the opposite of --privileged. It tells Nmap to treat the user as lacking network raw socket and sniffing privileges. This is useful for testing, debugging, or when the raw network&lt;br /&gt;
           functionality of your operating system is somehow broken. The NMAP_UNPRIVILEGED environment variable may be set as an equivalent alternative to --unprivileged.&lt;br /&gt;
&lt;br /&gt;
       --release-memory (Release memory before quitting)&lt;br /&gt;
           This option is only useful for memory-leak debugging. It causes Nmap to release allocated memory just before it quits so that actual memory leaks are easier to spot. Normally Nmap skips this as&lt;br /&gt;
           the OS does this anyway upon process termination.&lt;br /&gt;
&lt;br /&gt;
       -V; --version (Print version number)&lt;br /&gt;
           Prints the Nmap version number and exits.&lt;br /&gt;
&lt;br /&gt;
       -h; --help (Print help summary page)&lt;br /&gt;
           Prints a short help screen with the most common command flags. Running Nmap without any arguments does the same thing.&lt;br /&gt;
&lt;br /&gt;
RUNTIME INTERACTION&lt;br /&gt;
       During the execution of Nmap, all key presses are captured. This allows you to interact with the program without aborting and restarting it. Certain special keys will change options, while any other&lt;br /&gt;
       keys will print out a status message telling you about the scan. The convention is that lowercase letters increase the amount of printing, and uppercase letters decrease the printing. You may also&lt;br /&gt;
       press ‘?’ for help.&lt;br /&gt;
&lt;br /&gt;
       v / V&lt;br /&gt;
           Increase / decrease the verbosity level&lt;br /&gt;
&lt;br /&gt;
       d / D&lt;br /&gt;
           Increase / decrease the debugging Level&lt;br /&gt;
&lt;br /&gt;
       p / P&lt;br /&gt;
           Turn on / off packet tracing&lt;br /&gt;
&lt;br /&gt;
       ?&lt;br /&gt;
           Print a runtime interaction help screen&lt;br /&gt;
&lt;br /&gt;
       Anything else&lt;br /&gt;
           Print out a status message like this:&lt;br /&gt;
&lt;br /&gt;
               Stats: 0:00:07 elapsed; 20 hosts completed (1 up), 1 undergoing Service Scan&lt;br /&gt;
               Service scan Timing: About 33.33% done; ETC: 20:57 (0:00:12 remaining)&lt;br /&gt;
&lt;br /&gt;
EXAMPLES&lt;br /&gt;
       Here are some Nmap usage examples, from the simple and routine to a little more complex and esoteric. Some actual IP addresses and domain names are used to make things more concrete. In their place&lt;br /&gt;
       you should substitute addresses/names from your own network. While I don&#039;t think port scanning other networks is or should be illegal, some network administrators don&#039;t appreciate unsolicited&lt;br /&gt;
       scanning of their networks and may complain. Getting permission first is the best approach.&lt;br /&gt;
&lt;br /&gt;
       For testing purposes, you have permission to scan the host scanme.nmap.org.  This permission only includes scanning via Nmap and not testing exploits or denial of service attacks. To conserve&lt;br /&gt;
       bandwidth, please do not initiate more than a dozen scans against that host per day. If this free scanning target service is abused, it will be taken down and Nmap will report Failed to resolve&lt;br /&gt;
       given hostname/IP: scanme.nmap.org. These permissions also apply to the hosts scanme2.nmap.org, scanme3.nmap.org, and so on, though those hosts do not currently exist.&lt;br /&gt;
&lt;br /&gt;
       nmap -v scanme.nmap.org&lt;br /&gt;
&lt;br /&gt;
       This option scans all reserved TCP ports on the machine scanme.nmap.org . The -v option enables verbose mode.&lt;br /&gt;
&lt;br /&gt;
       nmap -sS -O scanme.nmap.org/24&lt;br /&gt;
&lt;br /&gt;
       Launches a stealth SYN scan against each machine that is up out of the 256 IPs on the /24 sized network where Scanme resides. It also tries to determine what operating system is running on each host&lt;br /&gt;
       that is up and running. This requires root privileges because of the SYN scan and OS detection.&lt;br /&gt;
&lt;br /&gt;
       nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127&lt;br /&gt;
&lt;br /&gt;
       Launches host enumeration and a TCP scan at the first half of each of the 255 possible eight-bit subnets in the 198.116.0.0/16 address space. This tests whether the systems run SSH, DNS, POP3, or&lt;br /&gt;
       IMAP on their standard ports, or anything on port 4564. For any of these ports found open, version detection is used to determine what application is running.&lt;br /&gt;
&lt;br /&gt;
       nmap -v -iR 100000 -Pn -p 80&lt;br /&gt;
&lt;br /&gt;
       Asks Nmap to choose 100,000 hosts at random and scan them for web servers (port 80). Host enumeration is disabled with -Pn since first sending a couple probes to determine whether a host is up is&lt;br /&gt;
       wasteful when you are only probing one port on each target host anyway.&lt;br /&gt;
&lt;br /&gt;
       nmap -Pn -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20&lt;br /&gt;
&lt;br /&gt;
       This scans 4096 IPs for any web servers (without pinging them) and saves the output in grepable and XML formats.&lt;br /&gt;
&lt;br /&gt;
NMAP BOOK&lt;br /&gt;
       While this reference guide details all material Nmap options, it can&#039;t fully demonstrate how to apply those features to quickly solve real-world tasks. For that, we released Nmap Network Scanning:&lt;br /&gt;
       The Official Nmap Project Guide to Network Discovery and Security Scanning.  Topics include subverting firewalls and intrusion detection systems, optimizing Nmap performance, and automating common&lt;br /&gt;
       networking tasks with the Nmap Scripting Engine. Hints and instructions are provided for common Nmap tasks such as taking network inventory, penetration testing, detecting rogue wireless access&lt;br /&gt;
       points, and quashing network worm outbreaks. Examples and diagrams show actual communication on the wire. More than half of the book is available free online. See https://nmap.org/book for more&lt;br /&gt;
       information.&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       Like its author, Nmap isn&#039;t perfect. But you can help make it better by sending bug reports or even writing patches. If Nmap doesn&#039;t behave the way you expect, first upgrade to the latest version&lt;br /&gt;
       available from https://nmap.org. If the problem persists, do some research to determine whether it has already been discovered and addressed. Try searching for the problem or error message on Google&lt;br /&gt;
       since that aggregates so many forums. If nothing comes of this, create an Issue on our tracker (http://issues.nmap.org) and/or mail a bug report to &amp;lt;dev@nmap.org&amp;gt;. If you subscribe to the nmap-dev&lt;br /&gt;
       list before posting, your message will bypass moderation and get through more quickly. Subscribe at https://nmap.org/mailman/listinfo/dev. Please include everything you have learned about the&lt;br /&gt;
       problem, as well as what version of Nmap you are using and what operating system version it is running on. Other suggestions for improving Nmap may be sent to the Nmap dev mailing list as well.&lt;br /&gt;
&lt;br /&gt;
       If you are able to write a patch improving Nmap or fixing a bug, that is even better! Instructions for submitting patches or git pull requests are available from&lt;br /&gt;
       https://github.com/nmap/nmap/blob/master/CONTRIBUTING.md&lt;br /&gt;
&lt;br /&gt;
       Particularly sensitive issues such as a security reports may be sent directly to Nmap&#039;s author Fyodor directly at &amp;lt;fyodor@nmap.org&amp;gt;. All other reports and comments should use the dev list or issue&lt;br /&gt;
       tracker instead because more people read, follow, and respond to those.&lt;br /&gt;
&lt;br /&gt;
AUTHORS&lt;br /&gt;
       Gordon “Fyodor” Lyon &amp;lt;fyodor@nmap.org&amp;gt; wrote and released Nmap in 1997. Since then, hundreds of people have made valuable contributions, as detailed in the CHANGELOG file distributed with Nmap and&lt;br /&gt;
       also available from https://nmap.org/changelog.html. David Fifield and Daniel Miller deserve special recognition for their enormous multi-year contributions!&lt;br /&gt;
&lt;br /&gt;
LEGAL NOTICES&lt;br /&gt;
   Nmap Copyright and Licensing&lt;br /&gt;
       The Nmap Security Scanner is (C) 1996–2022 Nmap Software LLC (&amp;quot;The Nmap Project&amp;quot;). Nmap is also a registered trademark of the Nmap Project. It is published under the Nmap Public Source License[18].&lt;br /&gt;
       This generally allows end users to download and use Nmap for free. It doesn&#039;t allow Nmap to be used and redistributed within commercial software or hardware products (including appliances, virtual&lt;br /&gt;
       machines, and traditional applications). We fund the project by selling a special Nmap OEM Edition for this purpose, as described at https://nmap.org/oem. Hundreds of large and small software&lt;br /&gt;
       vendors have already purchased OEM licenses to embed Nmap technology such as host discovery, port scanning, OS detection, version detection, and the Nmap Scripting Engine within their products.&lt;br /&gt;
&lt;br /&gt;
       The Nmap Project has permission to redistribute Npcap, a packet capturing driver and library for the Microsoft Windows platform. Npcap is a separate work with it&#039;s own license rather than this Nmap&lt;br /&gt;
       license. Since the Npcap license does not permit redistribution without special permission, our Nmap Windows binary packages which contain Npcap may not be redistributed without special permission.&lt;br /&gt;
&lt;br /&gt;
       Even though the NPSL is based on GPLv2, it contains different provisions and is not directly compatible. It is incompatible with some other open source licenses as well. In some cases we can&lt;br /&gt;
       relicense portions of Nmap or grant special permissions to use it in other open source software. Please contact fyodor@nmap.org with any such requests. Similarly, we don&#039;t incorporate incompatible&lt;br /&gt;
       open source software into Nmap without special permission from the copyright holders.&lt;br /&gt;
&lt;br /&gt;
       If you have received a written license agreement or contract for Nmap (such as an Nmap OEM license[19]) stating terms other than these, you may choose to use and redistribute Nmap under those terms&lt;br /&gt;
       instead.&lt;br /&gt;
&lt;br /&gt;
   Creative Commons License for this Nmap Guide&lt;br /&gt;
       This Nmap Reference Guide is (C) 2005–2022 Nmap Software LLC. It is hereby placed under version 3.0 of the Creative Commons Attribution License[20]. This allows you redistribute and modify the work&lt;br /&gt;
       as you desire, as long as you credit the original source. Alternatively, you may choose to treat this document as falling under the same license as Nmap itself (discussed previously).&lt;br /&gt;
&lt;br /&gt;
   Source Code Availability and Community Contributions&lt;br /&gt;
       Source is provided to this software because we believe users have a right to know exactly what a program is going to do before they run it. This also allows you to audit the software for security&lt;br /&gt;
       holes.&lt;br /&gt;
&lt;br /&gt;
       Source code also allows you to port Nmap to new platforms, fix bugs, and add new features. You are highly encouraged to submit your changes as Github Pull Requests (PR) or send them to&lt;br /&gt;
       &amp;lt;dev@nmap.org&amp;gt; for possible incorporation into the main distribution. By submitting such changes, it is assumed that you are offering the Nmap Project the unlimited, non-exclusive right to reuse,&lt;br /&gt;
       modify, and relicense the code. This is important because the inability to relicense code has caused devastating problems for other Free Software projects (such as KDE and NASM). We also sell&lt;br /&gt;
       commercial licenses to Nmap OEM[21]. If you wish to specify special license conditions of your contributions, just say so when you send them.&lt;br /&gt;
&lt;br /&gt;
   No Warranty&lt;br /&gt;
       This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.&lt;br /&gt;
&lt;br /&gt;
       It should also be noted that Nmap has occasionally been known to crash poorly written applications, TCP/IP stacks, and even operating systems.  While this is extremely rare, it is important to keep&lt;br /&gt;
       in mind.  Nmap should never be run against mission critical systems unless you are prepared to suffer downtime. We acknowledge here that Nmap may crash your systems or networks and we disclaim all&lt;br /&gt;
       liability for any damage or problems Nmap could cause.&lt;br /&gt;
&lt;br /&gt;
   Inappropriate Usage&lt;br /&gt;
       Because of the slight risk of crashes and because a few black hats like to use Nmap for reconnaissance prior to attacking systems, there are administrators who become upset and may complain when&lt;br /&gt;
       their system is scanned. Thus, it is often advisable to request permission before doing even a light scan of a network.&lt;br /&gt;
&lt;br /&gt;
       Nmap should never be installed with special privileges (e.g. suid root).  That would open up a major security vulnerability as other users on the system (or attackers) could use it for privilege&lt;br /&gt;
       escalation.&lt;br /&gt;
&lt;br /&gt;
       Nmap is not designed, manufactured, or intended for use in hazardous environments requiring fail- safe performance where the failure of the software could lead directly to death, personal injury, or&lt;br /&gt;
       significant physical or environmental damage.&lt;br /&gt;
&lt;br /&gt;
   Third-Party Software and Funding Notices&lt;br /&gt;
       This product includes software developed by the Apache Software Foundation[22]. A modified version of the Libpcap portable packet capture library[23] is distributed along with Nmap. The Windows&lt;br /&gt;
       version of Nmap utilizes the Libpcap-derived Ncap library[24] instead. Regular expression support is provided by the PCRE library[25], which is open-source software, written by Philip Hazel.&lt;br /&gt;
       Certain raw networking functions use the Libdnet[26] networking library, which was written by Dug Song.  A modified version is distributed with Nmap. Nmap can optionally link with the OpenSSL&lt;br /&gt;
       cryptography toolkit[27] for SSL version detection support. The Nmap Scripting Engine uses an embedded version of the Lua programming language[28].  The Liblinear linear classification library[29]&lt;br /&gt;
       is used for our IPv6 OS detection machine learning techniques[30].&lt;br /&gt;
&lt;br /&gt;
       All of the third-party software described in this paragraph is freely redistributable under BSD-style software licenses.&lt;br /&gt;
&lt;br /&gt;
       Binary packages for Windows and Mac OS X include support libraries necessary to run Zenmap and Ndiff with Python and PyGTK. (Unix platforms commonly make these libraries easy to install, so they are&lt;br /&gt;
       not part of the packages.) A listing of these support libraries and their licenses is included in the LICENSES files.&lt;br /&gt;
&lt;br /&gt;
       This software was supported in part through the Google Summer of Code[31] and the DARPA CINDER program[32] (DARPA-BAA-10-84).&lt;br /&gt;
&lt;br /&gt;
   United States Export Control&lt;br /&gt;
       Nmap only uses encryption when compiled with the optional OpenSSL support and linked with OpenSSL. When compiled without OpenSSL support, the Nmap Project believes that Nmap is not subject to U.S.&lt;br /&gt;
       Export Administration Regulations (EAR)[33] export control. As such, there is no applicable ECCN (export control classification number) and exportation does not require any special license, permit,&lt;br /&gt;
       or other governmental authorization.&lt;br /&gt;
&lt;br /&gt;
       When compiled with OpenSSL support or distributed as source code, the Nmap Project believes that Nmap falls under U.S. ECCN 5D002[34] (“Information Security Software”). We distribute Nmap under the&lt;br /&gt;
       TSU exception for publicly available encryption software defined in EAR 740.13(e)[35].&lt;br /&gt;
&lt;br /&gt;
NOTES&lt;br /&gt;
        1. Nmap Network Scanning: The Official Nmap Project Guide to Network Discovery and Security Scanning&lt;br /&gt;
           https://nmap.org/book/&lt;br /&gt;
&lt;br /&gt;
        2. RFC 1122&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc1122.txt&lt;br /&gt;
&lt;br /&gt;
        3. RFC 792&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc792.txt&lt;br /&gt;
&lt;br /&gt;
        4. RFC 950&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc950.txt&lt;br /&gt;
&lt;br /&gt;
        5. UDP&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc768.txt&lt;br /&gt;
&lt;br /&gt;
        6. SCTP&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc4960.txt&lt;br /&gt;
&lt;br /&gt;
        7. TCP RFC&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc793.txt&lt;br /&gt;
&lt;br /&gt;
        8. RFC 959&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc959.txt&lt;br /&gt;
&lt;br /&gt;
        9. RFC 1323&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc1323.txt&lt;br /&gt;
&lt;br /&gt;
       10. Lua programming language&lt;br /&gt;
           http://lua.org&lt;br /&gt;
&lt;br /&gt;
       11. precedence&lt;br /&gt;
           http://www.lua.org/manual/5.1/manual.html#2.5.3&lt;br /&gt;
&lt;br /&gt;
       12. IP protocol&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc791.txt&lt;br /&gt;
&lt;br /&gt;
       13. RFC 2960&lt;br /&gt;
           http://www.rfc-editor.org/rfc/rfc2960.txt&lt;br /&gt;
&lt;br /&gt;
       14. Nmap::Scanner&lt;br /&gt;
           http://sourceforge.net/projects/nmap-scanner/&lt;br /&gt;
&lt;br /&gt;
       15. Nmap::Parser&lt;br /&gt;
           http://nmapparser.wordpress.com/&lt;br /&gt;
&lt;br /&gt;
       16. xsltproc&lt;br /&gt;
           http://xmlsoft.org/XSLT/&lt;br /&gt;
&lt;br /&gt;
       17. listed at Wikipedia&lt;br /&gt;
           http://en.wikipedia.org/wiki/List_of_IPv6_tunnel_brokers&lt;br /&gt;
&lt;br /&gt;
       18. Nmap Public Source License&lt;br /&gt;
           https://nmap.org/npsl&lt;br /&gt;
&lt;br /&gt;
       19. Nmap OEM license&lt;br /&gt;
           https://nmap.org/oem/&lt;br /&gt;
&lt;br /&gt;
       20. Creative Commons Attribution License&lt;br /&gt;
           http://creativecommons.org/licenses/by/3.0/&lt;br /&gt;
&lt;br /&gt;
       21. Nmap OEM&lt;br /&gt;
           https://nmap.org/oem&lt;br /&gt;
&lt;br /&gt;
       22. Apache Software Foundation&lt;br /&gt;
           https://www.apache.org&lt;br /&gt;
&lt;br /&gt;
       23. Libpcap portable packet capture library&lt;br /&gt;
           https://www.tcpdump.org&lt;br /&gt;
&lt;br /&gt;
       24. Ncap library&lt;br /&gt;
           https://npcap.com&lt;br /&gt;
&lt;br /&gt;
       25. PCRE library&lt;br /&gt;
           https://pcre.org&lt;br /&gt;
&lt;br /&gt;
       26. Libdnet&lt;br /&gt;
           http://libdnet.sourceforge.net&lt;br /&gt;
&lt;br /&gt;
       27. OpenSSL cryptography toolkit&lt;br /&gt;
           https://openssl.org&lt;br /&gt;
&lt;br /&gt;
       28. Lua programming language&lt;br /&gt;
           https://lua.org&lt;br /&gt;
&lt;br /&gt;
       29. Liblinear linear classification library&lt;br /&gt;
           https://www.csie.ntu.edu.tw/~cjlin/liblinear/&lt;br /&gt;
&lt;br /&gt;
       30. IPv6 OS detection machine learning techniques&lt;br /&gt;
           https://nmap.org/book/osdetect-guess.html#osdetect-guess-ipv6&lt;br /&gt;
&lt;br /&gt;
       31. Google Summer of Code&lt;br /&gt;
           https://nmap.org/soc/&lt;br /&gt;
&lt;br /&gt;
       32. DARPA CINDER program&lt;br /&gt;
           https://www.fbo.gov/index?s=opportunity&amp;amp;mode=form&amp;amp;id=585e02a51f77af5cb3c9e06b9cc82c48&amp;amp;tab=core&amp;amp;_cview=1&lt;br /&gt;
&lt;br /&gt;
       33. Export Administration Regulations (EAR)&lt;br /&gt;
           https://www.bis.doc.gov/index.php/regulations/export-administration-regulations-ear&lt;br /&gt;
&lt;br /&gt;
       34. 5D002&lt;br /&gt;
           https://www.bis.doc.gov/index.php/documents/regulations-docs/federal-register-notices/federal-register-2014/951-ccl5-pt2/file&lt;br /&gt;
&lt;br /&gt;
       35. EAR 740.13(e)&lt;br /&gt;
           https://www.bis.doc.gov/index.php/documents/regulations-docs/2341-740-2/file&lt;br /&gt;
&lt;br /&gt;
Nmap                                                                                              08/31/2022                                                                                          NMAP(1)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=WHOIS_-_Manpage&amp;diff=1107</id>
		<title>WHOIS - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=WHOIS_-_Manpage&amp;diff=1107"/>
		<updated>2026-01-17T11:36:12Z</updated>

		<summary type="html">&lt;p&gt;Admin: /* Querying an ASN (Autonomous System Number) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Quick Examples ==&lt;br /&gt;
&lt;br /&gt;
=== `-i` (IP Address Information) ===&lt;br /&gt;
This option queries information for an IP address.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois -i 192.168.1.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide WHOIS information for the IP address `192.168.1.1`.&lt;br /&gt;
&lt;br /&gt;
=== `-r` (Recursive) ===&lt;br /&gt;
The `-r` option enables recursive queries to gather more information about a domain.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois -r example.com&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Querying an ASN (Autonomous System Number) ===&lt;br /&gt;
If you want to retrieve information about a specific ASN:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois AS15169&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== whois Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
WHOIS(1)                                                                                                       Debian GNU/Linux                                                                                                      WHOIS(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       whois - client for the whois directory service&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       whois [ { -h | --host } HOST ] [ { -p | --port } PORT ] [ -abBcdGHIKlLmMrRx ] [ -g SOURCE:FIRST-LAST ] [ -i ATTR[,ATTR]... ] [ -s SOURCE[,SOURCE]... ] [ -T TYPE[,TYPE]... ] [ --verbose ] [ --no-recursion ] OBJECT&lt;br /&gt;
&lt;br /&gt;
       whois -q KEYWORD&lt;br /&gt;
&lt;br /&gt;
       whois -t TYPE&lt;br /&gt;
&lt;br /&gt;
       whois -v TYPE&lt;br /&gt;
&lt;br /&gt;
       whois --help&lt;br /&gt;
&lt;br /&gt;
       whois --version&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       whois searches for an object in a RFC 3912 database.&lt;br /&gt;
&lt;br /&gt;
       This version of the whois client tries to guess the right server to ask for the specified object.  If no guess can be made it will connect to whois.networksolutions.com for NIC handles or whois.arin.net for IPv4 addresses and net‐&lt;br /&gt;
       work names.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       -h      HOST, --host=HOST Connect to HOST.&lt;br /&gt;
&lt;br /&gt;
       -H      Do not display the legal disclaimers that some registries like to show you.&lt;br /&gt;
&lt;br /&gt;
       -p      PORT, --port=PORT Connect to PORT.&lt;br /&gt;
&lt;br /&gt;
       -I      First query whois.iana.org and then follow its referral to the whois server authoritative for that request.  This works for IP addresses, AS numbers and domains.  BEWARE: this implies that the IANA server will receive your&lt;br /&gt;
               complete query.&lt;br /&gt;
&lt;br /&gt;
       --no-recursion&lt;br /&gt;
               Disable recursion from registry to registrar servers.&lt;br /&gt;
&lt;br /&gt;
       --verbose&lt;br /&gt;
               Be verbose.&lt;br /&gt;
&lt;br /&gt;
       --help  Display online help.&lt;br /&gt;
&lt;br /&gt;
       --version&lt;br /&gt;
               Display the program version.&lt;br /&gt;
&lt;br /&gt;
       Other options are flags understood by whois.ripe.net and some other RIPE-like servers:&lt;br /&gt;
&lt;br /&gt;
       -a      Also search all the mirrored databases.&lt;br /&gt;
&lt;br /&gt;
       -b      Return brief IP address ranges with abuse contact.&lt;br /&gt;
&lt;br /&gt;
       -B      Disable objects filtering.  (Show the e-mail addresses.)&lt;br /&gt;
&lt;br /&gt;
       -c      Return the smallest IP address range with a reference to an irt object.&lt;br /&gt;
&lt;br /&gt;
       -d      Return the reverse DNS delegation object too.&lt;br /&gt;
&lt;br /&gt;
       -g      SOURCE:FIRST-LAST Search updates from SOURCE database between FIRST and LAST update serial number.  It is useful to obtain Near Real Time Mirroring stream.&lt;br /&gt;
&lt;br /&gt;
       -G      Disable grouping of associated objects.&lt;br /&gt;
&lt;br /&gt;
       -i      ATTR[,ATTR]...  Inverse-search objects having associated attributes.  ATTR is the attribute name, while the positional OBJECT argument is the attribute value.&lt;br /&gt;
&lt;br /&gt;
       -K      Return  primary  key  attributes only.  An exception is the members attribute of set objects, which is always returned.  Another exception are all attributes of the objects organisation, person and role, that are never re‐&lt;br /&gt;
               turned.&lt;br /&gt;
&lt;br /&gt;
       -l      Return the one level less specific object.&lt;br /&gt;
&lt;br /&gt;
       -L      Return all levels of less specific objects.&lt;br /&gt;
&lt;br /&gt;
       -m      Return all one level more specific objects.&lt;br /&gt;
&lt;br /&gt;
       -M      Return all levels of more specific objects.&lt;br /&gt;
&lt;br /&gt;
       -q      KEYWORD Return information about the server.  KEYWORD can be version for the server version, sources for the list of database sources or types for the list of supported object types.&lt;br /&gt;
&lt;br /&gt;
       -r      Disable recursive lookups for contact information.&lt;br /&gt;
&lt;br /&gt;
       -R      Disable following referrals and force showing the object from the local copy in the server.&lt;br /&gt;
&lt;br /&gt;
       -s      SOURCE[,SOURCE]...  Request the server to search for objects mirrored from SOURCE.  Sources are delimited by comma, and the order is significant.  Use the -q sources parameter to obtain a list of valid sources.&lt;br /&gt;
&lt;br /&gt;
       -t      TYPE Return the template for a object of TYPE.&lt;br /&gt;
&lt;br /&gt;
       -T      TYPE[,TYPE]...  Restrict the search to objects of TYPE.  Multiple types are separated by a comma.&lt;br /&gt;
&lt;br /&gt;
       -v      TYPE Return the verbose template for a object of TYPE.&lt;br /&gt;
&lt;br /&gt;
       -x      Search for only exact match on network address prefix.&lt;br /&gt;
&lt;br /&gt;
NOTES&lt;br /&gt;
       When querying the Verisign gTLDs (e.g. .com, .net...) thin registry servers for a domain, the program will automatically prepend the domain keyword to only show domain records.  The nameserver or registrar keywords must be used to&lt;br /&gt;
       show other kinds of records.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.arin.net for IPv4 or IPv6 networks, the CIDR netmask length will be automatically removed from the query string.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.nic.ad.jp for AS numbers, the program will automatically convert the request in the appropriate format, inserting a space after the string AS.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.denic.de for domain names and no other flags have been specified, the program will automatically add the flag -T dn.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.dk-hostmaster.dk for domain names and no other flags have been specified, the program will automatically add the flag --show-handles.&lt;br /&gt;
&lt;br /&gt;
       RIPE-specific command line options are ignored when querying non-RIPE servers.  This may or may not be the behaviour intended by the user.  When using non-standard query parameters then the command line options which are not to be&lt;br /&gt;
       interpreted by the client must follow the -- separator (which marks the beginning of the query string).&lt;br /&gt;
&lt;br /&gt;
       If the /etc/whois.conf configuration file exists, it will be consulted to find a server before applying the normal rules.  Each line of the file should contain a regular expression to be matched against  the  query  text  and  the&lt;br /&gt;
       whois server to use, separated by white space.  IDN domains must use the ACE format.&lt;br /&gt;
&lt;br /&gt;
       The whois protocol does not specify an encoding for characters which cannot be represented by ASCII and implementations vary wildly.  If the program knows that a specific server uses a certain encoding, if needed it will transcode&lt;br /&gt;
       the server output to the encoding specified by the current system locale.&lt;br /&gt;
&lt;br /&gt;
       Command line arguments will always be interpreted accordingly to the current system locale and converted to the IDN ASCII Compatible Encoding.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       /etc/whois.conf&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       LANG   When querying whois.nic.ad.jp and whois.jprs.jp English text is requested unless the LANG or LC_MESSAGES environment variables specify a Japanese locale.&lt;br /&gt;
&lt;br /&gt;
       WHOIS_OPTIONS&lt;br /&gt;
              A list of options which will be evaluated before the ones specified on the command line.&lt;br /&gt;
&lt;br /&gt;
       WHOIS_SERVER&lt;br /&gt;
              This server will be queried if the program cannot guess where some kind of objects are located.  If the variable does not exist then whois.arin.net will be queried.&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       whois.conf(5).&lt;br /&gt;
&lt;br /&gt;
       RFC 3912: WHOIS Protocol Specification.&lt;br /&gt;
&lt;br /&gt;
       RIPE Database Query Reference Manual: &amp;lt;https://www.ripe.net/data-tools/support/documentation/ripe-database-query-reference-manual&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       The program may have buffer overflows in the command line parser: be sure to not pass untrusted data to it.  It should be rewritten to use a dynamic strings library.&lt;br /&gt;
&lt;br /&gt;
HISTORY&lt;br /&gt;
       This program closely tracks the user interface of the whois client developed at RIPE by Ambrose Magee and others on the base of the original BSD client.&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       Whois and this man page were written by Marco d&#039;Itri &amp;lt;md@linux.it&amp;gt; and are licensed under the terms of the GNU General Public License, version 2 or later.&lt;br /&gt;
&lt;br /&gt;
Marco d&#039;Itri                                                                                                      2019-12-30                                                                                                         WHOIS(1)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=WHOIS_-_Manpage&amp;diff=1106</id>
		<title>WHOIS - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=WHOIS_-_Manpage&amp;diff=1106"/>
		<updated>2026-01-17T11:35:55Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == Quick Examples ==  === `-i` (IP Address Information) === This option queries information for an IP address.  Example:  &amp;lt;nowiki&amp;gt; whois -i 192.168.1.1&amp;lt;/nowiki&amp;gt;  This will provide WHOIS information for the IP address `192.168.1.1`.  === `-r` (Recursive) === The `-r` option enables recursive queries to gather more information about a domain.  Example:  &amp;lt;nowiki&amp;gt; whois -r exampl...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Quick Examples ==&lt;br /&gt;
&lt;br /&gt;
=== `-i` (IP Address Information) ===&lt;br /&gt;
This option queries information for an IP address.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois -i 192.168.1.1&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will provide WHOIS information for the IP address `192.168.1.1`.&lt;br /&gt;
&lt;br /&gt;
=== `-r` (Recursive) ===&lt;br /&gt;
The `-r` option enables recursive queries to gather more information about a domain.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois -r example.com&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Querying an ASN (Autonomous System Number) ===&lt;br /&gt;
If you want to retrieve information about a specific ASN:&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
whois AS15169&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== whois Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
WHOIS(1)                                                                                                       Debian GNU/Linux                                                                                                      WHOIS(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       whois - client for the whois directory service&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       whois [ { -h | --host } HOST ] [ { -p | --port } PORT ] [ -abBcdGHIKlLmMrRx ] [ -g SOURCE:FIRST-LAST ] [ -i ATTR[,ATTR]... ] [ -s SOURCE[,SOURCE]... ] [ -T TYPE[,TYPE]... ] [ --verbose ] [ --no-recursion ] OBJECT&lt;br /&gt;
&lt;br /&gt;
       whois -q KEYWORD&lt;br /&gt;
&lt;br /&gt;
       whois -t TYPE&lt;br /&gt;
&lt;br /&gt;
       whois -v TYPE&lt;br /&gt;
&lt;br /&gt;
       whois --help&lt;br /&gt;
&lt;br /&gt;
       whois --version&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       whois searches for an object in a RFC 3912 database.&lt;br /&gt;
&lt;br /&gt;
       This version of the whois client tries to guess the right server to ask for the specified object.  If no guess can be made it will connect to whois.networksolutions.com for NIC handles or whois.arin.net for IPv4 addresses and net‐&lt;br /&gt;
       work names.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       -h      HOST, --host=HOST Connect to HOST.&lt;br /&gt;
&lt;br /&gt;
       -H      Do not display the legal disclaimers that some registries like to show you.&lt;br /&gt;
&lt;br /&gt;
       -p      PORT, --port=PORT Connect to PORT.&lt;br /&gt;
&lt;br /&gt;
       -I      First query whois.iana.org and then follow its referral to the whois server authoritative for that request.  This works for IP addresses, AS numbers and domains.  BEWARE: this implies that the IANA server will receive your&lt;br /&gt;
               complete query.&lt;br /&gt;
&lt;br /&gt;
       --no-recursion&lt;br /&gt;
               Disable recursion from registry to registrar servers.&lt;br /&gt;
&lt;br /&gt;
       --verbose&lt;br /&gt;
               Be verbose.&lt;br /&gt;
&lt;br /&gt;
       --help  Display online help.&lt;br /&gt;
&lt;br /&gt;
       --version&lt;br /&gt;
               Display the program version.&lt;br /&gt;
&lt;br /&gt;
       Other options are flags understood by whois.ripe.net and some other RIPE-like servers:&lt;br /&gt;
&lt;br /&gt;
       -a      Also search all the mirrored databases.&lt;br /&gt;
&lt;br /&gt;
       -b      Return brief IP address ranges with abuse contact.&lt;br /&gt;
&lt;br /&gt;
       -B      Disable objects filtering.  (Show the e-mail addresses.)&lt;br /&gt;
&lt;br /&gt;
       -c      Return the smallest IP address range with a reference to an irt object.&lt;br /&gt;
&lt;br /&gt;
       -d      Return the reverse DNS delegation object too.&lt;br /&gt;
&lt;br /&gt;
       -g      SOURCE:FIRST-LAST Search updates from SOURCE database between FIRST and LAST update serial number.  It is useful to obtain Near Real Time Mirroring stream.&lt;br /&gt;
&lt;br /&gt;
       -G      Disable grouping of associated objects.&lt;br /&gt;
&lt;br /&gt;
       -i      ATTR[,ATTR]...  Inverse-search objects having associated attributes.  ATTR is the attribute name, while the positional OBJECT argument is the attribute value.&lt;br /&gt;
&lt;br /&gt;
       -K      Return  primary  key  attributes only.  An exception is the members attribute of set objects, which is always returned.  Another exception are all attributes of the objects organisation, person and role, that are never re‐&lt;br /&gt;
               turned.&lt;br /&gt;
&lt;br /&gt;
       -l      Return the one level less specific object.&lt;br /&gt;
&lt;br /&gt;
       -L      Return all levels of less specific objects.&lt;br /&gt;
&lt;br /&gt;
       -m      Return all one level more specific objects.&lt;br /&gt;
&lt;br /&gt;
       -M      Return all levels of more specific objects.&lt;br /&gt;
&lt;br /&gt;
       -q      KEYWORD Return information about the server.  KEYWORD can be version for the server version, sources for the list of database sources or types for the list of supported object types.&lt;br /&gt;
&lt;br /&gt;
       -r      Disable recursive lookups for contact information.&lt;br /&gt;
&lt;br /&gt;
       -R      Disable following referrals and force showing the object from the local copy in the server.&lt;br /&gt;
&lt;br /&gt;
       -s      SOURCE[,SOURCE]...  Request the server to search for objects mirrored from SOURCE.  Sources are delimited by comma, and the order is significant.  Use the -q sources parameter to obtain a list of valid sources.&lt;br /&gt;
&lt;br /&gt;
       -t      TYPE Return the template for a object of TYPE.&lt;br /&gt;
&lt;br /&gt;
       -T      TYPE[,TYPE]...  Restrict the search to objects of TYPE.  Multiple types are separated by a comma.&lt;br /&gt;
&lt;br /&gt;
       -v      TYPE Return the verbose template for a object of TYPE.&lt;br /&gt;
&lt;br /&gt;
       -x      Search for only exact match on network address prefix.&lt;br /&gt;
&lt;br /&gt;
NOTES&lt;br /&gt;
       When querying the Verisign gTLDs (e.g. .com, .net...) thin registry servers for a domain, the program will automatically prepend the domain keyword to only show domain records.  The nameserver or registrar keywords must be used to&lt;br /&gt;
       show other kinds of records.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.arin.net for IPv4 or IPv6 networks, the CIDR netmask length will be automatically removed from the query string.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.nic.ad.jp for AS numbers, the program will automatically convert the request in the appropriate format, inserting a space after the string AS.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.denic.de for domain names and no other flags have been specified, the program will automatically add the flag -T dn.&lt;br /&gt;
&lt;br /&gt;
       When querying whois.dk-hostmaster.dk for domain names and no other flags have been specified, the program will automatically add the flag --show-handles.&lt;br /&gt;
&lt;br /&gt;
       RIPE-specific command line options are ignored when querying non-RIPE servers.  This may or may not be the behaviour intended by the user.  When using non-standard query parameters then the command line options which are not to be&lt;br /&gt;
       interpreted by the client must follow the -- separator (which marks the beginning of the query string).&lt;br /&gt;
&lt;br /&gt;
       If the /etc/whois.conf configuration file exists, it will be consulted to find a server before applying the normal rules.  Each line of the file should contain a regular expression to be matched against  the  query  text  and  the&lt;br /&gt;
       whois server to use, separated by white space.  IDN domains must use the ACE format.&lt;br /&gt;
&lt;br /&gt;
       The whois protocol does not specify an encoding for characters which cannot be represented by ASCII and implementations vary wildly.  If the program knows that a specific server uses a certain encoding, if needed it will transcode&lt;br /&gt;
       the server output to the encoding specified by the current system locale.&lt;br /&gt;
&lt;br /&gt;
       Command line arguments will always be interpreted accordingly to the current system locale and converted to the IDN ASCII Compatible Encoding.&lt;br /&gt;
&lt;br /&gt;
FILES&lt;br /&gt;
       /etc/whois.conf&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       LANG   When querying whois.nic.ad.jp and whois.jprs.jp English text is requested unless the LANG or LC_MESSAGES environment variables specify a Japanese locale.&lt;br /&gt;
&lt;br /&gt;
       WHOIS_OPTIONS&lt;br /&gt;
              A list of options which will be evaluated before the ones specified on the command line.&lt;br /&gt;
&lt;br /&gt;
       WHOIS_SERVER&lt;br /&gt;
              This server will be queried if the program cannot guess where some kind of objects are located.  If the variable does not exist then whois.arin.net will be queried.&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       whois.conf(5).&lt;br /&gt;
&lt;br /&gt;
       RFC 3912: WHOIS Protocol Specification.&lt;br /&gt;
&lt;br /&gt;
       RIPE Database Query Reference Manual: &amp;lt;https://www.ripe.net/data-tools/support/documentation/ripe-database-query-reference-manual&amp;gt;&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       The program may have buffer overflows in the command line parser: be sure to not pass untrusted data to it.  It should be rewritten to use a dynamic strings library.&lt;br /&gt;
&lt;br /&gt;
HISTORY&lt;br /&gt;
       This program closely tracks the user interface of the whois client developed at RIPE by Ambrose Magee and others on the base of the original BSD client.&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       Whois and this man page were written by Marco d&#039;Itri &amp;lt;md@linux.it&amp;gt; and are licensed under the terms of the GNU General Public License, version 2 or later.&lt;br /&gt;
&lt;br /&gt;
Marco d&#039;Itri                                                                                                      2019-12-30                                                                                                         WHOIS(1)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=WC_-_Manpage&amp;diff=1105</id>
		<title>WC - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=WC_-_Manpage&amp;diff=1105"/>
		<updated>2026-01-17T11:30:02Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Quick Example ==&lt;br /&gt;
&lt;br /&gt;
Count the lines of a command return :&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
first command | wc -l&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== wc Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
WC(1)                                                                                                           User Commands                                                                                                           WC(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       wc - print newline, word, and byte counts for each file&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       wc [OPTION]... [FILE]...&lt;br /&gt;
       wc [OPTION]... --files0-from=F&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       Print newline, word, and byte counts for each FILE, and a total line if more than one FILE is specified.  A word is a nonempty sequence of non white space delimited by white space characters or by start or end of input.&lt;br /&gt;
&lt;br /&gt;
       With no FILE, or when FILE is -, read standard input.&lt;br /&gt;
&lt;br /&gt;
       The options below may be used to select which counts are printed, always in the following order: newline, word, character, byte, maximum line length.&lt;br /&gt;
&lt;br /&gt;
       -c, --bytes&lt;br /&gt;
              print the byte counts&lt;br /&gt;
&lt;br /&gt;
       -m, --chars&lt;br /&gt;
              print the character counts&lt;br /&gt;
&lt;br /&gt;
       -l, --lines&lt;br /&gt;
              print the newline counts&lt;br /&gt;
&lt;br /&gt;
       --files0-from=F&lt;br /&gt;
              read input from the files specified by NUL-terminated names in file F; If F is - then read names from standard input&lt;br /&gt;
&lt;br /&gt;
       -L, --max-line-length&lt;br /&gt;
              print the maximum display width&lt;br /&gt;
&lt;br /&gt;
       -w, --words&lt;br /&gt;
              print the word counts&lt;br /&gt;
&lt;br /&gt;
       --total=WHEN&lt;br /&gt;
              when to print a line with total counts; WHEN can be: auto, always, only, never&lt;br /&gt;
&lt;br /&gt;
       --help display this help and exit&lt;br /&gt;
&lt;br /&gt;
       --version&lt;br /&gt;
              output version information and exit&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       Written by Paul Rubin and David MacKenzie.&lt;br /&gt;
&lt;br /&gt;
REPORTING BUGS&lt;br /&gt;
       GNU coreutils online help: &amp;lt;https://www.gnu.org/software/coreutils/&amp;gt;&lt;br /&gt;
       Report any translation bugs to &amp;lt;https://translationproject.org/team/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       Full documentation &amp;lt;https://www.gnu.org/software/coreutils/wc&amp;gt;&lt;br /&gt;
       or available locally via: info &#039;(coreutils) wc invocation&#039;&lt;br /&gt;
&lt;br /&gt;
       Packaged by Debian (9.7-3)&lt;br /&gt;
       Copyright © 2025 Free Software Foundation, Inc.&lt;br /&gt;
       License GPLv3+: GNU GPL version 3 or later &amp;lt;https://gnu.org/licenses/gpl.html&amp;gt;.&lt;br /&gt;
       This is free software: you are free to change and redistribute it.&lt;br /&gt;
       There is NO WARRANTY, to the extent permitted by law.&lt;br /&gt;
&lt;br /&gt;
GNU coreutils 9.7                                                                                                 June 2025                                                                                                             WC(1)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=WC_-_Manpage&amp;diff=1104</id>
		<title>WC - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=WC_-_Manpage&amp;diff=1104"/>
		<updated>2026-01-17T11:28:00Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == wc Manpage ==   &amp;lt;nowiki&amp;gt; WC(1)                                                                                                           User Commands                                                                                                           WC(1)  NAME        wc - print newline, word, and byte counts for each file  SYNOPSIS        wc [OPTION]... [FILE]......&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== wc Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
WC(1)                                                                                                           User Commands                                                                                                           WC(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       wc - print newline, word, and byte counts for each file&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       wc [OPTION]... [FILE]...&lt;br /&gt;
       wc [OPTION]... --files0-from=F&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       Print newline, word, and byte counts for each FILE, and a total line if more than one FILE is specified.  A word is a nonempty sequence of non white space delimited by white space characters or by start or end of input.&lt;br /&gt;
&lt;br /&gt;
       With no FILE, or when FILE is -, read standard input.&lt;br /&gt;
&lt;br /&gt;
       The options below may be used to select which counts are printed, always in the following order: newline, word, character, byte, maximum line length.&lt;br /&gt;
&lt;br /&gt;
       -c, --bytes&lt;br /&gt;
              print the byte counts&lt;br /&gt;
&lt;br /&gt;
       -m, --chars&lt;br /&gt;
              print the character counts&lt;br /&gt;
&lt;br /&gt;
       -l, --lines&lt;br /&gt;
              print the newline counts&lt;br /&gt;
&lt;br /&gt;
       --files0-from=F&lt;br /&gt;
              read input from the files specified by NUL-terminated names in file F; If F is - then read names from standard input&lt;br /&gt;
&lt;br /&gt;
       -L, --max-line-length&lt;br /&gt;
              print the maximum display width&lt;br /&gt;
&lt;br /&gt;
       -w, --words&lt;br /&gt;
              print the word counts&lt;br /&gt;
&lt;br /&gt;
       --total=WHEN&lt;br /&gt;
              when to print a line with total counts; WHEN can be: auto, always, only, never&lt;br /&gt;
&lt;br /&gt;
       --help display this help and exit&lt;br /&gt;
&lt;br /&gt;
       --version&lt;br /&gt;
              output version information and exit&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       Written by Paul Rubin and David MacKenzie.&lt;br /&gt;
&lt;br /&gt;
REPORTING BUGS&lt;br /&gt;
       GNU coreutils online help: &amp;lt;https://www.gnu.org/software/coreutils/&amp;gt;&lt;br /&gt;
       Report any translation bugs to &amp;lt;https://translationproject.org/team/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       Full documentation &amp;lt;https://www.gnu.org/software/coreutils/wc&amp;gt;&lt;br /&gt;
       or available locally via: info &#039;(coreutils) wc invocation&#039;&lt;br /&gt;
&lt;br /&gt;
       Packaged by Debian (9.7-3)&lt;br /&gt;
       Copyright © 2025 Free Software Foundation, Inc.&lt;br /&gt;
       License GPLv3+: GNU GPL version 3 or later &amp;lt;https://gnu.org/licenses/gpl.html&amp;gt;.&lt;br /&gt;
       This is free software: you are free to change and redistribute it.&lt;br /&gt;
       There is NO WARRANTY, to the extent permitted by law.&lt;br /&gt;
&lt;br /&gt;
GNU coreutils 9.7                                                                                                 June 2025                                                                                                             WC(1)&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=MTR_-_Manpage&amp;diff=1103</id>
		<title>MTR - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=MTR_-_Manpage&amp;diff=1103"/>
		<updated>2026-01-17T11:27:05Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== mtr --help ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
Usage:&lt;br /&gt;
 mtr [options] hostname&lt;br /&gt;
&lt;br /&gt;
 -F, --filename FILE        read hostname(s) from a file&lt;br /&gt;
 -4                         use IPv4 only&lt;br /&gt;
 -6                         use IPv6 only&lt;br /&gt;
 -u, --udp                  use UDP instead of ICMP echo&lt;br /&gt;
 -T, --tcp                  use TCP instead of ICMP echo&lt;br /&gt;
 -I, --interface NAME       use named network interface&lt;br /&gt;
 -a, --address ADDRESS      bind the outgoing socket to ADDRESS&lt;br /&gt;
 -f, --first-ttl NUMBER     set what TTL to start&lt;br /&gt;
 -m, --max-ttl NUMBER       maximum number of hops&lt;br /&gt;
 -U, --max-unknown NUMBER   maximum unknown host&lt;br /&gt;
 -P, --port PORT            target port number for TCP, SCTP, or UDP&lt;br /&gt;
 -L, --localport LOCALPORT  source port number for UDP&lt;br /&gt;
 -s, --psize PACKETSIZE     set the packet size used for probing&lt;br /&gt;
 -B, --bitpattern NUMBER    set bit pattern to use in payload&lt;br /&gt;
 -i, --interval SECONDS     ICMP echo request interval&lt;br /&gt;
 -G, --gracetime SECONDS    number of seconds to wait for responses&lt;br /&gt;
 -Q, --tos NUMBER           type of service field in IP header&lt;br /&gt;
 -e, --mpls                 display information from ICMP extensions&lt;br /&gt;
 -Z, --timeout SECONDS      seconds to keep probe sockets open&lt;br /&gt;
 -M, --mark MARK            mark each sent packet&lt;br /&gt;
 -r, --report               output using report mode&lt;br /&gt;
 -w, --report-wide          output wide report&lt;br /&gt;
 -c, --report-cycles COUNT  set the number of pings sent&lt;br /&gt;
 -j, --json                 output json&lt;br /&gt;
 -x, --xml                  output xml&lt;br /&gt;
 -C, --csv                  output comma separated values&lt;br /&gt;
 -l, --raw                  output raw format&lt;br /&gt;
 -p, --split                split output&lt;br /&gt;
 -t, --curses               use curses terminal interface&lt;br /&gt;
     --displaymode MODE     select initial display mode&lt;br /&gt;
 -n, --no-dns               do not resolve host names&lt;br /&gt;
 -b, --show-ips             show IP numbers and host names&lt;br /&gt;
 -o, --order FIELDS         select output fields&lt;br /&gt;
 -y, --ipinfo NUMBER        select IP information in output&lt;br /&gt;
 -z, --aslookup             display AS number&lt;br /&gt;
 -h, --help                 display this help and exit&lt;br /&gt;
 -v, --version              output version information and exit&lt;br /&gt;
&lt;br /&gt;
See the &#039;man 8 mtr&#039; for details.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Manpage ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
MTR(8)                                                                                      System Administration                                                                                      MTR(8)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       mtr - a network diagnostic tool&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       mtr  [-4|-6]  [-F FILENAME] [--report] [--report-wide] [--xml] [--gtk] [--curses] [--displaymode MODE] [--raw] [--csv] [--json] [--split] [--no-dns] [--show-ips] [-o FIELDS] [-y IPINFO] [--aslookup]&lt;br /&gt;
       [-i INTERVAL] [-c COUNT] [-s PACKETSIZE] [-B BITPATTERN] [-G GRACEPERIOD] [-Q TOS] [--mpls] [-I NAME] [-a ADDRESS] [-f FIRST-TTL] [-m MAX-TTL] [-U MAX-UNKNOWN]  [--udp]  [--tcp]  [--sctp]  [-P PORT]&lt;br /&gt;
       [-L LOCALPORT] [-Z TIMEOUT] [-M MARK] HOSTNAME&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       mtr combines the functionality of the traceroute and ping programs in a single network diagnostic tool.&lt;br /&gt;
&lt;br /&gt;
       As mtr starts, it investigates the network connection between the host mtr runs on and HOSTNAME by sending packets with purposely low TTLs.  It continues to send packets with low TTL, noting the re‐&lt;br /&gt;
       sponse time of the intervening routers.  This allows mtr to print the response percentage and response times of the internet route to HOSTNAME.  A sudden increase in packet loss or response time  is&lt;br /&gt;
       often an indication of a bad (or simply overloaded) link.&lt;br /&gt;
&lt;br /&gt;
       The results are usually reported as round-trip-response times in milliseconds and the percentage of packet loss.&lt;br /&gt;
&lt;br /&gt;
OPTIONS&lt;br /&gt;
       -h, --help&lt;br /&gt;
              Print the summary of command line argument options.&lt;br /&gt;
&lt;br /&gt;
       -v, --version&lt;br /&gt;
              Print the installed version of mtr.&lt;br /&gt;
&lt;br /&gt;
       -4     Use IPv4 only.&lt;br /&gt;
&lt;br /&gt;
       -6     Use IPv6 only.  (IPV4 may be used for DNS lookups.)&lt;br /&gt;
&lt;br /&gt;
       -F FILENAME, --filename FILENAME&lt;br /&gt;
              Reads the list of hostnames from the specified file.&lt;br /&gt;
&lt;br /&gt;
       -r, --report&lt;br /&gt;
              This option puts mtr into report mode.  When in this mode, mtr will run for the number of cycles specified by the -c option, and then print statistics and exit.&lt;br /&gt;
&lt;br /&gt;
       This mode is useful for generating statistics about network quality.&lt;br /&gt;
              Note that each running instance of mtr generates a significant amount of network traffic.  Using mtr to measure the quality of your network may result in decreased network performance.&lt;br /&gt;
&lt;br /&gt;
       -w, --report-wide&lt;br /&gt;
              This option puts mtr into wide report mode.  When in this mode, mtr will not cut hostnames in the report.&lt;br /&gt;
&lt;br /&gt;
       -x, --xml&lt;br /&gt;
              Use this option to tell mtr to use the xml output format.  This format is better suited for automated processing of the measurement results.&lt;br /&gt;
&lt;br /&gt;
       -t, --curses&lt;br /&gt;
              Use  this  option to force mtr to use the curses based terminal interface (if available).  In case the list of hops exceeds the height of your terminal, you can use the + and - keys to scroll&lt;br /&gt;
              up and down half a page.&lt;br /&gt;
&lt;br /&gt;
              Ctrl-L clears spurious error messages that may overwrite other parts of the display.&lt;br /&gt;
&lt;br /&gt;
       --displaymode MODE&lt;br /&gt;
              Use this option to select the initial display mode: 0 (default) selects statistics, 1 selects the stripchart without latency information, and 2 selects the stripchart  with  latency  informa‐&lt;br /&gt;
              tion.&lt;br /&gt;
&lt;br /&gt;
       -g, --gtk&lt;br /&gt;
              Use  this  option  to  force mtr to use the GTK+ based X11 window interface (if available).  GTK+ must have been available on the system when mtr was built for this to work.  See the GTK+ web&lt;br /&gt;
              page at ⟨http://www.gtk.org/⟩ for more information about GTK+.&lt;br /&gt;
&lt;br /&gt;
       -l, --raw&lt;br /&gt;
              Use the raw output format.  This format is better suited for archival of the measurement results.  It could be parsed to be presented into any of the other display methods.&lt;br /&gt;
&lt;br /&gt;
              Example of the raw output format:&lt;br /&gt;
              h 0 10.1.1.1&lt;br /&gt;
              p 0 339&lt;br /&gt;
              h 1 46.149.16.4&lt;br /&gt;
              p 1 530&lt;br /&gt;
              h 2 172.31.1.16&lt;br /&gt;
              p 2 531&lt;br /&gt;
              h 3 82.221.168.236&lt;br /&gt;
              p 3 1523&lt;br /&gt;
              h 5 195.130.211.8&lt;br /&gt;
              p 5 1603&lt;br /&gt;
              h 6 193.4.58.17&lt;br /&gt;
              p 6 1127&lt;br /&gt;
              h 7 193.4.58.17&lt;br /&gt;
              d 7 www.isnic.is&lt;br /&gt;
&lt;br /&gt;
       -C, --csv&lt;br /&gt;
              Use the Comma-Separated-Value (CSV) output format.  (Note: The separator is actually a semi-colon &#039;;&#039;.)&lt;br /&gt;
&lt;br /&gt;
              Example of the CSV output format:&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;1;r-76520-PROD.greenqloud.internal;288&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;2;46.149.16.4;2086&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;3;172.31.1.16;600&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;4;82.221.168.236;1163&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;5;???;0&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;6;rix-k2-gw.isnic.is;1654&lt;br /&gt;
              MTR.0.86+git:16e39fc0;1435562787;OK;nic.is;7;www.isnic.is;1036&lt;br /&gt;
&lt;br /&gt;
       -j, --json&lt;br /&gt;
              Use this option to tell mtr to use the JSON output format.  This format is better suited for automated processing of the measurement results.  Jansson library must have been available on  the&lt;br /&gt;
              system when mtr was built for this to work.&lt;br /&gt;
&lt;br /&gt;
       -p, --split&lt;br /&gt;
              Use this option to set mtr to spit out a format that is suitable for a split-user interface.&lt;br /&gt;
&lt;br /&gt;
       -n, --no-dns&lt;br /&gt;
              Use this option to force mtr to display numeric IP numbers and not try to resolve the host names.&lt;br /&gt;
&lt;br /&gt;
       -b, --show-ips&lt;br /&gt;
              Use this option to tell mtr to display both the host names and numeric IP numbers.  In split mode this adds an extra field to the output.  In report mode, there is usually too little space to&lt;br /&gt;
              add the IPs, and they will be truncated.  Use the wide report (-w) mode to see the IPs in report mode.&lt;br /&gt;
&lt;br /&gt;
       -o FIELDS, --order FIELDS&lt;br /&gt;
              Use this option to specify which fields to display and in which order.  You may use one or more space characters to separate fields.&lt;br /&gt;
              Available fields:&lt;br /&gt;
&lt;br /&gt;
                                                                                                 ┌──┬─────────────────────┐&lt;br /&gt;
                                                                                                 │L │ Loss ratio          │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │D │ Dropped packets     │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │R │ Received packets    │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │S │ Sent Packets        │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │N │ Newest RTT(ms)      │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │B │ Min/Best RTT(ms)    │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │A │ Average RTT(ms)     │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │W │ Max/Worst RTT(ms)   │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │V │ Standard Deviation  │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │G │ Geometric Mean      │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │J │ Current Jitter      │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │M │ Jitter Mean/Avg.    │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │X │ Worst Jitter        │&lt;br /&gt;
                                                                                                 ├──┼─────────────────────┤&lt;br /&gt;
                                                                                                 │I │ Interarrival Jitter │&lt;br /&gt;
                                                                                                 └──┴─────────────────────┘&lt;br /&gt;
              Example: -o &amp;quot;LSD NBAW  X&amp;quot;&lt;br /&gt;
&lt;br /&gt;
       -y n, --ipinfo n&lt;br /&gt;
              Displays information about each IP hop.  Valid values for n are:&lt;br /&gt;
&lt;br /&gt;
              0   Display AS number (equivalent to -z)&lt;br /&gt;
              1   Display IP prefix&lt;br /&gt;
              2   Display country code of the origin AS&lt;br /&gt;
              3   Display RIR (ripencc, arin, ...)&lt;br /&gt;
              4   Display the allocation date of the IP prefix&lt;br /&gt;
&lt;br /&gt;
              It is possible to cycle between these fields at runtime (using the y key).&lt;br /&gt;
&lt;br /&gt;
       -z, --aslookup&lt;br /&gt;
              Displays the Autonomous System (AS) number alongside each hop.  Equivalent to --ipinfo 0.&lt;br /&gt;
&lt;br /&gt;
              Example (columns to the right not shown for clarity):&lt;br /&gt;
              1. AS???   r-76520-PROD.greenqloud.internal&lt;br /&gt;
              2. AS51969 46.149.16.4&lt;br /&gt;
              3. AS???   172.31.1.16&lt;br /&gt;
              4. AS30818 82.221.168.236&lt;br /&gt;
              5. ???&lt;br /&gt;
              6. AS???   rix-k2-gw.isnic.is&lt;br /&gt;
              7. AS1850  www.isnic.is&lt;br /&gt;
&lt;br /&gt;
       -i SECONDS, --interval SECONDS&lt;br /&gt;
              Use this option to specify the positive number of seconds between ICMP ECHO requests.  The default value for this parameter is one second.  The root user may choose values  between  zero  and&lt;br /&gt;
              one.&lt;br /&gt;
&lt;br /&gt;
       -c COUNT, --report-cycles COUNT&lt;br /&gt;
              Use this option to set the number of pings sent to determine both the machines on the network and the reliability of those machines.  Each cycle lasts one second.&lt;br /&gt;
&lt;br /&gt;
       -s PACKETSIZE, --psize PACKETSIZE&lt;br /&gt;
              This option sets the packet size used for probing.  It is in bytes, inclusive IP and ICMP headers.&lt;br /&gt;
&lt;br /&gt;
              If set to a negative number, every iteration will use a different, random packet size up to that number.&lt;br /&gt;
&lt;br /&gt;
       -B NUM, --bitpattern NUM&lt;br /&gt;
              Specifies bit pattern to use in payload.  Should be within range 0 - 255.  If NUM is greater than 255, a random pattern is used.&lt;br /&gt;
&lt;br /&gt;
       -G SECONDS, --gracetime SECONDS&lt;br /&gt;
              Use this option to specify the positive number of seconds to wait for responses after the final request. The default value is five seconds.&lt;br /&gt;
&lt;br /&gt;
       -Q NUM, --tos NUM&lt;br /&gt;
              Specifies value for type of service field in IP header.  Should be within range 0 - 255.&lt;br /&gt;
&lt;br /&gt;
       -e, --mpls&lt;br /&gt;
              Use this option to tell mtr to display information from ICMP extensions for MPLS (RFC 4950) that are encoded in the response packets.&lt;br /&gt;
&lt;br /&gt;
       -I NAME, --interface NAME&lt;br /&gt;
              Use  the  network  interface  with  a specific name for sending network probes.  This can be useful when you have multiple network interfaces with routes to your destination, for example both&lt;br /&gt;
              wired Ethernet and WiFi, and wish to test a particular interface.&lt;br /&gt;
&lt;br /&gt;
       -a ADDRESS, --address ADDRESS&lt;br /&gt;
              Use this option to bind the outgoing socket to ADDRESS, so that all packets will be sent with ADDRESS as source address.  NOTE that this option doesn&#039;t apply to DNS requests (which  could  be&lt;br /&gt;
              and could not be what you want).&lt;br /&gt;
&lt;br /&gt;
       -f NUM, --first-ttl NUM&lt;br /&gt;
              Specifies with what TTL to start.  Defaults to 1.&lt;br /&gt;
&lt;br /&gt;
       -m NUM, --max-ttl NUM&lt;br /&gt;
              Specifies the maximum number of hops (max time-to-live value) traceroute will probe.  Default is 30.&lt;br /&gt;
&lt;br /&gt;
       -U NUM, --max-unknown NUM&lt;br /&gt;
              Specifies the maximum unknown host. Default is 5.&lt;br /&gt;
&lt;br /&gt;
       -u, --udp&lt;br /&gt;
              Use UDP datagrams instead of ICMP ECHO.&lt;br /&gt;
&lt;br /&gt;
       -T, --tcp&lt;br /&gt;
              Use TCP SYN packets instead of ICMP ECHO.  PACKETSIZE is ignored, since SYN packets can not contain data.&lt;br /&gt;
&lt;br /&gt;
       -S, --sctp&lt;br /&gt;
              Use Stream Control Transmission Protocol packets instead of ICMP ECHO.&lt;br /&gt;
&lt;br /&gt;
       -P PORT, --port PORT&lt;br /&gt;
              The target port number for TCP/SCTP/UDP traces.&lt;br /&gt;
&lt;br /&gt;
       -L LOCALPORT, --localport LOCALPORT&lt;br /&gt;
              The source port number for UDP traces.&lt;br /&gt;
&lt;br /&gt;
       -Z SECONDS, --timeout SECONDS&lt;br /&gt;
              The  number  of  seconds  to keep probe sockets open before giving up on the connection.  Using large values for this, especially combined with a short interval, will use up a lot of file de‐&lt;br /&gt;
              scriptors.&lt;br /&gt;
&lt;br /&gt;
       -M MARK, --mark MARK&lt;br /&gt;
              Set the mark for each packet sent through this socket similar to the netfilter MARK target but socket-based.  MARK is 32 unsigned integer.  See socket(7) for full description of  this  socket&lt;br /&gt;
              option.&lt;br /&gt;
&lt;br /&gt;
ENVIRONMENT&lt;br /&gt;
       mtr recognizes a few environment variables.&lt;br /&gt;
&lt;br /&gt;
       MTR_OPTIONS&lt;br /&gt;
              This environment variable allows one to specify options, as if they were passed on the command line.  It is parsed before reading the actual command line options, so that options specified in&lt;br /&gt;
              MTR_OPTIONS are overridden by command-line options.&lt;br /&gt;
&lt;br /&gt;
              Example:&lt;br /&gt;
&lt;br /&gt;
              MTR_OPTIONS=&amp;quot;-4 -c 1&amp;quot; mtr -6 localhost&lt;br /&gt;
&lt;br /&gt;
              would send one probe (because of -c 1) towards ::1 (because of -6, which overrides the -4 passed in MTR_OPTIONS).&lt;br /&gt;
&lt;br /&gt;
       MTR_PACKET&lt;br /&gt;
              A path to the mtr-packet executable, to be used for sending and receiving network probes.  If MTR_PACKET is unset, the PATH will be used to search for an mtr-packet executable.&lt;br /&gt;
&lt;br /&gt;
       DISPLAY&lt;br /&gt;
              Specifies an X11 server for the GTK+ frontend.&lt;br /&gt;
&lt;br /&gt;
INTERACTIVE CONTROL&lt;br /&gt;
       mtr can be controlled while it is running with the following keys:&lt;br /&gt;
         ?|h     help&lt;br /&gt;
         p       pause (SPACE to resume)&lt;br /&gt;
         d       switching display mode&lt;br /&gt;
         e       toggle MPLS information on/off&lt;br /&gt;
         n       toggle DNS on/off&lt;br /&gt;
         r       reset all counters&lt;br /&gt;
         o str   set the columns to display, default str=&#039;LRS N BAWV&#039;&lt;br /&gt;
         j       toggle latency(LS NABWV)/jitter(DR AGJMXI) stats&lt;br /&gt;
         c &amp;lt;n&amp;gt;   report cycle n, default n=infinite&lt;br /&gt;
         i &amp;lt;n&amp;gt;   set the ping interval to n seconds, default n=1&lt;br /&gt;
         f &amp;lt;n&amp;gt;   set the initial time-to-live(ttl), default n=1&lt;br /&gt;
         m &amp;lt;n&amp;gt;   set the max time-to-live, default n= # of hops&lt;br /&gt;
         s &amp;lt;n&amp;gt;   set the packet size to n or random(n&amp;lt;0)&lt;br /&gt;
         b &amp;lt;c&amp;gt;   set ping bit pattern to c(0..255) or random(c&amp;lt;0)&lt;br /&gt;
         Q &amp;lt;t&amp;gt;   set ping packet&#039;s TOS to t&lt;br /&gt;
         u       switch between ICMP ECHO and UDP datagrams&lt;br /&gt;
         y       switching IP info&lt;br /&gt;
         z       toggle ASN info on/off&lt;br /&gt;
         q       exit&lt;br /&gt;
&lt;br /&gt;
BUGS&lt;br /&gt;
       Some modern routers give a lower priority to ICMP ECHO packets than to other network traffic.  Consequently, the reliability of these routers reported by mtr will be significantly lower than the ac‐&lt;br /&gt;
       tual reliability of these routers.&lt;br /&gt;
&lt;br /&gt;
CONTACT INFORMATION&lt;br /&gt;
       For the latest version, see the mtr web page at ⟨http://www.bitwizard.nl/mtr/⟩&lt;br /&gt;
&lt;br /&gt;
       For patches, bug reports, or feature requests, please open an issue on GitHub at: ⟨https://github.com/traviscross/mtr⟩.&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       mtr-packet(8), traceroute(8), ping(8), socket(7), TCP/IP Illustrated (Stevens, ISBN 0201633469).&lt;br /&gt;
&lt;br /&gt;
mtr                                                                                                  0.95                                                                                              MTR(8)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=HYDRA_-_Manpage&amp;diff=1102</id>
		<title>HYDRA - Manpage</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=HYDRA_-_Manpage&amp;diff=1102"/>
		<updated>2026-01-17T10:03:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== hydra --help ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
HYDRA(1)                                                                                                   General Commands Manual                                                                                                   HYDRA(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       hydra - a very fast network logon cracker which supports many different services&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       hydra&lt;br /&gt;
        [[[-l LOGIN|-L FILE] [-p PASS|-P FILE|-x OPT -y]] | [-C FILE]]&lt;br /&gt;
        [-e nsr] [-u] [-f|-F] [-M FILE] [-o FILE] [-b FORMAT]&lt;br /&gt;
        [-t TASKS] [-T TASKS] [-w TIME] [-W TIME] [-m OPTIONS] [-s PORT]&lt;br /&gt;
        [-c TIME] [-S] [-O] [-4|6] [-I] [-vV] [-d]&lt;br /&gt;
        server service [OPTIONS]&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       Hydra is a parallelized login cracker which supports numerous protocols to attack. New modules are easy to add, beside that, it is flexible and very fast.&lt;br /&gt;
&lt;br /&gt;
       This tool gives researchers and security consultants the possibility to show how easy it would be to gain unauthorized access from remote to a system.&lt;br /&gt;
&lt;br /&gt;
       Currently this tool supports:&lt;br /&gt;
              adam6500  afp  asterisk  cisco cisco-enable cvs firebird ftp ftps http[s]-{head|get|post} http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-{cram|digest}md5][s] mssql mysql(v4) mysql5 ncp&lt;br /&gt;
              nntp oracle oracle-listener oracle-sid pcanywhere pcnfs pop3[s] postgres rdp radmin2 redis rexec rlogin rpcap rsh rtsp s7-300 sapr3 sip smb smtp[s] smtp-enum snmp socks5 ssh sshkey svn teamspeak telnet[s] vmauthd vnc xmpp&lt;br /&gt;
&lt;br /&gt;
       For most protocols SSL is supported (e.g. https-get, ftp-ssl, etc.).  If not all necessary libraries are found during compile time, your available services will be less.  Type &amp;quot;hydra&amp;quot; to see what is available.&lt;br /&gt;
&lt;br /&gt;
Options&lt;br /&gt;
       target a target to attack, can be an IPv4 address, IPv6 address or DNS name.&lt;br /&gt;
&lt;br /&gt;
       service&lt;br /&gt;
              a service to attack, see the list of protocols available&lt;br /&gt;
&lt;br /&gt;
       OPTIONAL SERVICE PARAMETER&lt;br /&gt;
              Some modules have optional or mandatory options. type &amp;quot;hydra -U &amp;lt;servicename&amp;gt;&amp;quot;&lt;br /&gt;
               to get help on on the options of a service.&lt;br /&gt;
&lt;br /&gt;
       -R     restore a previously aborted session. Requires a hydra.restore file was written. Options are restored, but can be changed by setting them after -R on the command line&lt;br /&gt;
&lt;br /&gt;
       -S     connect via SSL&lt;br /&gt;
&lt;br /&gt;
       -O     use old SSL v2 and v3&lt;br /&gt;
&lt;br /&gt;
       -s PORT&lt;br /&gt;
              if the service is on a different default port, define it here&lt;br /&gt;
&lt;br /&gt;
       -l LOGIN&lt;br /&gt;
              or -L FILE login with LOGIN name, or load several logins from FILE&lt;br /&gt;
&lt;br /&gt;
       -p PASS&lt;br /&gt;
              or -P FILE try password PASS, or load several passwords from FILE&lt;br /&gt;
&lt;br /&gt;
       -x min:max:charset&lt;br /&gt;
              generate passwords from min to max length. charset can contain 1&lt;br /&gt;
               for numbers, a for lowcase and A for upcase characters.&lt;br /&gt;
               Any other character is added is put to the list.&lt;br /&gt;
                 Example: 1:2:a1%.&lt;br /&gt;
                 The generated passwords will be of length 1 to 2 and contain&lt;br /&gt;
                 lowcase letters, numbers and/or percent signs and dots.&lt;br /&gt;
&lt;br /&gt;
       -y     disable use of symbols in -x bruteforce, see above&lt;br /&gt;
&lt;br /&gt;
       -e nsr additional checks, &amp;quot;n&amp;quot; for null password, &amp;quot;s&amp;quot; try login as pass, &amp;quot;r&amp;quot; try the reverse login as pass&lt;br /&gt;
&lt;br /&gt;
       -C FILE&lt;br /&gt;
              colon separated &amp;quot;login:pass&amp;quot; format, instead of -L/-P options&lt;br /&gt;
&lt;br /&gt;
       -u     by default Hydra checks all passwords for one login and then tries the next login. This option loops around the passwords, so the first password is tried on all logins, then the next password.&lt;br /&gt;
&lt;br /&gt;
       -f     exit after the first found login/password pair (per host if -M)&lt;br /&gt;
&lt;br /&gt;
       -F     exit after the first found login/password pair for any host (for usage with -M)&lt;br /&gt;
&lt;br /&gt;
       -M FILE&lt;br /&gt;
              server list for parallel attacks, one entry per line&lt;br /&gt;
&lt;br /&gt;
       -o FILE&lt;br /&gt;
              write found login/password pairs to FILE instead of stdout&lt;br /&gt;
&lt;br /&gt;
       -b FORMAT&lt;br /&gt;
              specify the format for the -o FILE: text(default), json, jsonv1&lt;br /&gt;
&lt;br /&gt;
       -t TASKS&lt;br /&gt;
              run TASKS number of connects in parallel (default: 16)&lt;br /&gt;
&lt;br /&gt;
       -m OPTIONS&lt;br /&gt;
              module specific options. See hydra -U &amp;lt;module&amp;gt; what options are available.&lt;br /&gt;
&lt;br /&gt;
       -w TIME&lt;br /&gt;
              defines the max wait time in seconds for responses (default: 32)&lt;br /&gt;
&lt;br /&gt;
       -W TIME&lt;br /&gt;
              defines a wait time between each connection a task performs. This usually only makes sense if a low task number is used, .e.g -t 1&lt;br /&gt;
&lt;br /&gt;
       -c TIME&lt;br /&gt;
              the wait time in seconds per login attempt over all threads (-t 1 is recommended) This usually only makes sense if a low task number is used, .e.g -t 1&lt;br /&gt;
&lt;br /&gt;
       -4 / -6&lt;br /&gt;
              prefer IPv4 (default) or IPv6 addresses&lt;br /&gt;
&lt;br /&gt;
       -v / -V&lt;br /&gt;
              verbose mode / show login+pass combination for each attempt&lt;br /&gt;
&lt;br /&gt;
       -d     debug mode&lt;br /&gt;
&lt;br /&gt;
       -I     ignore an existing restore file (don&#039;t wait 10 seconds)&lt;br /&gt;
&lt;br /&gt;
       -h, --help&lt;br /&gt;
              Show summary of options.&lt;br /&gt;
&lt;br /&gt;
SEE ALSO&lt;br /&gt;
       xhydra(1), pw-inspector(1).&lt;br /&gt;
       The programs are documented fully by van Hauser &amp;lt;vh@thc.org&amp;gt;&lt;br /&gt;
&lt;br /&gt;
AUTHOR&lt;br /&gt;
       hydra was written by van Hauser / THC &amp;lt;vh@thc.org&amp;gt; Find new versions or report bugs at https://github.com/vanhauser-thc/thc-hydra&lt;br /&gt;
&lt;br /&gt;
       This manual page was written by Daniel Echeverry &amp;lt;epsilon77@gmail.com&amp;gt;, for the Debian project (and may be used by others).&lt;br /&gt;
&lt;br /&gt;
                                                                                                                  01/01/2023                                                                                                         HYDRA(1)&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=JITSI-MEET_-_Base_Documentation&amp;diff=1101</id>
		<title>JITSI-MEET - Base Documentation</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=JITSI-MEET_-_Base_Documentation&amp;diff=1101"/>
		<updated>2026-01-17T09:46:23Z</updated>

		<summary type="html">&lt;p&gt;Admin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Jitsi Meet Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Configuration Files ===&lt;br /&gt;
Jitsi Meet is configured through several key files. These files control the behavior of Jitsi Meet, such as authentication, video quality, and the user interface.&lt;br /&gt;
&lt;br /&gt;
Key configuration files:&lt;br /&gt;
* **/etc/jitsi/meet/{your-domain}-config.js**: This file contains the main configuration options for Jitsi Meet, including UI settings, authentication, and video quality.&lt;br /&gt;
* **/etc/jitsi/jicofo/sip-communicator.properties**: Configuration file for Jicofo (Jitsi Conference Focus), which handles conference management.&lt;br /&gt;
* **/etc/jitsi/videobridge/config**: This configuration file is for the Jitsi Videobridge, which handles media routing for video conferences.&lt;br /&gt;
&lt;br /&gt;
Example configuration in `/etc/jitsi/meet/{your-domain}-config.js`:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
var config = {&lt;br /&gt;
    hosts: {&lt;br /&gt;
        domain: &#039;meet.example.com&#039;,&lt;br /&gt;
        muc: &#039;conference.meet.example.com&#039;,&lt;br /&gt;
        focus: &#039;focus.meet.example.com&#039;&lt;br /&gt;
    },&lt;br /&gt;
    testing: {&lt;br /&gt;
        enableFirefoxHD: true&lt;br /&gt;
    },&lt;br /&gt;
    resolution: 720,&lt;br /&gt;
    enableDisplayName: true&lt;br /&gt;
};&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example configures basic domain names and enables 720p resolution.&lt;br /&gt;
&lt;br /&gt;
=== Configuring Jitsi Videobridge ===&lt;br /&gt;
The Jitsi Videobridge is responsible for routing video and audio streams during a conference. It can be configured through `/etc/jitsi/videobridge/config`.&lt;br /&gt;
&lt;br /&gt;
Example to set the number of video channels:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/jitsi/videobridge/config&lt;br /&gt;
VIDEOBRIDGE_MAX_CHANNELS=50&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This increases the number of video channels the bridge can handle.&lt;br /&gt;
&lt;br /&gt;
== Security Concepts ==&lt;br /&gt;
&lt;br /&gt;
=== SSL/TLS Encryption ===&lt;br /&gt;
Jitsi Meet should be configured to use SSL/TLS to secure communication between clients and the server. Let&#039;s Encrypt can be used for automatic certificate generation.&lt;br /&gt;
&lt;br /&gt;
To enable SSL on Jitsi Meet:&lt;br /&gt;
* Configure Nginx to use SSL for the domain hosting Jitsi Meet.&lt;br /&gt;
* Use the `certbot` tool to automatically fetch and renew SSL certificates from Let&#039;s Encrypt.&lt;br /&gt;
&lt;br /&gt;
Example configuration for Nginx (found in `/etc/nginx/sites-available/{your-domain}`):&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
server {&lt;br /&gt;
    listen 443 ssl;&lt;br /&gt;
    server_name meet.example.com;&lt;br /&gt;
    ssl_certificate /etc/letsencrypt/live/meet.example.com/fullchain.pem;&lt;br /&gt;
    ssl_certificate_key /etc/letsencrypt/live/meet.example.com/privkey.pem;&lt;br /&gt;
    ...&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configures SSL for the domain and ensures secure HTTPS connections.&lt;br /&gt;
&lt;br /&gt;
=== Authentication and User Management ===&lt;br /&gt;
For added security, Jitsi Meet can integrate with various authentication systems (e.g., JWT, LDAP, OAuth).&lt;br /&gt;
&lt;br /&gt;
To enable JWT authentication, configure the `prosody` server (XMPP server used by Jitsi) to validate tokens:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/prosody/conf.d/meet.example.com.cfg.lua&lt;br /&gt;
VirtualHost &amp;quot;meet.example.com&amp;quot;&lt;br /&gt;
    authentication = &amp;quot;token&amp;quot;&lt;br /&gt;
    app_id = &amp;quot;your-app-id&amp;quot;&lt;br /&gt;
    app_secret = &amp;quot;your-app-secret&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows how to configure token authentication by setting an app ID and secret.&lt;br /&gt;
&lt;br /&gt;
=== Protecting Jitsi Meet Services ===&lt;br /&gt;
To protect your Jitsi Meet services, such as Jicofo and Jitsi Videobridge, make sure only authorized clients can connect.&lt;br /&gt;
&lt;br /&gt;
Configure firewalls to block unnecessary ports and limit service exposure. For example, only allow HTTPS traffic on port 443 and disable other unused ports.&lt;br /&gt;
&lt;br /&gt;
Example of firewall rules with `ufw`:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ufw allow 443/tcp&lt;br /&gt;
ufw allow 10000:20000/udp&lt;br /&gt;
ufw enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This opens only the necessary ports for Jitsi Meet (HTTPS and media ports).&lt;br /&gt;
&lt;br /&gt;
== Advanced Configurations ==&lt;br /&gt;
&lt;br /&gt;
=== Configuring Jitsi Meet for Large Conferences ===&lt;br /&gt;
Jitsi Meet supports scaling to handle larger conferences by adjusting video resolution and load balancing between multiple Videobridges.&lt;br /&gt;
&lt;br /&gt;
You can configure the maximum number of participants per conference in the config file:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/jitsi/meet/{your-domain}-config.js&lt;br /&gt;
constraints: {&lt;br /&gt;
    video: {&lt;br /&gt;
        height: {&lt;br /&gt;
            ideal: 720,&lt;br /&gt;
            max: 1080&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    maxParticipants: 50&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sets a maximum of 50 participants per conference and limits video height to 1080p.&lt;br /&gt;
&lt;br /&gt;
=== Multi-Server Setup ===&lt;br /&gt;
For better performance and scalability, you can deploy multiple Jitsi Videobridges across different machines. This requires configuring load balancing.&lt;br /&gt;
&lt;br /&gt;
First, set up a load balancer (such as HAProxy) to distribute traffic to multiple Videobridges. Then, configure each Videobridge with the same domain in `/etc/jitsi/videobridge/config`.&lt;br /&gt;
&lt;br /&gt;
Example of HAProxy configuration:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
frontend https_front&lt;br /&gt;
    bind *:443&lt;br /&gt;
    default_backend videobridge_back&lt;br /&gt;
&lt;br /&gt;
backend videobridge_back&lt;br /&gt;
    balance roundrobin&lt;br /&gt;
    server bridge1 192.168.1.2:8080 check&lt;br /&gt;
    server bridge2 192.168.1.3:8080 check&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configures HAProxy to distribute requests between `bridge1` and `bridge2`.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Jitsi Meet Not Loading or Connecting ===&lt;br /&gt;
If Jitsi Meet is not loading or connecting:&lt;br /&gt;
* Check if the Nginx server is running and serving SSL correctly.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status nginx&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Ensure that the correct ports are open for HTTPS and media (ports 443, 10000–20000 UDP).&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ufw status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify if the necessary Jitsi services are running (Jicofo, Videobridge). &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status jicofo&lt;br /&gt;
systemctl status jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If services are not running, try restarting them:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl restart jicofo&lt;br /&gt;
systemctl restart jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Audio and Video Issues ===&lt;br /&gt;
If participants are experiencing audio or video problems:&lt;br /&gt;
* Check if your Videobridges are properly configured and running.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify network connectivity for the UDP media ports (10000–20000).&lt;br /&gt;
* Ensure that the client’s browser is supported (e.g., Chrome or Firefox).&lt;br /&gt;
&lt;br /&gt;
For more detailed troubleshooting:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
journalctl -u jicofo&lt;br /&gt;
journalctl -u jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These logs can provide insights into errors or misconfigurations.&lt;br /&gt;
&lt;br /&gt;
=== Performance Issues ===&lt;br /&gt;
If you notice performance issues, such as lag or high CPU usage:&lt;br /&gt;
* Monitor server resources:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
top&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify server load and traffic using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
netstat -tuln&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* If running a multi-server setup, check load balancing and resource allocation between Videobridges.&lt;br /&gt;
&lt;br /&gt;
Example of checking CPU usage for Jitsi services:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ps aux | grep jitsi&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* https://jitsi.org/&lt;br /&gt;
* https://github.com/jitsi/jitsi-meet&lt;br /&gt;
* https://jitsi.github.io/handbook/&lt;br /&gt;
* https://community.jitsi.org/&lt;br /&gt;
* https://jitsi.org/downloads/&lt;br /&gt;
* https://github.com/jitsi/jicofo&lt;br /&gt;
* https://github.com/jitsi/jitsi-videobridge&lt;br /&gt;
* https://www.digitalocean.com/community/tutorials/how-to-set-up-jitsi-meet-video-conferencing-on-ubuntu-20-04&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
	<entry>
		<id>https://it-arts.net/index.php?title=JITSI-MEET_-_Base_Documentation&amp;diff=1100</id>
		<title>JITSI-MEET - Base Documentation</title>
		<link rel="alternate" type="text/html" href="https://it-arts.net/index.php?title=JITSI-MEET_-_Base_Documentation&amp;diff=1100"/>
		<updated>2026-01-17T09:46:04Z</updated>

		<summary type="html">&lt;p&gt;Admin: Created page with &amp;quot;Category:Wiki  &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;  == Jitsi Meet Configuration ==  === Configuration Files === Jitsi Meet is configured through several key files. These files control the behavior of Jitsi Meet, such as authentication, video quality, and the user interface.  Key configuration files: * **/etc/jitsi/meet/{your-domain}-config.js**: This file contains the main configuration options for Jitsi Meet, including UI set...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Wiki]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Jitsi Meet Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== Configuration Files ===&lt;br /&gt;
Jitsi Meet is configured through several key files. These files control the behavior of Jitsi Meet, such as authentication, video quality, and the user interface.&lt;br /&gt;
&lt;br /&gt;
Key configuration files:&lt;br /&gt;
* **/etc/jitsi/meet/{your-domain}-config.js**: This file contains the main configuration options for Jitsi Meet, including UI settings, authentication, and video quality.&lt;br /&gt;
* **/etc/jitsi/jicofo/sip-communicator.properties**: Configuration file for Jicofo (Jitsi Conference Focus), which handles conference management.&lt;br /&gt;
* **/etc/jitsi/videobridge/config**: This configuration file is for the Jitsi Videobridge, which handles media routing for video conferences.&lt;br /&gt;
&lt;br /&gt;
Example configuration in `/etc/jitsi/meet/{your-domain}-config.js`:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
var config = {&lt;br /&gt;
    hosts: {&lt;br /&gt;
        domain: &#039;meet.example.com&#039;,&lt;br /&gt;
        muc: &#039;conference.meet.example.com&#039;,&lt;br /&gt;
        focus: &#039;focus.meet.example.com&#039;&lt;br /&gt;
    },&lt;br /&gt;
    testing: {&lt;br /&gt;
        enableFirefoxHD: true&lt;br /&gt;
    },&lt;br /&gt;
    resolution: 720,&lt;br /&gt;
    enableDisplayName: true&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example configures basic domain names and enables 720p resolution.&lt;br /&gt;
&lt;br /&gt;
=== Configuring Jitsi Videobridge ===&lt;br /&gt;
The Jitsi Videobridge is responsible for routing video and audio streams during a conference. It can be configured through `/etc/jitsi/videobridge/config`.&lt;br /&gt;
&lt;br /&gt;
Example to set the number of video channels:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/jitsi/videobridge/config&lt;br /&gt;
VIDEOBRIDGE_MAX_CHANNELS=50&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This increases the number of video channels the bridge can handle.&lt;br /&gt;
&lt;br /&gt;
== Security Concepts ==&lt;br /&gt;
&lt;br /&gt;
=== SSL/TLS Encryption ===&lt;br /&gt;
Jitsi Meet should be configured to use SSL/TLS to secure communication between clients and the server. Let&#039;s Encrypt can be used for automatic certificate generation.&lt;br /&gt;
&lt;br /&gt;
To enable SSL on Jitsi Meet:&lt;br /&gt;
* Configure Nginx to use SSL for the domain hosting Jitsi Meet.&lt;br /&gt;
* Use the `certbot` tool to automatically fetch and renew SSL certificates from Let&#039;s Encrypt.&lt;br /&gt;
&lt;br /&gt;
Example configuration for Nginx (found in `/etc/nginx/sites-available/{your-domain}`):&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
server {&lt;br /&gt;
    listen 443 ssl;&lt;br /&gt;
    server_name meet.example.com;&lt;br /&gt;
    ssl_certificate /etc/letsencrypt/live/meet.example.com/fullchain.pem;&lt;br /&gt;
    ssl_certificate_key /etc/letsencrypt/live/meet.example.com/privkey.pem;&lt;br /&gt;
    ...&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configures SSL for the domain and ensures secure HTTPS connections.&lt;br /&gt;
&lt;br /&gt;
=== Authentication and User Management ===&lt;br /&gt;
For added security, Jitsi Meet can integrate with various authentication systems (e.g., JWT, LDAP, OAuth).&lt;br /&gt;
&lt;br /&gt;
To enable JWT authentication, configure the `prosody` server (XMPP server used by Jitsi) to validate tokens:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/prosody/conf.d/meet.example.com.cfg.lua&lt;br /&gt;
VirtualHost &amp;quot;meet.example.com&amp;quot;&lt;br /&gt;
    authentication = &amp;quot;token&amp;quot;&lt;br /&gt;
    app_id = &amp;quot;your-app-id&amp;quot;&lt;br /&gt;
    app_secret = &amp;quot;your-app-secret&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This example shows how to configure token authentication by setting an app ID and secret.&lt;br /&gt;
&lt;br /&gt;
=== Protecting Jitsi Meet Services ===&lt;br /&gt;
To protect your Jitsi Meet services, such as Jicofo and Jitsi Videobridge, make sure only authorized clients can connect.&lt;br /&gt;
&lt;br /&gt;
Configure firewalls to block unnecessary ports and limit service exposure. For example, only allow HTTPS traffic on port 443 and disable other unused ports.&lt;br /&gt;
&lt;br /&gt;
Example of firewall rules with `ufw`:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ufw allow 443/tcp&lt;br /&gt;
ufw allow 10000:20000/udp&lt;br /&gt;
ufw enable&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This opens only the necessary ports for Jitsi Meet (HTTPS and media ports).&lt;br /&gt;
&lt;br /&gt;
== Advanced Configurations ==&lt;br /&gt;
&lt;br /&gt;
=== Configuring Jitsi Meet for Large Conferences ===&lt;br /&gt;
Jitsi Meet supports scaling to handle larger conferences by adjusting video resolution and load balancing between multiple Videobridges.&lt;br /&gt;
&lt;br /&gt;
You can configure the maximum number of participants per conference in the config file:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
# In /etc/jitsi/meet/{your-domain}-config.js&lt;br /&gt;
constraints: {&lt;br /&gt;
    video: {&lt;br /&gt;
        height: {&lt;br /&gt;
            ideal: 720,&lt;br /&gt;
            max: 1080&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    maxParticipants: 50&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This sets a maximum of 50 participants per conference and limits video height to 1080p.&lt;br /&gt;
&lt;br /&gt;
=== Multi-Server Setup ===&lt;br /&gt;
For better performance and scalability, you can deploy multiple Jitsi Videobridges across different machines. This requires configuring load balancing.&lt;br /&gt;
&lt;br /&gt;
First, set up a load balancer (such as HAProxy) to distribute traffic to multiple Videobridges. Then, configure each Videobridge with the same domain in `/etc/jitsi/videobridge/config`.&lt;br /&gt;
&lt;br /&gt;
Example of HAProxy configuration:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
frontend https_front&lt;br /&gt;
    bind *:443&lt;br /&gt;
    default_backend videobridge_back&lt;br /&gt;
&lt;br /&gt;
backend videobridge_back&lt;br /&gt;
    balance roundrobin&lt;br /&gt;
    server bridge1 192.168.1.2:8080 check&lt;br /&gt;
    server bridge2 192.168.1.3:8080 check&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This configures HAProxy to distribute requests between `bridge1` and `bridge2`.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Jitsi Meet Not Loading or Connecting ===&lt;br /&gt;
If Jitsi Meet is not loading or connecting:&lt;br /&gt;
* Check if the Nginx server is running and serving SSL correctly.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status nginx&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Ensure that the correct ports are open for HTTPS and media (ports 443, 10000–20000 UDP).&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ufw status&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify if the necessary Jitsi services are running (Jicofo, Videobridge). &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status jicofo&lt;br /&gt;
systemctl status jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If services are not running, try restarting them:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl restart jicofo&lt;br /&gt;
systemctl restart jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Audio and Video Issues ===&lt;br /&gt;
If participants are experiencing audio or video problems:&lt;br /&gt;
* Check if your Videobridges are properly configured and running.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
systemctl status jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify network connectivity for the UDP media ports (10000–20000).&lt;br /&gt;
* Ensure that the client’s browser is supported (e.g., Chrome or Firefox).&lt;br /&gt;
&lt;br /&gt;
For more detailed troubleshooting:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
journalctl -u jicofo&lt;br /&gt;
journalctl -u jitsi-videobridge2&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These logs can provide insights into errors or misconfigurations.&lt;br /&gt;
&lt;br /&gt;
=== Performance Issues ===&lt;br /&gt;
If you notice performance issues, such as lag or high CPU usage:&lt;br /&gt;
* Monitor server resources:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
top&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* Verify server load and traffic using:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
netstat -tuln&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* If running a multi-server setup, check load balancing and resource allocation between Videobridges.&lt;br /&gt;
&lt;br /&gt;
Example of checking CPU usage for Jitsi services:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
ps aux | grep jitsi&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Useful Links ==&lt;br /&gt;
&lt;br /&gt;
* https://jitsi.org/&lt;br /&gt;
* https://github.com/jitsi/jitsi-meet&lt;br /&gt;
* https://jitsi.github.io/handbook/&lt;br /&gt;
* https://community.jitsi.org/&lt;br /&gt;
* https://jitsi.org/downloads/&lt;br /&gt;
* https://github.com/jitsi/jicofo&lt;br /&gt;
* https://github.com/jitsi/jitsi-videobridge&lt;br /&gt;
* https://www.digitalocean.com/community/tutorials/how-to-set-up-jitsi-meet-video-conferencing-on-ubuntu-20-04&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;[https://it-arts.net/index.php/Category:Wiki Return to Wiki Index]&#039;&#039;&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>