基礎網絡操作命令(11 個命令)


telnet命令

telnet命令:使用 TELNET 協議遠程登錄。

ssh命令

ssh命令:openssh套件中的客戶端連接工具,可以給予ssh加密協議實現安全的遠程登錄服務器。

格式:

​ ssh [-1246AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
​ [-D [bind_address:]port] [-E log_file] [-e escape_char]
​ [-F configfile] [-I pkcs11] [-i identity_file]
​ [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec]
​ [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
​ [-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]
​ [user@]hostname [command]

參數:

參數 作用
-1 強制使用ssh協議版本1;
-2 強制使用ssh協議版本2;
-4 強制使用IPv4地址;
-6 強制使用IPv6地址;
-A 開啟認證代理連接轉發功能;
-a 關閉認證代理連接轉發功能;
-b 使用本機指定地址作為對應連接的源ip地址;
-C 請求壓縮所有數據;
-F 指定ssh指令的配置文件;
-f 后台執行ssh指令;
-g 允許遠程主機連接主機的轉發端口;
-i 指定身份文件;
-l 指定連接遠程服務器登錄用戶名;
-N 不執行遠程指令;
-o 指定配置選項;
-p 指定遠程服務器上的端口;
-q 靜默模式
-X 開啟X11轉發功能;
-x 關閉X11轉發功能;
-y 開啟信任X11轉發功能。

scp命令

scp命令:安全復制(遠程文件復制程序)

格式:

scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 ... [[user@]host2:]file2

參數:

參數 作用
-1 強制使用ssh協議版本1;
-2 強制使用ssh協議版本2;
-4 使用ipv4
-6 使用ipv6
-C 以批處理模式運行;
-C 使用壓縮;
-F 指定ssh配置文件;
-l 指定寬帶限制;
-o 指定使用的ssh選項;
-P 指定遠程主機的端口號
-p 保留文件的最后修改時間,最后訪問時間和權限模式;
-q 不顯示復制進度;
-r 以遞歸方式復制。

wget命令

wget命令:非交互式網絡下載程序。

格式: wget [option]... [URL]...

參數:

參數 作用
-O 輸出文件
--limit-rate=xxxk 限速
-c 繼續執行上次終端的任務;
-b 進行后台的方式運行wget;
--tries=xx 增加重試次數
--spider 測試下載鏈接

ping命令

ping命令:

測試主機之間網絡的連通性。執行ping指令會使用ICMP傳輸協議,發出要求回應的信息,若遠端主機的網絡功能沒有問題,就會回應該信息,因而得知該主機運作正常。

格式:

​ ping [-aAbBdDfhLnOqrRUvV46] [-c count] [-F flowlabel] [-i interval] [-I
​ interface] [-l preload] [-m mark] [-M pmtudisc_option] [-N node‐
​ info_option] [-w deadline] [-W timeout] [-p pattern] [-Q tos] [-s pack‐
​ etsize] [-S sndbuf] [-t ttl] [-T timestamp option] [hop ...] destina‐
​ tion

參數:

參數 作用
-d 使用Socket的SO_DEBUG功能;
-c 設置完成要求回應的次數;
-i<間隔秒數> 指定收發信息的間隔時間;
-I<網絡界面> 使用指定的網絡界面送出數據包;
-l<前置載入> 設置在送出要求信息之前,先行發出的數據包;
-n 只輸出數值;
-p<范本樣式> 設置填滿數據包的范本樣式;
-q 不顯示指令執行過程,開頭和結尾的相關信息除外;
-r 忽略普通的Routing Table,直接將數據包送到遠端主機上;
-R 記錄路由過程;
-s<數據包大小> 設置數據包的大小;
-t<存活數值> 設置存活數值TTL的大小;
-v 詳細顯示指令的執行過程。
-f 極限檢測;

route命令

route命令:顯示/操作IP路由表

格式:

 route [-CFvnNee] [-A family |-4|-6]

 route  [-v] [-A family |-4|-6] add [-net|-host] target [netmask Nm] [gw
          Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod]  [dyn]
          [reinstate] [[dev] If]

 route  [-v] [-A family |-4|-6] del [-net|-host] target [gw Gw] [netmask
          Nm] [metric N] [[dev] If]

 route  [-V] [--version] [-h] [--help]

參數:

參數 作用
-n 不執行DNS反向查找,直接顯示數字形式的IP地址;

例子:

查看路由
[root@xxx ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.141.2   0.0.0.0         UG    100    0        0 ens32
192.168.141.0   0.0.0.0         255.255.255.0   U     100    0        0 ens32

[root@xxx ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens32
192.168.141.0   0.0.0.0         255.255.255.0   U     100    0        0 ens32


添加網關/設置網關:
route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0    #增加一條到達244.0.0.0的路由。

屏蔽一條路由:
route add -net 224.0.0.0 netmask 240.0.0.0 reject     #增加一條屏蔽的路由,目的地址為224.x.x.x將被拒絕。

刪除路由記錄:
route del -net 224.0.0.0 netmask 240.0.0.0
route del -net 224.0.0.0 netmask 240.0.0.0 reject

刪除和添加設置默認網關:
route del default gw 192.168.120.240
route add default gw 192.168.120.240

ifconfig命令

ifconfig命令:配置網絡接口

格式:

​ ifconfig [-v] [-a] [-s] [interface]
​ ifconfig [-v] interface [aftype] options | address ...

例子

# 啟動關閉指定網卡:
ifconfig eth0 up
ifconfig eth0 down
ifconfig eth0 up為啟動網卡eth0,ifconfig eth0 down為關閉網卡eth0。ssh登陸linux服務器操作要小心,關閉了就不能開啟了,除非你有多網卡。

# 為網卡配置和刪除IPv6地址:
ifconfig eth0 add 33ffe:3240:800:1005::2/64    #為網卡eth0配置IPv6地址
ifconfig eth0 del 33ffe:3240:800:1005::2/64    #為網卡eth0刪除IPv6地址

# 用ifconfig修改MAC地址:
ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE

# 配置IP地址:
[root@localhost ~]# ifconfig eth0 192.168.2.10
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0
[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255

# 啟用和關閉arp協議:
ifconfig eth0 arp    #開啟網卡eth0 的arp協議
ifconfig eth0 -arp   #關閉網卡eth0 的arp協議

# 設置最大傳輸單元:
ifconfig eth0 mtu 1500    #設置能通過的最大數據包大小為 1500 bytes

ifup命令

ifup命令:啟動接口

例子:

[root@xxx ~]# ifup lo

ifdown命令

ifdown命令:關閉接口

例子:

[root@xxx ~]# ifdown lo
[root@xxx ~]# ifconfig
ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.141.181  netmask 255.255.255.0  broadcast 192.168.141.255
        inet6 fe80::fd97:63ea:9541:3370  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:fa:81:2f  txqueuelen 1000  (Ethernet)
        RX packets 518359  bytes 683586851 (651.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 75568  bytes 7344212 (7.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

netstat命令

netstat命令:打印網絡連接,路由表,接口統計信息、偽裝連接和多播成員關系

參數:

-a或--all:顯示所有連線中的Socket;
-A<網絡類型>或--<網絡類型>:列出該網絡類型連線中的相關地址;
-c或--continuous:持續列出網絡狀態;
-C或--cache:顯示路由器配置的快取信息;
-e或--extend:顯示網絡其他相關信息;
-F或--fib:顯示FIB;
-g或--groups:顯示多重廣播功能群組組員名單;
-h或--help:在線幫助;
-i或--interfaces:顯示網絡界面信息表單;
-l或--listening:顯示監控中的服務器的Socket;
-M或--masquerade:顯示偽裝的網絡連線;
-n或--numeric:直接使用ip地址,而不通過域名服務器;
-N或--netlink或--symbolic:顯示網絡硬件外圍設備的符號連接名稱;
-o或--timers:顯示計時器;
-p或--programs:顯示正在使用Socket的程序識別碼和程序名稱;
-r或--route:顯示Routing Table;
-s或--statistice:顯示網絡工作信息統計表;
-t或--tcp:顯示TCP傳輸協議的連線狀況;
-u或--udp:顯示UDP傳輸協議的連線狀況;
-v或--verbose:顯示指令執行過程;
-V或--version:顯示版本信息;
-w或--raw:顯示RAW傳輸協議的連線狀況;
-x或--unix:此參數的效果和指定"-A unix"參數相同;
--ip或--inet:此參數的效果和指定"-A inet"參數相同。

例子:

# 列出所有端口 (包括監聽和未監聽的)

netstat -a     #列出所有端口
netstat -at    #列出所有tcp端口
netstat -au    #列出所有udp端口    

# 列出所有處於監聽狀態的 Sockets
netstat -l        #只顯示監聽端口
netstat -lt       #只列出所有監聽 tcp 端口
netstat -lu       #只列出所有監聽 udp 端口
netstat -lx       #只列出所有監聽 UNIX 端口

# 顯示每個協議的統計信息

netstat -s   顯示所有端口的統計信息
netstat -st   顯示TCP端口的統計信息
netstat -su   顯示UDP端口的統計信息

# 在netstat輸出中顯示 PID 和進程名稱
netstat -pt

#IP和TCP分析
# 查看連接某服務端口最多的的IP地址:
netstat -ntu | grep :80 | awk '{print $5}' | cut -d: -f1 | awk '{++ip[$1]} END {for(i in ip) print ip[i],"\t",i}' | sort -nr

# TCP各種狀態列表:
netstat -nt | grep -e 127.0.0.1 -e 0.0.0.0 -e ::: -v | awk '/^tcp/ {++state[$NF]} END {for(i in state) print i,"\t",state[i]}'

# 查看phpcgi進程數,如果接近預設值,說明不夠用,需要增加:
netstat -anpo | grep "php-cgi" | wc -l

ss命令

ss命令:另一個用於研究套接字的實用程序

格式:ss [options] [ FILTER ]

參數:

-h:顯示幫助信息;
-V:顯示指令版本信息;
-n:不解析服務名稱,以數字方式顯示;
-a:顯示所有的套接字;
-l:顯示處於監聽狀態的套接字;
-o:顯示計時器信息;
-m:顯示套接字的內存使用情況;
-p:顯示使用套接字的進程信息;
-i:顯示內部的TCP信息;
-4:只顯示ipv4的套接字;
-6:只顯示ipv6的套接字;
-t:只顯示tcp套接字;
-u:只顯示udp套接字;
-d:只顯示DCCP套接字;
-w:僅顯示RAW套接字;
-x:僅顯示UNIX域套接字。

例子:

# 顯示所有UDP Sockets
[root@xxx ~]# ss -u -a
State       Recv-Q Send-Q Local Address:Port                 Peer Address:Port   
UNCONN      0      0      127.0.0.1:323                      *:*                 
UNCONN      0      0          *:bootpc                   *:*
UNCONN      0      0        ::1:323                     :::*


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM