Linux網卡攻略

來源:互聯網
上載者:User
文章目錄
  • 網卡驅動
  • 網卡設定檔
  • 配置網卡資訊
  • 幾個常用的命令
  • mii-tool 的用法
  • Ip
  • 網卡的負載測試工具

Linux系統下的網卡不像Windows那麼支援完善,有時需要自己動手,本文總結了相關的驅動安裝、命令列工具和測試網卡的負載等內容。

網卡驅動

http://downloadcenter.intel.com/

安裝包中README有詳細說明,主要就是如下幾個命令

Make install

modprobe e1000e 或者 insmod e1000

rmmod e1000e; modprobe e1000e

網卡設定檔

對於網卡資訊的配置通常包括:配置IP地址、子網路遮罩和網關。網卡資訊儲存在網卡設定檔中。網卡設定檔位於/etc/sysconfig/network-scripts目錄下。一塊網卡對應一個網卡設定檔,設定檔命名規則:

ifcfg-網卡類型以及網卡的序號

由於乙太網路卡類型是eth,網卡的序號從0開始,所以第一塊網卡的設定檔名稱為ifcfg-eth0,第二塊網卡為ifcfg-eth1,以此類推。

網卡設定檔中常用設定檔名的還以如下:

DEVICE=eth0,定義該網卡的識別名稱

BOOTPROTO=dhcp,啟動該網卡的識別名稱。

static/none:代表固定的IP地址;bootp/dhcp:通過BOOTP或DHCP協議取得IP地址。

HWADDR=00:02:B3:0B:64:22,該網卡的MAC地址。

ONBOOT=yes,啟動network服務時,是否啟用該網卡。當RedHat系統啟動network服務時,network服務一次讀取儲存於/etc/sysconfig/network-scripts/目錄下所有網卡的設定檔。如果網卡設定檔的ONBOOT設定為yes,則network服務就會調用ifup命令啟動該網卡;如果網卡的設定檔的ONBOOT參數為no,network會跳過啟動這個網卡的工作。

TYPE=Ethernet,網卡的類型。

USERCTL=no,是否允許普通使用者啟動或者停止該網卡。

IPV6INIT=no,是否在該網卡上啟動IPV6的功能。

PEERDNS=yes,是否允許網卡在啟動時向DHCP伺服器查詢DNS資訊,並自動覆蓋/etc/resolv.conf設定檔。

以下配置項用於指定該網卡的靜態IP地址,此時BOOTPROTO必須為static或者none。

IPADDR=192.168.1.55,靜態方式指定網卡的IP地址。

NETMASK=255.255.255.0,定義該網卡的子網路遮罩。

MTU=1500,設定網卡的MAC幀最大傳輸單位大小。

GATEWAY=192.168.1.1,設定網路的預設閘道。

DNS1=192.168.128.5,指定主要的DNS伺服器位址。

DNS2=192.168.128.6,指定備用的DNS伺服器位址。

配置網卡資訊

配置網卡資訊可以直接修改網卡設定檔中的相關內容,但是這種方法對使用者的要求比較高。在RedHat Enterprise Linux5中常用於設定IP地址的三個命令,分別是:system-config-network、setup和ifconfig。其中ifconfig設定IP地址的方法將在常用命令部分中介紹。

1system-config-network命令

在命令提示行下輸入system-config-network命令將會啟動可視化網路設定介面(對於新手這個方式比較簡單)

2setup設定網卡資訊

在命令列下輸入setup命令後將會進入系統設定介面,然後選擇網卡設定進入網卡設定介面(很多系統都可以使用setup命令設定,運用比較廣)

3ifconfig網卡常用命令

ifconfig命令的功能比較強大,可以用來查看和設定網卡資訊。

a.查看網卡資訊

命令文法:ifconfig [參數]

參數說明:

無參數:顯示當前活動的網卡

- a:顯示系統中所有網卡的配置資訊

網卡裝置名稱:顯示指定網卡的配置資訊

eg:查看eth0網卡資訊:#ifconfig eth0

b.設定IP地址

命令文法:ifconfig 網卡裝置名稱 IP地址 netmask 子網路遮罩

(註:ifconfig命令設定的IP地址即時生效,但是重啟機器後,IP地址又回複到原IP地址,所以ifconfig命令只能用於設定臨時的IP地址)

eg:ifconfig eth0 192.168.168.156 netmask 255.255.255.0

c.修改MAC地址

命令文法:ifconfig 網卡裝置名稱 hw ether MAC地址

(註:修改網卡的MAC地址前要禁用網卡,修改後要啟用網卡)

eg:ifconfig eth0 hw ether 00:0C:29:03:F3:76

幾個常用的命令

1.ifdown禁用網卡

文法:ifdown 網卡裝置名稱

2.ifup啟用網卡

文法:ifup 網卡裝置名稱

3.綁定IPMAC地址

實現方法:建立/etc/ethers檔案,檔案內容“ip地址 mac地址”,然後執行“arp -f”命令,是配置生效。

eg:將IP地址193.168.168.154與MAC地址00:0C:29:03:F3:75綁定。

#echo "193.168.168.154 00:0C:29:03:F3:75">>/etc/ethers

#arp -f

ethtool---查看網卡以及修改網卡組態工具

ethtool 是用於查詢及設定網卡參數的命令。

使用概要:
ethtool ethx //查詢ethx網口基本設定,其中 x 是對應網卡的編號,如eth0、eth1等等
ethtool –h //顯示ethtool的命令協助(help)
ethtool –i ethX //查詢ethX網口的相關資訊
ethtool –d ethX //查詢ethX網口註冊性資訊
ethtool –r ethX //重設ethX網口到自適應模式
ethtool –S ethX //查詢ethX網口收發包統計
ethtool –s ethX [speed 10|100|1000] [duplex half|full] [autoneg on|off] //設定網口速率10/100/1000M、設定網口半/全雙工系統、設定網口是否自協商

[root@linux /]# ethtool eth1 //查看網卡1資訊

[root@linux /]# ethtool -i eth1 //查看網卡型號等
[root@linux /]# ethtool -S eth1 //查看資料率等

[root@linux /]# ethtool -s eth1 autoneg off speed 100 duplex full//強制修改網卡速率,配置成百兆網卡,autoneg off是一定要用,如果是on的話就是自適應配置,自動根據機器等進行配置。

[root@linux /]# which ethtool //查詢 ethtool 存放的路徑
/sbin/ethtool
[root@linux /]# rpm -qf /sbin/ethtool //查詢 ethtool 的版本資訊
ethtool-1.6-5
將 ethtool 設定永久儲存在網路裝置的方法
解決方案一:
ethtool 設定可通過 /etc/sysconfig/network-scripts/ifcfg-ethX 檔案儲存,從而在裝置下次啟動時啟用選項。
例如:ethtool -s eth0 speed 100 duplex full autoneg off
此指令將eth0裝置設定為全雙工系統自適應,速度為100Mbs。若要eth0啟動時設定這些參數, 修改檔案/etc/sysconfig/network-scripts/ifcfg-eth0 ,添加如下一行:
ETHTOOL_OPTS="speed 100 duplex full autoneg off"
解決方案二:
將ethtool設定寫入/etc/rc.d/rc.local之中。

mii-tool 的用法

mii-tool 在更改網路裝置通訊協商方式的方法比較簡單,用 -v 參數來查看網路介面的狀態;看下面的例子;

mii-tool 更改網路介面協商的方法;

[ ~]# mii-tool --help
usage: mii-tool [-VvRrwl] [-A media,... | -F media] [interface ...]
-V, --version display version information
-v, --verbose more verbose output 註:顯示網路介面的資訊;
-R, --reset reset MII to poweron state 註:重設MII到開啟狀態;
-r, --restart restart autonegotiation 註:重啟自動協商模式;
-w, --watch monitor for link status changes 註:查看網路介面串連的狀態變化;
-l, --log with -w, write events to syslog 註:寫入事件到系統日誌;
-A, --advertise=media,... advertise only specified media 註:指令特定的網路介面;
-F, --force=media force specified media technology 註:更改網路介面協商方式;
media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,
(to advertise both HD and FD) 100baseTx, 10baseT

更改網路介面的協商方式,我們要用到-F選項,後面可以接 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD等參數;

如果我們想把網路介面eth0改為 1000Mb/s全雙工系統的模式應該怎麼辦呢?

[root@localhost ~]# mii-tool -F 100baseTx-FD

[root@localhost ~]#mii-tool -v eth0

Ip

ip與ethtool的功能與傳統的ifconfig類似,而且功能更強。
ip下載:apt-get install iproute

# ip addr
1: lo: <LOOPBACK,UP,10000> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 brd 192.168.1.255 scope global eth0
inet6 fe80::2e0:22ff:fe02:2546/64 scope link
valid_lft forever preferred_lft forever
# ip link
1: lo: <LOOPBACK,UP,10000> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff
# ip -s link ls dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,10000> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
287018517 364010 0 0 0 0
TX: bytes packets errors dropped carrier collsns
272957602 395576 0 0 0 0

網卡的負載測試工具

如果需要對網卡進行詳細的負載等指標檢測,可以使用如下的工具

Tcpdump

http://www.tcpdump.org/tcpdump_man.html

 

Tcprelay

http://tcpreplay.synfin.net/

http://tcpreplay.synfin.net/wiki/manual

Tcpreplay 是 UNIX 系統下用來編輯和重放網路流量包的工具集合,這些流量包可以是通過 tcpdump 或 ethereal 等工具抓取的。 tcpreplay 提供了可靠的、可重複的方法來測試不同的網路裝置,包括:交換器、路由器、防火牆、入侵偵測系統 (IDS) 和入侵防禦系統 (IPS) 。

tcpreplay:常用的發包軟體,可以重發tcpdump所捕獲的報文。
pktgen:linux核心內建的發包工具。

http://blog.sina.com.cn/s/blog_63ac8a6c0100u17d.html

 

 

本資料詳細地址可從

https://skydrive.live.com/embed?cid=56B433AD3D1871E3&resid=56B433AD3D1871E3%21611&authkey=AJbvG12sXg6gScQ&em=2

下載

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.