一、服務器的網絡配置
在服務器的網絡配置時,喜歡圖形的朋友可用setup或system-config-network來配置。
網卡配置文件爲/etc/sysconfig/network-scripts/ifcfg-eth0,設置完畢後直接用service network restart生效
- [root@linpcl root]#cat /etc/sysconfig/networking/devices/ifcfg-rth0
- DEVICE=eth0
- ONBOOT=yes
- BOOTPROTO=static
- IPADDR=192.168.0.2
- NETMASK=255.255.255.0
- GATEWAY=192.168.0.1
GATEWAY選項可以設置網關參數,這裏注意下ONBOOT選項,它表示網卡是否隨系統啓動而啓動,此項一定要設置成on 這裏介紹二個不是太常用的參數
USERCTL=no,即不允許普通用戶修改網卡
PEERDNS=yes,它表示允許從DHCP獲得的DNS覆蓋本地的DNS
查看本機所有的網卡情況 ifconfig –a,更高級的網卡路由命令用ip addr,特別是你的服務器由keepalived綁定了虛擬VIP後用其查看很方便查看本機路由 netstat –rn或route
增加一條本機網絡路由用命令route add -net 172.16.6.0 netmask 255.255.255.0 gw 172.16.2.25,即增加一條網絡172.16.6.0/24 經過172.16.2.254 ,這個地址也可以理解爲你的下一跳的地址
刪除路由用命令route del –net 172.16.86.0/24
如果要永久的生效可用文件編輯的辦法
vim /etc/sysconfig/network-scripts/route-eth0
172.16.6.0/24 via 172.16.2.25
查看本機的DNS服務器 cat /etc/resolv.conf
查看主機名hostname
查看主機名對應的IP地址 /etc/hosts
它的執行順序是優於DNS的,現在多用於集羣環境,比如Heartbeat;還有一個妙用,在沒用DNS的環境中做測試時,直接改服務器的此文件,達到優先解析的目的查看與本機直連的網絡設備用命令arp
這裏跟大家介紹一個很有用的工具,mii-tool,判斷哪塊網卡連接了網線,同事們靠抽插網線來判斷哪個網卡連接了網線的辦法比較沒有效率
- [root@mail~]#mii-tool
- eth0: negotiated 100baseTx-FD flow-control, link ok
- SIOCGMIIPHY on 'eth1' failed: Resource temporarily unavailable
大家看這段文字可能沒什麼感覺,但到了機房就非常有用了,特別是那些網卡多的服務器,我見得最多的某臺Linux服務器上綁定了六塊網卡。
二、查看你的服務器網絡連接狀態
- netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
- LAST_ACK 14
- SYN_RECV 348
- ESTABLISHED 70
- FIN_WAIT1 229
- FIN_WAIT2 30
- CLOSING 33
- TIME_WAIT 18122
狀態:描述
◆CLOSED:無連接是活動的或正在進行
◆LISTEN:服務器在等待進入呼叫
◆SYN_RECV:一個連接請求已經到達,等待確認
◆SYN_SENT:應用已經開始,打開一個連接
◆ESTABLISHED:正常數據傳輸狀態
◆FIN_WAIT1:應用說它已經完成
◆FIN_WAIT2:另一邊已同意釋放
◆ITMED_WAIT:等待所有分組死掉
◆CLOSING:兩邊同時嘗試關閉
◆TIME_WAIT:另一邊已初始化一個釋放
◆LAST_ACK:等待所有分組死掉
ESTABLISHED的值其實也是當前的併發數,這個可重點關注下;另外,可關注下TIME——WAIT這項的數值。Linux下高併發的Squid服務器,TCP TIME_WAIT套接字數量經常達到兩、三萬,服務器很容易被拖死。通過修改Linux內核參數,可以減少Squid服務器的TIME_WAIT套接字數量,具體可參見我的另一篇文章:
優化Linux生產服務器的經驗之談。