首頁 > 軟體

Linux基礎知識:網路屬性設定

2020-06-16 17:07:47

當我們擁有一個嶄新的計算機的時候,第一步恐怕都是迫不及待的下載各種軟體,看視訊,聽音樂等,這裡的關鍵的一點是要有網路。現在的個人計算機大部分都是Windows作業系統的,接入網路網路很簡單,插上網線也許就能上網了,最麻煩不過找到網路和共用中心手動設定一個ip地址、閘道器地址和dns伺服器就能上網了,當然這都是得益於圖形化介面。但是現在很多的伺服器都是Linux作業系統且沒有圖形化的介面,這時候我們就需要了解怎樣正確的給Linux主機設定網路屬性了,本次部落格就來說說以正確的方式開啟Linux作業系統的網路屬性設定(本次部落格基於的發行版和版本:CentOS7、CentOS6.5)。

接入網路的兩種方式

一、手動的指定

1.使用命令

一般是臨時的修改,重新啟動後失效,如:ifconfig、route、ip addr等。

2.修改組態檔

修改檔案設定,永久有效,但是可能不能立即生效,需要重新啟動服務。

二、動態獲取

如果本地網路中存在DHCP服務,可以動態的獲取到ip地址、閘道器地址、DNS伺服器地址等。

常用的管理和設定命令

一、ifconfig

1.不加任何選項,檢視處於活動狀態下的介面,-a選項顯示所有介面,包括inactive狀態的介面:

[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:AD  
          inet addr:192.168.172.136  Bcast:192.168.172.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aaad/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2168 errors:0 dropped:0 overruns:0 frame:0
          TX packets:404 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:149715 (146.2 KiB)  TX bytes:29251 (28.5 KiB)

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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
[root@localhost ~]# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:AD  
          inet addr:192.168.172.136  Bcast:192.168.172.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aaad/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2223 errors:0 dropped:0 overruns:0 frame:0
          TX packets:425 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:153927 (150.3 KiB)  TX bytes:32473 (31.7 KiB)

eth1      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:B7  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

介面的命名方式:

1.傳統的命令方式:
  乙太網:eth1,eth2...ethn  #centos6較常見的命名方式
  PPP網路:ppp1,ppp2...pppn
2.可預測的命令方案
如果韌體或者BIOS為主機板上整合的裝置提供的索引資訊可以用,根據此索引進行命令,例如:eno1,eno2....enon;
如果韌體或者BIOS為PCI-E擴充套件槽上所提供的索引資訊可以用,根據此索引進行命令,例如:ens1,ens2...ensn;
如果硬體介面的物理位置資訊可用,則根據此資訊命令,如enp2s0
如果使用者顯示定義,也可以根據MAC地址命令,例如enx1232131231
3.命名格式的組成
en:乙太網
wl:無線網
ww:廣域網
4.名稱型別
o<index>:整合裝置的裝置索引號
s<slot>:擴充套件槽的索引號
x<MAC>:基於MAC地址的命名
p<bus>s<slot>:基於匯流排槽的拓撲結構進行命名

2. 設定介面ip地址掩碼的兩種方式:

ifconfig INTERFACE IP/MASK [up|down]      #up和down為可選項
ifconfig INTERFACE IP netmask NETMASK [up|down]

舉例:

[root@localhost ~]# ifconfig eth1 192.168.1.1/24 up
[root@localhost ~]# 
[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:AD  
          inet addr:192.168.172.136  Bcast:192.168.172.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aaad/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2392 errors:0 dropped:0 overruns:0 frame:0
          TX packets:510 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:168403 (164.4 KiB)  TX bytes:43303 (42.2 KiB)

eth1      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:B7  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aab7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:398 (398.0 b)

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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

3.開啟介面的雜合模式,這裡就不先做太多的說明,後面部落格中會說明:

[root@localhost ~]# ifconfig eth1 promisc
[root@localhost ~]# 
[root@localhost ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:B7  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aab7/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1    #這裡多了一個PROMISC
          RX packets:29 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2985 (2.9 KiB)  TX bytes:468 (468.0 b)

4.新增和刪除IPv6地址

ifconfig INTERFACE add addr/prefixlen
ifconfig INTERFACE del addr/prefixlen

舉例:

[root@localhost ~]# ifconfig eth1 add 2001:0:0:12::1/64  #新增一個IPV6地址
[root@localhost ~]# 
[root@localhost ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:B7  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: 2001:0:0:12::1/64 Scope:Global
          inet6 addr: fe80::20c:29ff:fe9f:aab7/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:57 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:6604 (6.4 KiB)  TX bytes:836 (836.0 b)
[root@localhost ~]# ifconfig eth1 del 2001:0:0:12::1/64  #刪除ipv6地址
[root@localhost ~]# 
[root@localhost ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:9F:AA:B7  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9f:aab7/64 Scope:Link
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:62 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7468 (7.2 KiB)  TX bytes:1016 (1016.0 b)

如果在沒有設定ipv6地址的情況下,我們會發現每個介面都有一個開頭為fe80的ipv6地址,這個地址被稱為鏈路原生的地址,其前64為都是固定的格式,後64是位是基於EUI-64生成的,通俗的來說就是基於MAC地址生成的,鏈路本地地址只能使用者原生的通訊,如果想要實現上網的功能,就必須要給介面設定一個全域性的地址,也就是全球可聚合單播地址,設定的方式就如上,顯示為Global。

可以給介面起別名設定多個IP地址:

[root@localhost ~]# ifconfig ens34:1 192.168.179.130 netmask 255.255.255.0
[root@localhost ~]# 
[root@localhost ~]# ifconfig
ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.172.134  netmask 255.255.255.0  broadcast 192.168.172.255
        inet6 fe80::4:ed31:efad:25d0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:db:7f:47  txqueuelen 1000  (Ethernet)
        RX packets 25157  bytes 12826364 (12.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 11651  bytes 2175604 (2.0 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens34: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.179.128  netmask 255.255.255.0  broadcast 192.168.179.255
        ether 00:0c:29:db:7f:51  txqueuelen 1000  (Ethernet)
        RX packets 666  bytes 91944 (89.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 220  bytes 29356 (28.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens34:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.179.130  netmask 255.255.255.0  broadcast 192.168.179.255
        ether 00:0c:29:db:7f:51  txqueuelen 1000  (Ethernet)

然後為別名新增組態檔即可,記得DEVICE為別名名稱且BOOTPROTO:不支援動態獲取地址。


IT145.com E-mail:sddin#qq.com