Linux-網絡管理

網絡管理

一 基本網絡配置

linux操做系統,以太網卡用「eth」表示網卡;序號從零開始
eth0表明到系統可以識別的第一個網卡
eth1....第2個網卡node

查看網卡信息linux

查看網卡信息

查看當前系統所鏈接的全部網卡(包括已經驅動了和沒有驅動)

# lspci | grep -i eth
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

確認網線已經鏈接好,以eth0 爲例

# mii-tool eth0
eth0: negotiated 100baseTx-FD flow-control, link ok
link ok 網卡可以被識別,而且接了有效的網線

# mii-tool eth1
SIOCGMIIPHY on 'eth1' failed: Invalid argument
網卡雖然可以被識別(網卡已經被驅動了,但不能用:網卡配置錯誤,網線沒接等)

樣圖web

ifconfig命令

一、ifconfig -a 查看全部網卡信息
二、ifconfig eth0 查看單個網卡信息
三、ifconfig eth0 192.168.1.122 netmask 255.255.255.0 臨時設定IP和掩碼(立刻生效,可是臨時生效,重啓服務或者重啓系統都失效)
四、ifconfig eth0:1 192.168.0.2 netmask 255.255.255.0 配置子接口
vim

ifconfig eth0 down|up
ifdown eth0 |ifup eth0

 ping命令

 ping +IP地址 ctrl+c結束 測試是否兩臺主機網絡是否通
-c參數:ping幾回
cd /proc/sys/net/ipv4 
ls icmp_echo_ignore_all
0 表明關閉,1表明開啓。這裏只是暫時開啓忽略回顯。別人ping本身不顯示。[禁止ping]
echo 1 > icmp_echo_ignore_all 緩存

 

NetworkManager服務

 NetworkManager做用:是redhat6自帶的檢測網絡、自動鏈接網絡的圖形化工具。NetworkManager 服務會干擾網絡配置,如:DNS常常會被刷掉。

service NetworkManager stop 臨時關閉
chkconfig NetworkManager off 開機不自動啓動
服務器

網絡相關的配置文件

1) /etc/sysconfig/network-scripts/ifcfg-ethX 接口的網絡配置文件 
2) /etc/sysconfig/network 網絡全局配置文件
3)/etc/resolv.conf DNS解析文件
4)/etc/hosts 本地名稱解析文件,優先於DNS
網絡

配置靜態IP地址:
方法1:  setup/systen-config-network
dom

方法2:vim /etc/sysconfig/network-scripts/ifcfg-eth0tcp

device=eth0
type=Ethernet
onboot=yes
bootproto=none
ipadd=10.1.1.1
network=255.255.255.0
gateway=10.1.1.254
DEVICE=eth0         <-- 網卡名字
BOOTPROTO=static       <---- dhcp 動態獲取IP, none 根據其餘選項決定動態仍是靜態,static確定是手工指定IP
NM_CONTROLLED=no          <---若是NetworkManager服務啓用,該網卡配置文件也不使用NetworkManager管理
ONBOOT=yes          <---- 網絡服務啓動的時候,yes表明激活狀態 , no 表明禁用
TYPE=Ethernet
IPADDR=10.1.1.11        <-- IP 地址
NETMASK=255.255.255.0     <-- 子網掩碼
GATEWAY=10.1.1.1          <-- 默認網關
DNS1=10.1.1.1             <-- DNS 服務器
HWADDR=14:da:e9:eb:a9:61  <---MAC地址
USERCTL=no           <---是否容許普通用戶啓動或者中止該網卡
IPV6INIT=no          <---是否在該網卡上啓動IPV6的功能
PEERDNS=yes          <---是否容許網卡在啓動時向DHCP服務器查詢DNS信息,並自動覆蓋/etc/resolv.conf配置文件。

setup:工具

二 設定主機名

 徹底規範的主機名:

web1.uplook.com

查看主機名

# hostname 或者 # uname -n

命令臨時設定或更改主機名(立刻生效,重啓系統就失效)

# hostname node7.upl.com

永久生效(須要下次重啓系統才生效)

# vim /etc/sysconfig/network
NETWORKING=yes       <----是否啓用網絡功能(no: service network start 沒有任何迴應)
HOSTNAME=node8.upl.com   <----找到HOSTNAME設定本身的主機名
GATEWAY=192.168.0.2      <----默認網關,若是和局部配置文件ifcfg-eth0衝突,則以局部爲準

指定DNS

[root@node1 Desktop]# echo nameserver 10.1.1.254 > /etc/resolv.conf
[root@node1 Desktop]# cat /etc/resolv.conf 
nameserver 10.1.1.254
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.1.1.1 node1.uplook.com node1
10.1.1.2 node2.uplook.com node2

路由 route

Linux系統的route命令用於顯示和操做IP路由表, 要實現兩個不一樣的子網之間的通訊,須要一臺鏈接兩個網絡的路由器,或者同時位於兩個網絡的網關來實現

route [OPTIONS] [CMD]

[OPTIONS]

-c:顯示更多信息
-n:以數字顯示路由信息
-v:顯示詳細的處理信息
-F:顯示發送信息
-C:顯示路由緩存
-f:清除全部網關入口的路由表
-p:與add命令一塊兒使用時使路由具備永久性

[CMD]

add               #添加一條新路由;
del               #刪除一條路由;
-net              #目標地址是一個網絡;
-host             #目標地址是一個主機;
netmask           #當添加一個網絡路由時,須要使用網絡掩碼;
gw                #路由數據包經過網關,注意,你指定的網關必須可以達到;
metric            #設置路由跳數;
destination       #指定該路由的網絡目標;
mask netmask      #指定與網絡目標相關的網絡掩碼(也被稱做子網掩碼);
gateway           #指定網絡目標定義的地址集和子網掩碼能夠到達的前進或下一躍點IP地址;
metric metric     #爲路由指定一個整數成本值標(從1至9999),當在路由表(與轉發的數據包目標地址最匹配)的多個路由中進行選擇時可使用 ;

示例

(1)查看本機路由信息

[root@localhost ~]# route -n

(2)添加一條默認路由,臨時生效(重啓後就會失效)

[root@localhost ~]# route add default gw 192.168.10.1
或
[root@localhost ~]# route add –net 0.0.0.0 gw 192.168.10.1

(3)刪除一條默認路由

[root@localhost ~]# route del default gw 192.168.10.1
或
[root@localhost ~]# route del –net 0.0.0.0 gw 192.168.10.1

(4)添加一條靜態路由

route add -net 192.168.8.0 netmask 255.255.255.0 gw 192.168.1.1     //  發往192.168.62這個網段的所有要通過網關192.168.1.1

(5)刪除一條靜態路由

route del -net 192.168.8.0 netmask 255.255.255.0 gw 192.168.1.1    // 刪除的時候能夠不寫網關

(6)添加網關

# 服務器上面有雙網卡,em1外網,em2內網,咱們都知道,若是在配置文件裏面同事都置網關,那麼總有一個不會生效,此時咱們就要用靜態添加的方法來添加網關了,讓145端的內網都走em2網卡。

# 添加前
[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.20.0    0.0.0.0         255.255.255.0   U     0      0        0 em1
145.36.26.0     0.0.0.0         255.255.255.0   U     0      0        0 em2
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 em1
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 em2
0.0.0.0         192.168.20.254  0.0.0.0         UG    0      0        0 em1

# 添加網關
[root@localhost ~]# route add -net 145.0.0.0 netmask 255.0.0.0 gw 145.36.26.254

# 添加後
[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.20.0    0.0.0.0         255.255.255.0   U     0      0        0 em1
145.36.26.0     0.0.0.0         255.255.255.0   U     0      0        0 em2
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 em1
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 em2
145.0.0.0       145.36.26.254   255.0.0.0       UG    0      0        0 em2
0.0.0.0         192.168.20.254  0.0.0.0         UG    0      0        0 em1

網絡故障排錯

判斷網卡是否能識別,是否接了有效的網線

# mii-tool   eth0
有可能明明鏈接了有效的網線,可是仍是看不到link ok,能夠先肯定網卡配置文件是正確的,而且ONBOOT=yes ,而後重啓network服務(service network restart)

ping 127.0.0.1

通,表明系統可以支持tcp/ip通訊。
不通,緣由: 相關驅動損壞或者沒有。防火牆iptables攔截了。

ping 網卡的IP

 假設eth0配置10.1.1.22
ping 10.1.1.22
 通,說明網卡是可以正常工做

 不通,多是網卡驅動工做不正常,或iptables防火牆問題。
 嘗試重啓網絡服務

ping 網關

不通
緣由: 網關有問題,或者IP衝突

解決方法:ping 同一個網段中其餘IP,其餘計算機 ping 網關

ping 外網(IP或域名)

ping 外網IP
通,只能說明通訊沒問題,網關是設定正確。
不通,極可能就是網關沒法聯網
ping 域名
若是連域名對應的IP都沒法返回,說明域名解析失敗,緣由:DNS設定有問題。

注意: 同一個網卡能夠配置多個IP,多個不一樣網段或者相同網段的IP
可是,不一樣的網卡不能配置同一個網段IP

ethtool eth0 查看網卡的工做模式等信息

# ethtool eth0        --查看網卡的工做模式等信息

    Link partner advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full

# ethtool -s eth0 speed 10 duplex half autoneg off    --改爲10M/s的速率,半雙工,關閉自動協商

經過scp拷貝大文件,查看網速速率

# ethtool -s eth0 speed 100 duplex full autoneg on    --改爲100M/s的速率,半雙工,開啓自動協商

ping的錯誤類型

network unreachable (網絡不可達): 通常沒有設定正確的網關
unknow host xxxx : 設定DNS無效

Ping命令返回錯誤信息說明

1.Request timed out
這是你們常常碰到的提示信息,不少文章中說這是對方機器置了過濾ICMP數據包,從上面工做過程來看,這是不徹底正確的,至少有下幾種狀況。
(1) 對方已關機,或者網絡上根本沒有這個地址:好比在上圖中主機A中PING 192.168.0.7 ,或者主機B關機了,在主機A中PING 192.168.0.5 都會獲得超時的信息。
(2)對方與本身不在同一網段內,經過路由也沒法找到對方,但有時對方確實是存在的,固然不存在也是返回超時的信息。
(3)對方確實存在,但設置了ICMP數據包過濾(好比防火牆設置)。
怎樣知道對方是存在,仍是不存在呢,能夠用帶參數 -a 的Ping命令探測對方,若是能獲得對方的NETBIOS名稱,則說明對方是存在的,是有防火牆設置,若是得不到,多半是對方不存在或關機,或不在同一網段內。
(4)錯誤設置IP地址
正常狀況下,一臺主機應該有一個網卡,一個IP地址,或多個網卡,多個IP地址(這些地址必定要處於不一樣的IP子網)。但若是一臺電腦的「撥號網絡適配器」(至關於一塊軟網卡)的TCP/IP設置中,設置了一個與網卡IP地址處於同一子網的IP地址,這樣,在IP層協議看來,這臺主機就有兩個不一樣的接口處於同一網段內。當從這臺主機Ping其餘的機器時,會存在這樣的問題:
A.主機不知道將數據包發到哪一個網絡接口,由於有兩個網絡接口都鏈接在同一網段。
B.主機不知道用哪一個地址做爲數據包的源地址。所以,從這臺主機去Ping其餘機器,IP層協議會沒法處理,超時後,Ping 就會給出一個「超時無應答」的錯誤信息提示。但從其餘主機Ping這臺主機時,請求包從特定的網卡來,ICMP只須簡單地將目的、源地址互換,並更改一些標誌便可,ICMP應答包能順利發出,其餘主機也就能成功Ping通這臺機器了。

2.Destination host Unreachable
(1) 對方與本身不在同一網段內,而本身又未設置默認的路由,好比上例中A機中不設定默認的路由,運行Ping192.168.0.1.4就會出現「Destination host Unreachable」。
(2)網線出了故障
這裏要說明一下「destination host unreachable」和 「time out」的區別,若是所通過的路由器的路由表中具備到達目標的路由,而目標由於其餘緣由不可到達,這時候會出現「time out」,若是路由表中連到達目標的路由都沒有,那就會出現「destination host unreachable」。

3.Bad IP address
這個信息表示您可能沒有鏈接到DNS服務器,因此沒法解析這個IP地址,也多是IP地址不存在。
4.Source quench received
這個信息比較特殊,它出現的機率不多。它表示對方或中途的服務器繁忙沒法迴應。

5.Unknown host——不知名主機
這種出錯信息的意思是,該遠程主機的名字不能被域名服務器(DNS)轉換成IP地址。故障緣由多是域名服務器有故障,或者其名字不正確,或者網絡管理員的系統與遠程主機之間的通訊線路有故障。

6.No answer——無響應
這種故障說明本地系統有一條通向中心主機的路由,但卻接收不到它發給該中心主機的任何信息。故障緣由多是下列之一:中心主機沒有工做;本地或中心主機網絡配置不正確;本地或中心的路由器沒有工做;通訊線路有故障;中心主機存在路由選擇問題。

7.Ping 127.0.0.1
127.0.0.1是本地循環地址.若是本地址沒法Ping通,則代表本地機TCP/IP協議不能正常工做。

8.no rout to host
網卡工做不正常。

9.transmit failed,error code:10043
網卡驅動不正常。

10.unknown host name
DNS配置不正確
相關文章
相關標籤/搜索