天天看點

Linux系統基礎網絡配置

目錄:

1)配置修改主機名hostname

2)網卡配置檔案說明:

3)配置修改ip位址

4)配置修改網關gateway

5) 配置修改DNS

6)檢視ip、網關或路由、DNS配置

  a.[檢視ip配置方法]

  b.[檢視網關和路由方法]

  c.[檢視dns配置方法]

7)如果win32和linux伺服器無法連接配接網絡,分别描述排查方法?

##########################

####1)配置修改主機名:

臨時方法:

hostname oldboy

退出目前shell重新登陸即可生效。此法隻能臨時修改生效,重起系統後失效。

提示:很多人使用hostname 主機名來修改,其實這個隻是做為暫時的,重新開機後将恢複到配置前的主機名.

永久方法:

法一:

步驟1:

vi /etc/sysconfig/network

将裡面的HOSTNAME=XX改成HOSTNAME=oldboy,然後儲存。

提示:這裡改完後,執行/etc/init.d/network restart或 source /etc/sysconfig/network等做法都不生效

      如果要單一的修改這個檔案可能就需要重起伺服器了。

題外話:這裡應該是有一個直接生效的方法的系統自帶的目前及永久生效方法的,就是就是加載下hostname調用下配置檔案的指令執行下就好,

把這個問題留給大家了!

步驟2:

然後通過指令行繼續修改:hostname oldboy ,完成後退出重新登陸即生效

提示:這樣就能保證臨時生效,重起系統系統也生效了。

法二:

即時永久都生效的另外改法:執行setup-網絡配置-- Edit DNS configuration-->

DNS configuration                  

 x                               x 

 x Hostname      oldboy_______   x ===========>修改這裡

 x Primary DNS   202.106.0.20___ x 

 x Secondary DNS 211.147.6.3____ x 

 x Tertiary DNS  _______________ x 

 x Search        _______________ x 

提示:在這裡改完儲存後會及時生效,重起也生效,從這就可以看出來,系統還是有直接臨時永久都生效的方法。

特别說明:使用以上的方法都可能導緻/etc/hosts中的127.0.0.1對應的主機名未修改,此時,應該手動修改:如:

[root@oldboy ~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1              oldboy localhost.localdomain localhost ===========>修改這裡的oldboy

::1             localhost6.localdomain6 localhost6

提示:如果/etc/hosts不改,以後會遇到一些問題,如sendmail啟動緩慢,ldap服務解析緩慢,sudo切使用者緩慢等等都是主機名和/etc/hosts中的解析不對應導緻的。

拓展:有關重起系統設定主機名的腳本:

[root@oldboy ~]# grep -i hostname /etc/rc.d/rc.sysinit 

HOSTNAME=`/bin/hostname`

if [ -z "$HOSTNAME" -o "$HOSTNAME" = "(none)" ]; then

    HOSTNAME=localhost

# Set the hostname.

update_boot_stage RChostname

action $"Setting hostname ${HOSTNAME}: " hostname ${HOSTNAME} ===========>這裡就是系統重起後執行rc.sysinit後修改機器名的地方。

        # Use the network address to set the hostname of the client.  This

        if [ "$HOSTNAME" = "localhost" -o "$HOSTNAME" = "localhost.localdomain" ]; then

                        hostname ${HOSTNAME}

                mount -t nfs $CLIENTSTATE/$HOSTNAME $STATE_MOUNT -o rw,nolock

        # Reset the hostname.

        action $"Resetting hostname ${HOSTNAME}: " hostname ${HOSTNAME}

[root@oldboy ~]# grep -i hostname /etc/rc.d/init.d/network ===========>這裡沒有和主機名相關的資訊。

################################

####2)網卡配置檔案說明:

[root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 ==》這裡是eth0網卡裝置的預設配置檔案

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]

DEVICE=eth0 ================》這裡是網卡名稱第一塊網卡為eth0,第二塊為eth1...

BOOTPROTO=static============》static為固定IP位址,非動态DHCP擷取

BROADCAST=10.0.0.255 =======》這裡是廣播位址,一般為網絡位址的最後一個位址。

HWADDR=00:0C:29:0E:5F:63 ===》這裡mac位址,不同的機器不能重複,尤其是在刻隆虛拟機或複制網卡配置時要注意。

IPADDR=10.0.0.161 ==========》這裡是IP位址

NETMASK=255.255.255.0=======》子網路遮罩/24

NETWORK=10.0.0.0   =========》網段設定

ONBOOT=yes =================》開機網卡自啟動

GATEWAY=10.0.0.254==========》網關的配置,也可以指令行通過route添加删除。

TYPE=Ethernet===============》類型

提示:第一塊網卡為ifcfg-eth0,第二塊為ifcfg-eth1...

####3)配置修改ip位址:

配置伺服器IP及DNS等網絡配置的方法:

1)setup-網絡配置,然後修改。

2)直接編輯或手寫上面配置檔案。

  /etc/sysconfig/network-scripts/ifcfg-eth0 ===============》網卡配置

  /etc/resolv.conf===============》DNS client的配置

提示:以上兩個方法一般需要重起或者重新加載/etc/init.d/network restart 或/etc/init.d/network reload才能生效。

####4)配置修改網關gw:

法一:修改/etc/sysconfig/network

[root@oldboy network-scripts]# cat /etc/sysconfig/network

NETWORKING=yes

NETWORKING_IPV6=no

HOSTNAME=oldboy

GATEWAY=10.0.0.254 ====》這個就是網關的配置

提示;需要執行/etc/init.d/network reload 即可生效。

法二:修改/etc/sysconfig/network-scripts/ifcfg-eth0

[root@oldboy network-scripts]# cat ifcfg-eth0

DEVICE=eth0

BOOTPROTO=static

BROADCAST=10.0.0.255

HWADDR=00:0C:29:0E:5F:63

IPADDR=10.0.0.161

NETMASK=255.255.255.0

NETWORK=10.0.0.0

ONBOOT=yes

GATEWAY=10.0.0.254====》這個就是增加網關的配置,預設沒有

提示;需要執行/etc/init.d/network restart 或reload 即可生效。

特别注意:

1)/etc/sysconfig/network-scripts/ifcfg-eth0中的網關配置優先于/etc/init.d/network

2)注意配置的大小寫,gATEWAY=10.0.0.254這樣的小寫格式就不對。

法三:通過指令修改預設網關:

[root@oldboy network-scripts]# route del default gw 10.0.0.254 ==》首先删除之

[root@oldboy network-scripts]# route -n ==》檢視指令

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0

[root@oldboy network-scripts]# route add default gw 10.0.0.254 ==》添加預設網關

[root@oldboy network-scripts]# route -n

0.0.0.0         10.0.0.254      0.0.0.0         UG    0      0        0 eth0

注意:此修改為臨時修改,重新加載或啟動網卡後就會失效,解決方法就是盡量在配置檔案裡配置,

實在有需求就把route add default gw 10.0.0.254放到rc.local自啟動檔案裡或/etc/init.d/network網卡

restart/reload段腳本配置裡實作開機自啟動或重起網卡也生效,這也有點太複雜了,咱就别這樣做了,好不?

####5)修改主機DNS配置

法一:setup--網絡配置圖形操作

法二:修改/etc/resolv.conf ==》這裡主機DNS配置檔案的路徑

[root@oldboy network-scripts]# cat /etc/resolv.conf 

nameserver 202.106.0.20

nameserver 8.8.8.8

nameserver 211.147.6.3

提示:每個配置一行這個resolv.conf修改後直接生效,注意,不是nameservers,

另,這個配置檔案也是有知識的,同學們可以man resolv.conf檢視。

###6)檢視ip、網關或路由、DNS配置:

[a.檢視ip配置方法]

[root@oldboy ~]# ifconfig ==》直接指令名表示顯示所有網卡IP

eth0      Link encap:Ethernet  HWaddr 00:0C:29:1D:28:D5  

          inet addr:10.0.0.190  Bcast:10.0.0.255  Mask:255.255.255.0

          inet6 addr: fe80::20c:29ff:fe1d:28d5/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:4154 errors:0 dropped:0 overruns:0 frame:0

          TX packets:3107 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:367589 (358.9 KiB)  TX bytes:481210 (469.9 KiB)

          Interrupt:185 Base address:0x1400

lo        Link encap:Local Loopback  

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:36 errors:0 dropped:0 overruns:0 frame:0

          TX packets:36 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:3744 (3.6 KiB)  TX bytes:3744 (3.6 KiB)

[root@oldboy ~]# ifconfig eth0 ==》顯示指定網卡IP

          RX packets:4170 errors:0 dropped:0 overruns:0 frame:0

          TX packets:3130 errors:0 dropped:0 overruns:0 carrier:0

          RX bytes:368687 (360.0 KiB)  TX bytes:484496 (473.1 KiB)

[b.檢視網關和路由方法]

[root@oldboy ~]# netstat -rn  ==》此法可以不記,記route -n即可。

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface

10.0.0.0        0.0.0.0         255.255.255.0   U         0 0          0 eth0

169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth0

檢視linux指令幫助的指令man or info or指令 --help:

例:檢視route用法

man route 和 info route 或route --help

route功能強大,同學們要熟練掌握,上面僅是一個簡單的用法。

[c.檢視DNS配置方法]

[root@oldboy ~]# cat /etc/resolv.conf ==》這是常見的檢查方法

[root@oldboy ~]# ping g.cn ==》這是常見的檢查方法,傳回ip位址了說明通的。

PING g.cn (74.125.71.160) 56(84) bytes of data.

64 bytes from hx-in-f160.1e100.net (74.125.71.160): icmp_seq=1 ttl=49 time=51.7 ms

--- g.cn ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 51.710/51.710/51.710/0.000 ms

;; global options:  printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45736

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;www.etiantian.org.             IN      A

;; ANSWER SECTION:

;; Query time: 90 msec

;; SERVER: 202.106.0.20#53(202.106.0.20)

;; WHEN: Mon Feb 20 11:50:57 2012

;; MSG SIZE  rcvd: 51

[root@oldboy ~]# nslookup

Server:         202.106.0.20

Address:        202.106.0.20#53

Non-authoritative answer:

Address: 211.100.98.99

   此題留給大家了。大家可以評論或單獨和我交流。

   提示:基本檢查思路:

    a.實體鍊路是否通暢

    b.本機IP,路由,DNS的設定情況是否達标。

    c.測試到網關或路由器的通暢情況。

    d.測試ping公網ip的通常情況(平時要記幾個外部IP)

    e.測試DNS的通暢,可以ping etiantian.org看是否出對應IP。

   根據每級的結果來排查,如果是系統管理者,以上問題都檢查了後,還可以在網關路由伺服器上向上向下測試。

   逐級排查。

本文轉自 jundong 51CTO部落格,原文連結:http://blog.51cto.com/minitoo/1416556,如需轉載請自行聯系原作者

繼續閱讀