Linux系統網絡屬性管理

    每臺計算機主機連入internet都必須給主機設定以個合法的IP地址。這些IP參數大概包括IP地址、子網掩碼、網關、路由、DNS等。在Linux中,大多數命令配置網絡配置都是臨時生效,想要網絡服務永久有效就必須寫入配置文件中,所以有時候更改配置重啟主機是為了讓內核重讀配置文件到內核中,因為配置文件屬于用戶空間的文件。大多數網絡配置都是臨時生效。下面我們來了解一些關于Linux中的常用的網絡配置命令和配置文件。

    IP的相關參數包括

    IP/Netmask主要用于確定自身所處的網絡,以及對方主機是否與本主機同在一個網絡當中。

    Gateway(網關)主要用于與外部Internet通信傳輸口。

    Route:(路由)建立網絡層通信條目,分為三種類型

    (1)、網絡路由:目標是一個網絡

    (2)、主機路由:目標是一個主機

    (3)、默認路由:目標是所有非本地網絡。

        注意:下一跳地址必須是同一網段的地址中。

    DNS服務器是用于域名解析。它的數據庫中是域名對應的IP地址,來增強網絡的通用性。Linux默認有三個

        (1)、主DNS服務器

        (2)、備用DNS服務器

        (3)、第三備用服務器

    網絡配置方式分為靜態指定(靜態IP)和動態指定(DHCP服務器分配)。

    靜態配置地址的方法有以下幾種

    

        ifcfg: ifconfig, route, netstat

        ip: object {link, addr, route}, ss, 

        system-config-network-tui(setup)

        配置文件

        CentOS 7:網絡配置工具

        nmcli, nmtui, nm-connection-editor

  

    ifcfg命令家族:ifocnfig,route,netstat

    

    ifconfig命令:

    ifconfig [interface]

    # ifconfig -a:顯示所有接口,包括inactive狀態的接口

    

    ifconfig interface [iftype] options | address …

    #ifconfig IFACE IP/MASK [up]

    #ifconfig IFACE IP netmask NETMASK

    

    option

    [-]promisc #混雜模式

    

    注意:立即送往內核中的TCP/IP協議棧,并生效。

    

    管理IPv6地址

    add addr/prefixlen

    del addr/refixlen

    

    ifconfig eth0 10.1.36.6/16 down

    ifconfig eth0 192.168.100.1 netmask 255.255.255.0 (netmask是關鍵字,必須完整格式。立即生效)

    ifconfig eth1 promisc #開啟混雜模式

    ifconfig eth1 -promisc #關閉混雜模式

[root@clod ~]#ifconfig eth0 192.168.100.123/24 #配置IP地址
[root@clod ~]#ifconfig eth0 192.168.100.123 netmask 255.255.255.0 #配置IP地址 都可以

[root@clod ~]#ifconfig eth0 down #斷開網卡連接  (相當于拔網線,IP地址只能本機使用)
[root@clod ~]#ifconfig eth0 up #啟用連接網卡連接 (相當于拔網線,IP地址只能本機使用)

[root@clod ~]#ifconfig eth0 down  #怒拔網線
[root@clod ~]#ifconfig eth0 #查看信息,顯示未RUNNING
eth0      Link encap:Ethernet  HWaddr 00:0C:29:00:07:39  
          inet addr:10.1.36.6  Bcast:10.1.255.255  Mask:255.255.0.0
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:2406 errors:0 dropped:0 overruns:0 frame:0
          TX packets:121 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:144360 (140.9 KiB)  TX bytes:8098 (7.9 KiB)

[root@clod ~]#ifconfig eth1 #顯示單個網卡信息
eth1      Link encap:Ethernet  HWaddr 00:0C:29:00:07:43  
          inet addr:192.168.200.6  Bcast:192.168.200.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe00:743/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6915 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4745 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:586838 (573.0 KiB)  TX bytes:574276 (560.8 KiB)

[root@clod ~]#ifconfig -a #顯示所有網卡接口信息
eth0      Link encap:Ethernet  HWaddr 00:0C:29:00:07:39  
          inet addr:10.1.36.6  Bcast:10.1.255.255  Mask:255.255.0.0
          inet6 addr: fe80::20c:29ff:fe00:739/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2210 errors:0 dropped:0 overruns:0 frame:0
          TX packets:93 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:132600 (129.4 KiB)  TX bytes:5906 (5.7 KiB)
eth1      Link encap:Ethernet  HWaddr 00:0C:29:00:07:43  
          inet addr:192.168.200.6  Bcast:192.168.200.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe00:743/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6698 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4613 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:568471 (555.1 KiB)  TX bytes:557962 (544.8 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:65536  Metric:1
          RX packets:63 errors:0 dropped:0 overruns:0 frame:0
          TX packets:63 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:5888 (5.7 KiB)  TX bytes:5888 (5.7 KiB)

[root@clod ~]#ifdown eth0 #禁用接口
[root@clod ~]#ifconfig eth0 #查看禁用接口
eth0      Link encap:Ethernet  HWaddr 00:0C:29:00:07:39  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:2214 errors:0 dropped:0 overruns:0 frame:0
          TX packets:93 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:132840 (129.7 KiB)  TX bytes:5906 (5.7 KiB)

fiup/ifdown 

ifup - bring a network interface up #啟用接口 (相當于直接禁用TCP/IP協議,無IP地址)
       ifdown - take a network interface down #禁用接口 (相當于直接禁用TCP/IP協議,無IP地址)

SYNOPSIS

       ifup IFACE [boot]

       ifdown IFACE

[root@clod ~]#ifdown eth0
[root@clod ~]#ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0C:29:00:07:39  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:2406 errors:0 dropped:0 overruns:0 frame:0
          TX packets:111 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:144360 (140.9 KiB)  TX bytes:7370 (7.1 KiB)

截取的一段網卡信息來做詳細解析

eno16777736: flags=4163<UP(開啟狀態),BROADCAST(支持廣播功能),RUNNING(運行當中),MULTICAST(支持組播/多播功能>mtu 1500(最大傳輸單元)
        inet 10.1.36.7  netmask 255.255.0.0  broadcast 10.1.255.255
        inet6 fe80::20c:29ff:fe97:7e0f  prefixlen 64  scopeid 0x20<link>
        ether(硬件地址) 00:0c:29:97:7e:0f  txqueuelen(傳輸隊列長度) 1000  (Ethernet)
        RX packets(接收到的報文數量) 422649  bytes 39102077 (37.2 MiB)
        RX errors(??!接收時的錯誤個數?。。?nbsp;0  dropped 475(??!丟包的數量!?。?nbsp; overruns 0(溢出)  frame 0
        TX packets(傳出的報文數量) 13518  bytes 1015076 (991.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

route命令:路由查看及管理

路由條目類型:

主機路由:目標地址為單個ip;

網絡路由:目標地址為IP網絡

默認路由:目標為任意主機,0.0.0.0/0.0.0.0

查看:route -n :以數字格式查看ip地址,不反解 

[root@clod ~]#route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.200.0   0.0.0.0         255.255.255.0   U     0      0        0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth1

添加:

route   add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

    -net 指定網段

    -host:指定主機

    target:目標主機

    netmask:子網掩碼

    gw Gw:網關

    dev:設備

    if:接口

route add -net 10.0.0.0/8 gw 192.168.10.1 dev eth1(可寫可不寫)

route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.10.1

route add -net 0.0.0.0/0.0.0.0 gw 192.168.10.1

route add defaults gw 192.168.10.1 效果同上  

刪除:

route  del [-net|-host] target [gw Gw] [netmask Nm]

示例: route del -net 10.0.0.0/8 [gw 192.168.10.1]#刪除指定網關

 route del default :刪除默認網關

netstat命令

Print network connections, routing tables, interface statis-tics, masquerade connections, and multicast memberships

顯示網絡連接,路由表,接口統計數據、偽裝鏈接和多播成員關系!

   顯示路由表 netstat -rn

    -r:顯示內核路由表

    -n:數字格式

   顯示網絡連接:

    netstat [–tcp|-t] [–udp|-u] [–udplite|-U] [–sctp|-S] [–raw|-w]   [–listening|-l] [–all|-a] 

        [–numeric|-n] [–extend|-e[–extend|-e]] [–program|-p]

    -t:#TCP協議的相關連接,鏈接均有其狀態; FSM(Final State Machine)

    -u:#UDP協議相關的鏈接

    -w:#raw socket相關的鏈接

    -l:#處于監聽狀態的鏈接

    -a:#所有狀態

    -p:#顯示相關進程及PID

    常用組合:

    -tan, -uan, -tnl, -unl, -tunlp

blob.png

blob.png

blob.png

傳輸層協議:

      tcp:面向連接的協議;通信開始之前,要建立一個虛鏈路,通信完成后還要拆除連接

      udp:無連接的協議;直接發送數據報文

ip: object {link, addr, route}, ss

  ip – show / manipulate routing, devices, policy routing and tunnels 

ip命令 :查看及管理 路由、設備、策略路由以及隧道

ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJECT := { link | addr | route | netns | neigh | } #常用OBJECT

注意:OBJECT大多可以簡寫,如果不知道格式也可以用tab鍵補全命令??!

注意:OBJECT可簡寫,各OBJECT有

blob.png

常用的有

ip link:

ip link show-display device attrubutes:查看二層鏈路信息

    ip link help #顯示簡要使用幫助

    ip link :network device configuration #網絡設備配置

    ip link set -change device attributes  #設置設備屬性

    dev NAME(default):指明要管理的設備,dev關鍵字可省略

    up和down #啟用和禁用

    multicast on/off :啟用或禁用多播功能

    name NAME:重命名

    mtu NUMBER:設置MTC的大小,默認為1500

    netns PID:ns為namespace,用于將接口移動到指定的網絡名稱空間 

例句:  

ip link set dev eth1 ip/down 開啟關閉eth1網卡

ip link set eth1 multicast off/on:多播

ip link set DEVICE  name eno000011 :改名要down了再改

ip netns add mynaet  (CentOS 7 用)

ip link set eno3355985 netns mynet(show eno3)將不可見了

ip netns exec mynet ip link show:查看mynet信息!!!

ip netns del mynet:刪除netns, eno將重現了

ip netns:ip -manage network namespaces:

ip netns list:列出所有的netns

ip netns add NAME:創建指定的netns

ip netns del NAME:刪除指定的netns

ip netns exec NAME COMMAND:在指定的netns中運行命令

ip addr  -protocol address  management.#ip網絡層管理

ip addr add -add new protocol address #增加新的協議

ip addr add IFADDR dev IFACE #新增一個備用地址

[label] NAME:為額外添加的地址指明接口別名;

有別名 ifconfig 就能顯示得到

[broadcast] ADDRESS:廣播地址;會根據IP和NETMASJ自動計算得到

[scope SCOPE_VALIE]:

global:全局可用;

link:接口可用

host:僅主機可用;

例句:

ip addr add 192.168.10.100/24 dev eth1

ip addr show eth1

ip addr list eth1

ip addr add 10.0.0.100/8 deb eth1

ip addr add 10.1.1.10/8 dev eth1 label eth1:0 

ip addr add 10.0.10.100/8 dev eth1 #加ip

ip addr add 10.0.20.100/8 dev eth1 #加ip

blob.png

ip address delete -delete protocol address  刪除

ip ddr delete IFADDR dev IFACE

ip addr del 10.0.10.100/8 dev eth1

ip addr show/list  -look at protocol address  顯示網卡接口信息    

[IFACE]:僅顯示指定接口的地址  dev可加可不加

blob.png

ip address flush-flush protocol address  清空所有ip地址

ip addr flush dev eth1 #清空eth1 的所有ip地址

ip route -routing  table management #路由表管理

ip route add  -add new route : #新增路由

ip route change – change route #更改路由

ip route replace – change or add new one #從置路由

ip route add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]

例句:

ip route add 192.168.0.0/24 via 10.0.0.1 dev eth1 #新增路由

ip route add 192.168.1.0/24 via 10.0.0.1 dev eth1 src 10.0.20.100#新增路由

ip route add default via 172.16.0.1 dev eth1 #默認路由

ip route add 192.168.0.0/24 via 10.0.0.1 dev eth1 src 10.0.20.100#新增路由

ip route add default via GW #默認路由

ip route list 查看路由信息

ip route delete – delete route #刪除路由條目

ip route del TYPE PREFIX

示例

ip route delete 192.168.1.0/24

ip route show – list routes #查看路由

TYPE PREFIX

例句

ip route show

ip route show src 172.16.100.6

ip route show 192.168.200.0/24

ip route get -get single route #獲取路由信息

ip route get TYPE PRIFIX

例句

ip route get 192.168.0.0/24

ip route flush – flush routing tables #清空路由表

示例

ip route flush

ip route flush 10/8

ip route flush 169.254/16 : 169開頭子碼為16的刪除

ip route flush 192.

   

 

ss命令 跟netstat用法一直,就不多做介紹了

  – another utility to investigate sockets

     

ss [options] [FILTER]

選項:

    -t: TCP協議的相關連接

    -u: UDP相關的鏈接

    -w:raw socket相關的鏈接

    -l:監聽狀態的鏈接

    -a:所有狀態的鏈接

    -n:數字格式

    -p:相關的程序及其PID

    -e:擴展格式信息

    -m:內存用量

    -o:計時器信息

    FILTER:=[state TCP-STAT] [EX[RESSION]

    

    TCP的常見狀態:

    TCP FSM:

    LISTEN:監聽

    ESTABLISEHD:建立的連接

    FIN_WAIT_1:

    FIN_WAIT_2:

    SYN_SENT:

    SYN_RECV:

    CLOSED:

EXPRESSION

dport=目標端口

sport=源端口

示例:'(dport=:22 or sport=:22)'

ss -tan '( dport = :22 or sport = :22 )' 過濾tcp 源端口目標端口為22的

ss -tan state ESTABLISHED

ss -o state established '( dport = :ssh or sport = :ssh )' 顯示所有已建立的ssh連接

ss -o state established '( dport = :http or sport = :http )' 顯示所有已建立的HTTP連接

   

原創文章,作者:ladsdm,如若轉載,請注明出處:http://www.www58058.com/47382

(0)
ladsdmladsdm
上一篇 2016-09-18 16:10
下一篇 2016-09-18 16:46

相關推薦

  • mysql基礎

      mysql基礎 數據模型: 數據模型:層次模型、網狀模型、關系模型、…… 關系模型: 二維關系:表     行:row, entity     列:colume, attribution 索引:數據結構,輔助完成數據查找;  &nbsp…

    Linux干貨 2016-11-01
  • N26_第二周作業

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 文件管理命令:cp,mv,rm 1、cp命令 功能說明:復制copy語法格式:        單源復制:  cp [OPTION]… [-T] SOURCE DEST  …

    Linux干貨 2017-02-21
  • Vim和nano的區別

    Vim和nano的區別 Linux下有很多文本編輯器,其中系統(不管哪個分支)都會自帶nano和vim這兩個最基本的編輯器。vim相當于vim的升級版。今天將重點分析一下vim與nano的各自功能及區別。 1.nano 直接在命令行中敲入nano newfile即可打開文件或新建文件。 可以看到第一行反白介紹了nano的版本號以及被編輯的文件名稱。接下來就是…

    2017-08-05
  • Homework Week-13 samba、vsftp文件共享

    1、建立samba共享,共享目錄為/data,要求:(描述完整的過程)   1)共享名為shared,工作組為magedu;   2)添加組develop,添加用戶gentoo,centos和ubuntu,其中gentoo和centos以develop為附加組,ubuntu不屬于develop組;密碼均為用戶名;   3)添加s…

    Linux干貨 2016-12-05
  • Hello World

    隨筆

    Linux干貨 2018-03-26
  • 邏輯卷管理器(LVM)-介紹

    邏輯卷管理器(LVM) §·邏輯卷管理器LVM介紹 2 ※·LVM邏輯卷的簡單描述 2 ※·LVM邏輯卷的好壞 2 ※·LVM結構組成部分 2 §·LVM的舉例分析 3 ※·LVM設備名稱 3 ※·LVM分區類型: 3 ※·LVM  PV相關命令 3 ※·LVM  VG相關命令 3 ※·LVM  LV 相關命令 3 ※·LVM …

    Linux干貨 2016-08-29
欧美性久久久久