㈠ ifconfig中看到網卡的RX中,有很多dropped,這是什麼原因
你說的是ipconfig吧,還是我理解錯了,難道你說的是linux內核並沒有載入該協議的處理函數,導致的dropped欄位增多嗎
㈡ linux下怎麼判斷網卡異常網卡狀態
linux查看網路鏈接狀況命令 netstat 參數如下: -a 顯示所有socket,包括正在監聽的。 -c 每隔1秒就重新顯示一遍,直到用戶中斷它。 -i 顯示所有網路介面的信息,格式同「ifconfig -e」。 -n 以網路IP地址代替名稱,顯示出網路連接情形。
㈢ 如何在Linux下統計高速網路中的流量
在本文中我們介紹一種簡單的Shell 腳本,它可以監控網路流量而且不依賴於緩慢的libpcap庫。這些腳本支持Gb以上規模的高速網路介面,如果你對「匯聚型」的網路流量感興趣的話,它們可統計每個網路介面上的流量。
腳本主要是基於sysfs虛擬文件系統,這是由內核用來將設備或驅動相關的信息輸出到用戶空間的一種機制。網路介面的相關分析數據會通過「/sys/class/net/<ethX>/statistics」輸出。
舉個例子,eth0的網口上分析報告會輸出到這些文件中:
/sys/class/net/eth0/statistics/rx_packets: 收到的數據包數據
/sys/class/net/eth0/statistics/tx_packets: 傳輸的數據包數量
/sys/class/net/eth0/statistics/rx_bytes: 接收的位元組數
/sys/class/net/eth0/statistics/tx_bytes: 傳輸的位元組數
/sys/class/net/eth0/statistics/rx_dropped: 收包時丟棄的數據包
/sys/class/net/eth0/statistics/tx_dropped: 發包時丟棄的數據包
這些數據會根據內核數據發生變更的時候自動刷新。因此,你可以編寫一系列的腳本進行分析並計算流量統計。下面就是這樣的腳本(感謝 joemiller 提供)。第一個腳本是統計每秒數據量,包含接收(RX)或發送(TX)。而後面的則是一個描述網路傳輸中的接收(RX)發送(TX)帶寬。這些腳本中安裝不需要任何的工具。
測量網口每秒數據包:
㈣ Linux怎麼設置IP,子網掩碼和網關
linux一般使用ifconfig命令修改linux主機的ip、網關或子網掩碼。 1.命令格式: ifconfig [網路設備] [參數] 2.命令功能: ifconfig 命令用來查看和配置網路設備。當網路環境發生改變時可通過此命令對網路進行相應的配置。 3.命令參數: up 啟動指定網路設備/網卡。 down 關閉指定網路設備/網卡。該參數可以有效地阻止通過指定介面的IP信息流,如果想永久地關閉一個介面,我們還需要從核心路由表中將該介面的路由信息全部刪除。 arp 設置指定網卡是否支持ARP協議。 -promisc 設置是否支持網卡的promiscuous模式,如果選擇此參數,網卡將接收網路中發給它所有的數據包 -allmulti 設置是否支持多播模式,如果選擇此參數,網卡將接收網路中所有的多播數據包 -a 顯示全部介面信息 -s 顯示摘要信息(類似於 netstat -i) add 給指定網卡配置IPv6地址 del 刪除指定網卡的IPv6地址 <硬體地址> 配置網卡最大的傳輸單元 mtu<位元組數> 設置網卡的最大傳輸單元 (bytes) netmask<子網掩碼> 設置網卡的子網掩碼。掩碼可以是有前綴0x的32位十六進制數,也可以是用點分開的4個十進制數。如果不打算將網路分成子網,可以不管這一選項;如果要使用子網,那麼請記住,網路中每一個系統必須有相同子網掩碼。 tunel 建立隧道 dstaddr 設定一個遠端地址,建立點對點通信 -broadcast<地址> 為指定網卡設置廣播協議 -pointtopoint<地址> 為網卡設置點對點通訊協議 multicast 為網卡設置組播標志 address 為網卡設置IPv4地址 txqueuelen<長度> 為網卡設置傳輸列隊的長度 4.使用實例: 實例1:顯示網路設備信息(激活狀態的) 命令: ifconfig 輸出: [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:50:56:BF:26:20 inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0 TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:68 errors:0 dropped:0 overruns:0 frame:0 TX packets:68 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB) 說明: eth0 表示第一塊網卡, 其中 HWaddr 表示網卡的物理地址,可以看到目前這個網卡的物理地址(MAC地址)是 00:50:56:BF:26:20 inet addr 用來表示網卡的IP地址,此網卡的 IP地址是 192.168.120.204,廣播地址, Bcast:192.168.120.255,掩碼地址Mask:255.255.255.0 lo 是表示主機的回壞地址,這個一般是用來測試一個網路程序,但又不想讓區域網或外網的用戶能夠查看,只能在此台主機上運行和查看所用的網路介面。比如把 HTTPD伺服器的指定到回壞地址,在瀏覽器輸入 127.0.0.1 就能看到你所架WEB網站了。但只是您能看得到,區域網的其它主機或用戶無從知道。 第一行:連接類型:Ethernet(乙太網)HWaddr(硬體mac地址) 第二行:網卡的IP地址、子網、掩碼 第三行:UP(代表網卡開啟狀態)RUNNING(代表網卡的網線被接上)MULTICAST(支持組播)MTU:1500(最大傳輸單元):1500位元組 第四、五行:接收、發送數據包情況統計 第七行:接收、發送數據位元組數統計信息。 實例2:啟動關閉指定網卡 命令: ifconfig eth0 up ifconfig eth0 down 輸出: 說明: ifconfig eth0 up 為啟動網卡eth0 ;ifconfig eth0 down 為關閉網卡eth0。ssh登陸linux伺服器操作要小心,關閉了就不能開啟了,除非你有多網卡。 實例3:為網卡配置和刪除IPv6地址 命令: ifconfig eth0 add 33ffe:3240:800:1005::2/64 ifconfig eth0 del 33ffe:3240:800:1005::2/64 輸出: 說明: ifconfig eth0 add 33ffe:3240:800:1005::2/64 為網卡eth0配置IPv6地址; ifconfig eth0 add 33ffe:3240:800:1005::2/64 為網卡eth0刪除IPv6地址; 練習的時候,ssh登陸linux伺服器操作要小心,關閉了就不能開啟了,除非你有多網卡。 實例4:用ifconfig修改MAC地址 命令: ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE 輸出: [root@localhost ~]# ifconfig eth0 down //關閉網卡 [root@localhost ~]# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE //修改MAC地址 [root@localhost ~]# ifconfig eth0 up //啟動網卡 [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:AA:BB:CC:DD:EE inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0 TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:68 errors:0 dropped:0 overruns:0 frame:0 TX packets:68 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB) [root@localhost ~]# ifconfig eth0 hw ether 00:50:56:BF:26:20 //關閉網卡並修改MAC地址 [root@localhost ~]# ifconfig eth0 up //啟動網卡 [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:50:56:BF:26:20 inet addr:192.168.120.204 Bcast:192.168.120.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0 TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:596390239 (568.7 MiB) TX bytes:2886956 (2.7 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:68 errors:0 dropped:0 overruns:0 frame:0 TX packets:68 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2856 (2.7 KiB) TX bytes:2856 (2.7 KiB) 說明: 實例5:配置IP地址 命令: 輸出: [root@localhost ~]# ifconfig eth0 192.168.120.56 [root@localhost ~]# ifconfig eth0 192.168.120.56 netmask 255.255.255.0 [root@localhost ~]# ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255 說明: ifconfig eth0 192.168.120.56 給eth0網卡配置IP地:192.168.120.56 ifconfig eth0 192.168.120.56 netmask 255.255.255.0 給eth0網卡配置IP地址:192.168.120.56 ,並加上子掩碼:255.255.255.0 ifconfig eth0 192.168.120.56 netmask 255.255.255.0 broadcast 192.168.120.255 /給eth0網卡配置IP地址:192.168.120.56,加上子掩碼:255.255.255.0,加上個廣播地址: 192.168.120.255 實例6:啟用和關閉ARP協議 命令: ifconfig eth0 arp ifconfig eth0 -arp 輸出: [root@localhost ~]# ifconfig eth0 arp [root@localhost ~]# ifconfig eth0 -arp 說明: ifconfig eth0 arp 開啟網卡eth0 的arp協議; ifconfig eth0 -arp 關閉網卡eth0 的arp協議; 實例7:設置最大傳輸單元 命令: ifconfig eth0 mtu 1500 輸出: [root@localhost ~]# ifconfig eth0 mtu 1480 [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:50:56:BF:26:1F inet addr:192.168.120.203 Bcast:192.168.120.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1480 Metric:1 RX packets:8712395 errors:0 dropped:0 overruns:0 frame:0 TX packets:36631 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:597062089 (569.4 MiB) TX bytes:2643973 (2.5 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:9973 errors:0 dropped:0 overruns:0 frame:0 TX packets:9973 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:518096 (505.9 KiB) TX bytes:518096 (505.9 KiB) [root@localhost ~]# ifconfig eth0 mtu 1500 [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:50:56:BF:26:1F inet addr:192.168.120.203 Bcast:192.168.120.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:8712548 errors:0 dropped:0 overruns:0 frame:0 TX packets:36685 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:597072333 (569.4 MiB) TX bytes:2650581 (2.5 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:9973 errors:0 dropped:0 overruns:0 frame:0 TX packets:9973 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:518096 (505.9 KiB) TX bytes:518096 (505.9 KiB) [root@localhost ~]# 說明: 設置能通過的最大數據包大小為 1500 bytes 備註:用ifconfig命令配置的網卡信息,在網卡重啟後機器重啟後,配置就不存在。要想將上述的配置信息永遠的存的電腦里,那就要修改網卡的配置文件了。
㈤ 配置LINUX的IP命令
通過配置文件配置LINUX的IP命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置文件如下:
ONBOOT=yes
BOOTPROTO=none:表示不使用dhcp服務,如果是手動配置靜態的ip地址,BOOTPROTO的值可以為none或者static。
IPADDR=192.168.1.66:表示設置IP地址。
NETMASK=255.255.255.0:表示設置子網掩碼。
GATEWAY=192.168.1.1: 表示設置網關。
DNS1=192.168.1.1:表示設置首選DNS伺服器,DNS有自己的配置文件/etc/resolv.conf,在這里設置DNS,就是把它寫入了DNS的配置文件/etc/resolv.conf。
然後,執行service network restart,重啟網路服務配置文件生效即可。
(5)linuxdropped擴展閱讀:
通過ifconfig命令配置LINUX的IP命令:
命令名稱:ifconfig
基本語法:ifconfig [網卡標識] [IP地址]
英文原意:interface configuration
執行許可權:root
功能描述:查看或臨時配置網卡信息
說明: ifconfig 命令主要是用來查看網卡的配置信息,因為用它來配置網卡的IP地址時,只會臨時生效(Linux伺服器重啟後就會失效)。
這種配置ip的方式只能設置IP和子網掩碼,估只適合內網(區域網)使用。
如果想連通外網,還必須設置網關和DNS。
㈥ linux系統多個網卡,一直出現dropped,並且改過rx,tx的值,還是不行,請問這是為什麼
看看 /var/log/messages 里有沒有什麼敏感信息?
這種問題一般不太好解釋,原因很多,比如網路質量問題、網卡驅動問題、網卡晶元問題、網路中數據包問題等,都會導致這個現象的發生
最簡單的排查方法:插一塊獨立網卡對比測試一下,若沒事了可以初步鎖定在網卡晶元問題和網卡驅動問題上
㈦ 如何記錄Linux iptables防火牆Dropped Packets的日誌
iptables的日誌(log)由syslogd記錄
創建一個DROP_PKTS的chain
然後,在DROP_PKTS chain裡面添加如下rule:
iptables -A DROP_PKTS -m limit --limit 10/s -j LOG --log-level 4 --log-prefix \"[DROP]\"
iptables -A DROP_PKTS -j DROP
在對你想要DROP並且log的packet,添加如下規則(比如drop從blog.uouo123.com來的packet):
iptables -I INPUT -s blog.uouo123.com -j DROP_PKTS
㈧ linux 下用ifconfig 查看網卡狀態,發現eth0有RX有drop包,這是否說明內網硬體不正常.或者存在arp攻擊
ifconfig 顯示接收丟包,一般來說是驅動申請不到足夠的內存來存放收到的包
接收丟包統計在數據結構net_device_stats的下面這個欄位中
unsigned long rx_dropped; /* no space in linux buffers */
所以既不是硬體問題(否則根本收不到包),也不是arp攻擊(驅動不管上層協議類型的),有可能是內存不夠,但是不能確定,樓主可以查一下你網卡的驅動程序確認下
㈨ linux 怎麼查看已經kill掉的進程
我以監控一個進程:「vmstat」命令的進程為例子。#!/bin/bashPROSS=`ps-el|grepvmstat|awk'{print$14}'`STAT=`ps-el|grepvmstat|awk'{print$2}'`PID=`ps-el|grepvmstat|awk'{print$4}'`if[$PROSS]thenif[$STAT="Z"]thenecho"$PROSShasdead"echo"Now,killingit"kill-9$PIDecho"Now,restart"vmstat25>>/tmp/vmstat.txt&elseecho"$PROSSisrunninghealthy"fielseecho"Theprogrammhasdropped"echo"Now,restart"vmstat25>>/tmp/vmstat.txt&fi
㈩ 怎樣分析linux的性能指標
一、處理器參數
這是一個很簡單的參數,它直觀的描述了每個CPU的利用率。在xSeries架構中,如果CPU的利用率長時間的超過80%,就可能是出現了處理器的瓶頸。
Runable processes
這個值描述了正在准備被執行的進程,在一個持續時間里這個值不應該超過物理CPU數量的10倍,否則CPU方面就可能存在瓶頸。
Blocked
描述了那些因為等待I/O操作結束而不能被執行的進程,Blocked可能指出你正面臨I/O瓶頸。
User time
描述了處理用戶進程的百分比,包括nice time。如果User time的值很高,說明系統性能用在處理實際的工作。
System time
描述了CPU花費在處理內核操作包括IRQ和軟體中斷上面的百分比。如果system time很高說明系統可能存在網路或者驅動堆棧方面的瓶頸。一個系統通常只花費很少的時間去處理內核的操作。
Idle time
描述了CPU空閑的百分比。
Nice time
描述了CPU花費在處理re-nicing進程的百分比。
Context switch
系統中線程之間進行交換的數量。
Waiting
CPU花費在等待I/O操作上的總時間,與blocked相似,一個系統不應該花費太多的時間在等待I/O操作上,否則你應該進一步檢測I/O子系統是否存在瓶頸。
Interrupts
Interrupts值包括硬Interrupts和軟Interrupts,硬Interrupts會對系統性能帶
來更多的不利影響。高的Interrupts值指出系統可能存在一個軟體的瓶頸,可能是內核或者驅動程序。注意Interrupts值中包括CPU時鍾導
致的中斷(現代的xServer系統每秒1000個Interrupts值)。
二、內存參數
Free memory
相比其他操作系統,Linux空閑內存的值不應該做為一個性能參考的重要指標,因為就像我們之前提到過的,Linux內核會分配大量沒有被使用的內存作為文件系統的緩存,所以這個值通常都比較小。
Swap usage
這個值描述了已經被使用的swap空間。Swap
usage只表示了Linux管理內存的有效性。對識別內存瓶頸來說,Swap In/Out才是一個比較又意義的依據,如果Swap
In/Out的值長期保持在每秒200到300個頁面通常就表示系統可能存在內存的瓶頸。
Buffer and cache
這個值描述了為文件系統和塊設備分配的緩存。注意在Red Hat Enterprise Linux
3和更早一些的版本中,大部分空閑內存會被分配作為緩存使用。在Red Hat Enterprise Linux
4以後的版本中,你可以通過修改/proc/sys/vm中的page_cache_tuning來調整空閑內存中作為緩存的數量。
Slabs
描述了內核使用的內存空間,注意內核的頁面是不能被交換到磁碟上的。
Active versus inactive memory
提供了關於系統內存的active內存信息,Inactive內存是被kswapd守護進程交換到磁碟上的空間。
三、網路參數
Packets received and sent
這個參數表示了一個指定網卡接收和發送的數據包的數量。
Bytes received and sent
這個參數表示了一個指定網卡接收和發送的數據包的位元組數。
Collisions per second
這個值提供了發生在指定網卡上的網路沖突的數量。持續的出現這個值代表在網路架構上出現了瓶頸,而不是在伺服器端出現的問題。在正常配置的網路中沖突是非常少見的,除非用戶的網路環境都是由hub組成。
Packets dropped
這個值表示了被內核丟掉的數據包數量,可能是因為防火牆或者是網路緩存的缺乏。
Overruns
Overruns表達了超出網路介面緩存的次數,這個參數應該和packets dropped值聯繫到一起來判斷是否存在在網路緩存或者網路隊列過長方面的瓶頸。
Errors
這個值記錄了標志為失敗的幀的數量。這個可能由錯誤的網路配置或者部分網線損壞導致,在銅口千兆乙太網環境中部分網線的損害是影響性能的一個重要因素。
四、塊設備參數
Iowait
CPU等待I/O操作所花費的時間。這個值持續很高通常可能是I/O瓶頸所導致的。
Average queue length
I/O請求的數量,通常一個磁碟隊列值為2到3為最佳情況,更高的值說明系統可能存在I/O瓶頸。
Average wait
響應一個I/O操作的平均時間。Average wait包括實際I/O操作的時間和在I/O隊列里等待的時間。
Transfers per second
描述每秒執行多少次I/O操作(包括讀和寫)。Transfers per second的值與kBytes per second結合起來可以幫助你估計系統的平均傳輸塊大小,這個傳輸塊大小通常和磁碟子系統的條帶化大小相符合可以獲得最好的性能。
Blocks read/write per second
這個值表達了每秒讀寫的blocks數量,在2.6內核中blocks是1024bytes,在早些的內核版本中blocks可以是不同的大小,從512bytes到4kb。
Kilobytes per second read/write
按照kb為單位表示讀寫塊設備的實際數據的數量。