導航:首頁 > 程序命令 > linux命令tcp

linux命令tcp

發布時間:2022-08-27 05:59:26

『壹』 linux中tcpmp命令怎麼用

tcpmp
-i: 後跟網卡名;
host:後跟主機IP;

-a —— 將網路地址和廣播地址轉變成名字;
-c —— 指定抓取的數據包數量;
-n:不把主機IP轉為主機名;
-r:指定從某個文件中讀取數據包;
-e:指定將監聽到的數據包鏈路層的信息列印出來,包括源mac和目的mac,以及網路層的協議;
-nn:不把ip、協議、埠等轉為名字;
-T —— 將監聽到的包直接解釋為指定的類型的報文,常見的類型有rpc (遠程過程調用)和snmp(簡單網路管理協議);
-w —— 直接將包寫入文件中,並不分析和列印出來;
and:條件篩選,包含兩個地址;
or:條件篩選,兩個之中的一個;
src:後跟起始地址;
dst:後跟目的地址;

『貳』 linux下如何測試TCP並發數量

查看httpd進程數:
Linux命令:
ps
-ef
|
grep
httpd
|
wc
-l
返回結果示例:1388
表示伺服器能夠處理1388個並發請求,這個值伺服器可根據負載情況自動調整。
查看伺服器的並發請求數及其TCP連接狀態:
Linux命令:
netstat
-n
|
awk
'/^tcp/
{++S[$NF]}
END
{for(a
in
S)
print
a,
S[a]}'
返回結果示例:
LAST_ACK
5
SYN_RECV
30
ESTABLISHED
1597
FIN_WAIT1
51
FIN_WAIT2
504
TIME_WAIT
1057
其中的SYN_RECV表示正在等待處理的請求數;ESTABLISHED表示正常數據傳輸狀態;TIME_WAIT表示處理完畢,等待超時結束的請求數。

『叄』 Linux裡面tcp和tcp6區別是什麼

指代不同
TCP:是一種面向連接的、可靠的、基於位元組流的傳輸層通信協議。
TCP6:是互聯網工程任務組設計的用於替代ipv4的下一代ip協議。
功能不同
TCP:適應支持多網路應用的分層協議層次結構,連接到不同但互連的計算機通信網路的主計算機中的成對進程之間依靠TCP提供可靠的通信服務。
TCP6:ipv6具有更大的地址空間,ipv4中規定ip長度為32,最大地址個數為2^32,IPv6中ip地址的長度為128,即最大地址個數為2^128。與32位地址空間對比,其地址空間增加了2^128-2^32個。
特點不同
TCP:TCP應該能夠在從硬線連接到分組交換或電路交換網路的各種通信系統之上操作。
TCP6:不僅能解決網路地址資源數量的問題,而且也解決了多種接入設備連入互聯網的障礙。

『肆』 如何在linux下用tcp傳輸文件

一. FTP 說明 linux 系統下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 還有一個是proftp(Profession ftp)。 我們這里也是簡單的說明下vsftp的配置。 vsftp提供3種遠程的登錄方式: (1)匿名登錄方式 就是不需要用戶名,密碼。就能登錄到伺服器電腦裡面 (2)本地用戶方式 需要帳戶名和密碼才能登錄。而且,這個帳戶名和密碼,都是在你linux系統裡面,已經有的用戶。 (3)虛擬用戶方式 同樣需要用戶名和密碼才能登錄。但是和上面的區別就是,這個用戶名和密碼,在你linux系統中是沒有的(沒有該用戶帳號) 二. Vsftp的安裝配置 2.1 安裝 vsftp 的安裝包,可以在安裝里找到。 用yum 安裝過程也很簡單。 安裝命令:yum install vsftpd 2.2. 相關命令 2.2.1 啟動與關閉 [root@singledb ~]# service vsftpd start Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# service vsftpd stop Shutting down vsftpd: [ OK ] [root@singledb ~]# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd start Starting vsftpd for vsftpd: [FAILED] [root@singledb ~]# /etc/init.d/vsftpd stop Shutting down vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd status vsftpd (pid 3931) is running... [root@singledb ~]# 2.2.2. 其他命令 --查看vsftpd 啟動狀態 [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root@singledb ~]# chkconfig vsftpd on [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off 這里看到,默認情況下從2到5設置為on了。2到5是多用戶級別。 這個對應的是linux不同的運行級別。 我們也可以加level 選項來指定: [root@singledb ~]# chkconfig --level 0 vsftpd on [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:on 1:off 2:on 3:on 4:on 5:on 6:off 我們看到0已經設置為on了。 我們可以使用man chkconfig 來查看幫助: --level levels Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, --level 35 specifies runlevels 3 and 5. 傳統的init 定義了7個運行級(run level),每一個級別都代表系統應該補充運行的某些特定服務: (1)0級是完全關閉系統的級別 (2)1級或者S級代表單用戶模式 (3)2-5 級 是多用戶級別 (4)6級 是 重新引導的級別 (1)查看防火牆 我一般都是把系統的防火牆關閉了。 因為開了會有很多限制。 [root@singledb ~]# /etc/init.d/iptables status Table: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination 1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24 Chain OUTPUT (policy ACCEPT) num target prot opt source destination Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67 4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67 Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable Chain OUTPUT (policy ACCEPT) num target prot opt source destination You have new mail in /var/spool/mail/root --添加開放21號埠: [root@singledb ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT [root@singledb ~]# /etc/init.d/iptables status Table: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination 1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24 Chain OUTPUT (policy ACCEPT) num target prot opt source destination Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 4 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67 5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67 Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable Chain OUTPUT (policy ACCEPT) num target prot opt source destination --保存配置 [root@singledb ~]# /etc/rc.d/init.d/iptables save Saving firewall rules to /etc/sysconfig/iptables: [ OK ] --重啟防火牆: [root@singledb ~]# service iptables {startstoprestart} (2)查看關閉selinux [root@singledb ~]# sestatus SELinux status: disabled 我這里在安裝操作系統的時候就關閉了selinux,如果沒有關閉,可以修改如下文件來關閉: [root@singledb ~]# cat /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted [root@singledb ~]# 保存退出並重啟系統reboot 三. FTP配置文件 FTP 安裝好之後,在/etc/vsftpd/目錄下會有如下文件: [root@singledb ~]# cd /etc/vsftpd/ [root@singledb vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh [root@singledb vsftpd]# vsftpd.conf: 主配置文件 ftpusers: 指定哪些用戶不能訪問FTP伺服器 user_list: 指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。 [root@singledb vsftpd]# cat user_list # vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. 我們過濾掉#的注釋後,查看一下vsftpd.conf 文件: [root@singledb ftp]# cat /etc/vsftpd/vsftpd.conf grep -v '^#'; anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES pam_service_name=vsftpd userlist_enable=yes tcp_wrappers=YES 至於這些參數的意思,在注釋里有詳細的說明。 我們可以在vsftpd.conf 文件設置如下參數: (1)ftpd_banner=welcome to ftp service :設置連接伺服器後的歡迎信息 (2)idle_session_timeout=60 :限制遠程的客戶機連接後,所建立的控制連接,在多長時間沒有做任何的操作就會中斷(秒) (3)data_connection_timeout=120 :設置客戶機在進行數據傳輸時,設置空閑的數據中斷時間 (4)accept_timeout=60 設置在多長時間後自動建立連接 (5)connect_timeout=60 設置數據連接的最大激活時間,多長時間斷開,為別人所使用; (6)max_clients=200 指明伺服器總的客戶並發連接數為200 (7)max_per_ip=3 指明每個客戶機的最大連接數為3 (8)local_max_rate=50000(50kbytes/sec) 本地用戶最大傳輸速率限制 (9)anon_max_rate=30000匿名用戶的最大傳輸速率限制 (10)pasv_min_port=埠 (11)pasv-max-prot=埠號 定義最大與最小埠,為0表示任意埠;為客戶端連接指明埠; (12)listen_address=IP地址 設置ftp服務來監聽的地址,客戶端可以用哪個地址來連接; (13)listen_port=埠號 設置FTP工作的埠號,默認的為21 (14)chroot_local_user=YES 設置所有的本地用戶可以chroot (15)chroot_local_user=NO 設置指定用戶能夠chroot (16)chroot_list_enable=YES (17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用戶才能執行 ) (18)local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄; (19)chroot_local_user=yes/no 是否鎖定本地系統帳號用戶主目錄(所有);鎖定後,用戶只能訪問用戶的主目錄/home/user,不能利用cd命令向上轉;只能向下; (20)chroot_list_enable=yes/no 鎖定指定文件中用戶的主目錄(部分),文件:/chroot_list_file=path 中指定; (21)userlist_enable=YES/NO 是否載入用戶列表文件; (22)userlist_deny=YES 表示上面所載入的用戶是否允許拒絕登錄; (23)userlist_file=/etc/vsftpd/user_list 列表文件 限制IP 訪問FTP: #vi /etc/hosts.allow vsftpd:192.168.5.128:DENY 設置該IP地址不可以訪問ftp服務 FTP 訪問時間限制: #cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd #vi /etc/xinetd.d/vsftpd/ 修改 disable = no access_time = hour:min-hour:min (添加配置訪問的時間限制(註:與vsftpd.conf中listen=NO相對應) 例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp ftp的配置基本上只有這些了。 默認情況下,ftp根目錄是/var/ftp。 如果要修改這個目錄位置,可以更改/etc/passwd 文件: [root@singledb ftp]# cat /etc/passwd grep ftp ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin 創建一個用戶來訪問FTP,並指定該用戶的FTP 目錄: [root@singledb u02]# useradd -d /u02/qsftp qs [root@singledb u02]# passwd qs Changing password for user qs. New UNIX password: BAD PASSWORD: it is WAY too short Retype new UNIX password: passwd: all authentication tokens updated successfully. 這里指定的是/u02/qsftp 這個目錄,要注意個目錄的許可權。 更改用戶不能telnet,只能ftp: usermod -s /sbin/nologin username //用戶只能ftp,不能telnet usermod -s /sbin/bash username //用戶恢復正常 禁止用戶ssh登陸 useradd username -s /bin/false 更改用戶主目錄: usermod -d /bbb username //把用戶的主目錄定為/bbb 然後用qs這個用戶就可以訪問了。 以上只是一些簡單的設置。 在用戶許可權這塊還有很多內容可以研究。 比如特定用戶的特定許可權。 安全性等。 以後在研究了。

『伍』 如何修改linux tcp

Linux系統的TCP埠范圍是可以修改的,適當的調整TCP埠范圍以滿足個人需求,那麼具體要如何修改TCP埠范圍呢?不妨通過實例來了解下吧。

在啟動自定義服務的時候,希望使用8370埠,卻發現埠已經被nginx或node佔用了,無法啟動。但是lvs又已經申請了,改埠的話比較麻煩。所以可以修改下
/proc/sys/net/ipv4/ip_local_port_range
參數,使tcp協議分配的埠從一個比較大的范圍開始啟用,這樣,node或nginx就不會佔用較小的埠了。

代碼如下

echo 『32768 61000』 》 /proc/sys/net/ipv4/ip_local_port_range

補充:臨時埠范圍調整

你能使用netstat命令來顯示有多少個連接進入這個狀態:[若是生產環境下,最好先進行測試,然後考慮一個埠的合適范圍]

代碼如下

shell》netstat -n | grep TIME_WAIT

shell》cat /proc/sys/net/ipv4/ip_local_port_range

32768 61000

如果需要修改 echo 「start-number
end-number」,start-number和end-number是0-65536埠號范圍內的數,,0-1024最好不要用,通常是熟知埠,如果是專門的代理伺服器的話,很多熟知埠沒有使用,當然可以考慮!

不要忘記將echo命令加到系統啟動腳本中,以使機器每一次重啟後都生效

『陸』 linux系統中ss命令tcp的部分分別代表什麼

跟你心想的中ss命令TCP的部分分別代表就是一個TCP協議而已。

『柒』 關於linux tcpmp命令

用簡單的話來定義tcpmp,就是:mp the traffic on a network,根據使用者的定義對網路上的數據包進行截獲的包分析工具。 tcpmp可以將網路中傳送的數據包的「頭」完全截獲下來提供分析。它支持針對網路層、協議、主機、網路或埠的過濾,並提供and、or、not等邏輯語句來幫助你去掉無用的信息。

實用命令實例
默認啟動
tcpmp
普通情況下,直接啟動tcpmp將監視第一個網路介面上所有流過的數據包。

監視指定網路介面的數據包
tcpmp -i eth1
如果不指定網卡,默認tcpmp只會監視第一個網路介面,一般是eth0,下面的例子都沒有指定網路介面。

監視指定主機的數據包
列印所有進入或離開sundown的數據包.
tcpmp host sundown
也可以指定ip,例如截獲所有210.27.48.1 的主機收到的和發出的所有的數據包
tcpmp host 210.27.48.1
列印helios 與 hot 或者與 ace 之間通信的數據包
tcpmp host helios and \( hot or ace \)
截獲主機210.27.48.1 和主機210.27.48.2 或210.27.48.3的通信
tcpmp host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \)
列印ace與任何其他主機之間通信的IP 數據包, 但不包括與helios之間的數據包.
tcpmp ip host ace and not helios
如果想要獲取主機210.27.48.1除了和主機210.27.48.2之外所有主機通信的ip包,使用命令:
tcpmp ip host 210.27.48.1 and ! 210.27.48.2
截獲主機hostname發送的所有數據
tcpmp -i eth0 src host hostname
監視所有送到主機hostname的數據包
tcpmp -i eth0 dst host hostname

監視指定主機和埠的數據包
如果想要獲取主機210.27.48.1接收或發出的telnet包,使用如下命令
tcpmp tcp port 23 and host 210.27.48.1
對本機的udp 123 埠進行監視 123 為ntp的服務埠
tcpmp udp port 123

監視指定網路的數據包
列印本地主機與Berkeley網路上的主機之間的所有通信數據包(nt: ucb-ether, 此處可理解為'Berkeley網路'的網路地址,此表達式最原始的含義可表達為: 列印網路地址為ucb-ether的所有數據包)
tcpmp net ucb-ether
列印所有通過網關snup的ftp數據包(注意, 表達式被單引號括起來了, 這可以防止shell對其中的括弧進行錯誤解析)
tcpmp 'gateway snup and (port ftp or ftp-data)'
列印所有源地址或目標地址是本地主機的IP數據包
(如果本地網路通過網關連到了另一網路, 則另一網路並不能算作本地網路.(nt: 此句翻譯曲折,需補充).localnet 實際使用時要真正替換成本地網路的名字)
tcpmp ip and not net localnet

『捌』 linux系統用什麼命令刪除tcp阻塞

recv是socket編程中最常用的函數之一,在阻塞狀態的recv有時候會返回不同的值,而對於錯誤值也有相應的錯誤碼,分別對應不同的狀態,下面是我針對常見的幾種網路狀態的簡單總結。 首先阻塞接收的recv有時候會返回0,這僅在對端已經關閉TCP連接時...

『玖』 linux和windows有沒有發送tcp協議消息的命令行程序

下面大概分幾個方面進行羅列:

Linux要包含

[cpp]
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <arpa/inet.h>
等頭文件,而windows下則是包含
[cpp]
#include <winsock.h>


Linux中socket為整形,Windows中為一個SOCKET。
Linux中關閉socket為close,Windows中為closesocket。
Linux中有變數socklen_t,Windows中直接為int。
因為linux中的socket與普通的fd一樣,所以可以在TCP的socket中,發送與接收數據時,直接使用read和write。而windows只能使用recv和send。
設置socet選項,比如設置socket為非阻塞的。Linux下為

[cpp]
flag = fcntl (fd, F_GETFL);
fcntl (fd, F_SETFL, flag | O_NONBLOCK);
,Windows下為
[cpp]
flag = 1;
ioctlsocket (fd, FIONBIO, (unsigned long *) &flag);

當非阻塞socket的TCP連接正在進行時,Linux的錯誤號為EINPROGRESS,Windows的錯誤號為WSAEWOULDBLOCK。

file
Linux下面,文件換行是"\n",而windows下面是"\r\n"。
Linux下面,目錄分隔符是"/",而windows下面是"\"。
Linux與Windows下面,均可以使用stat調用來查詢文件信息。但是,Linux只支持2G大小,而Windows只支持4G大小。為了支持更大的文件查詢,可以在Linux環境下加

_FILE_OFFSET_BITS=64定義,在Windows下面使用_stat64調用,入參為struct __stat64。
Linux中可根據stat的st_mode判斷文件類型,有S_ISREG、S_ISDIR等宏。Windows中沒有,需要自己定義相應的宏,如

[cpp]
#define S_ISREG(m) (((m) & 0170000) == (0100000))
#define S_ISDIR(m) (((m) & 0170000) == (0040000))
Linux中刪除文件是unlink,Windows中為DeleteFile。

time

Linux中,time_t結構是長整形。而windows中,time_t結構是64位的整形。如果要在windows始time_t為32位無符號整形,可以加宏定義,_USE_32BIT_TIME_T。
Linux中,sleep的單位為秒。Windows中,Sleep的單位為毫秒。即,Linux下sleep (1),在Windows環境下則需要Sleep (1000)。
Windows中的timecmp宏,不支持大於等於或者小於等於。
Windows中沒有struct timeval結構的加減宏可以使用,需要手動定義:

閱讀全文

與linux命令tcp相關的資料

熱點內容
有一部電影主角是彈吉他的 瀏覽:761
主角是種馬穿越到動漫小說 瀏覽:392
免費看電影無廣告,無彈窗的網 瀏覽:610
sublimephp錯誤提示 瀏覽:913
螢石雲伺服器安裝路徑 瀏覽:643
pm3讀國產加密卡 瀏覽:507
解放戰爭片老電影完整版 瀏覽:989
提取應用app安裝包什麼意思 瀏覽:843
公司伺服器地址怎麼看 瀏覽:678
華融證券app在哪裡申購新債 瀏覽:556
和孩子一起學編程pdf 瀏覽:219
可讀的文件夾怎麼刪除 瀏覽:496
qt編譯器配置錯了怎麼改 瀏覽:611
佛教電視電影大全 瀏覽:317
李采覃男科醫生是什麼電影 瀏覽:751
周韻茹彼時曾相伴 瀏覽:977
如何訪問ftp伺服器的文件 瀏覽:121
java兩年經驗工資 瀏覽:363
生活中的瑪麗倫理片主演名字圖片 瀏覽:37