linux網絡命令與軟件管理

1、描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景和區別

網橋也叫橋接器,是連接兩個局域網的一種存儲/轉發設備,用來連接不同網段。

集線器稱為“Hub”,主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把所有節點集中在以它為中心的節點上。

二層交換機工作于OSI模型的第2層(數據鏈路層),可識別數據包中的MAC地址信息,根據MAC地址進行轉發,并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。

三層交換機就是具有部分路由器功能的交換機,三層交換機的最重要目的是加快大型局域網內部的數據交換,所具有的路由功能也是為這目的服務的,能夠做到一次路由,多次轉發。對于數據包轉發等規律性的過程由硬件高速實現,而像路由信息更新、路由表維護、路由計算、路由確定等功能,由軟件實現。

路由器(Router),是連接因特網中各局域網、廣域網的設備,它會根據信道的情況自動選擇和設定路由,以最佳路徑,按前后順序發送信號。

2、IP地址的分類有哪些?子網掩碼的表示形式及其作用

IP地址的分類:

A類用于公網或大型局域網(地址范圍1.0.0.0到127.255.255.255,默認掩碼255.0.0.0),其中10.0.0.0/8是私網IP地址。

B類用于公網或中型局域網(地址范圍128.0.0.0-191.255.255.255,默認掩碼255.255.0.0),其中172.16.0.0/16 – 172.31.255.255/16是私網IP地址。

C類用于公網或小型局域網(地址范圍192.0.0.0-223.255.255.255,默認掩碼255.255.255.0),其中192.168.0.0/24是私網IP地址。

D類用于組播(地址范圍從224.0.0.0到239.255.255.255)

E類用于實驗

子網掩碼的表示形式:

①點分十進制,如255.255.255.0

②ip地址后加'/'以及[1-32]的數字

子網掩碼的作用:

①區別網絡標識和主機標識

②將一個大的IP網絡劃分為若干小的子網絡

3、計算機的分層模型

OSI模型:

應用層:提供應用程序之間通信;

表示層:處理數據格式、數據加密;

會話層:建立,維護,管理會話連接涉及操作系統和網絡接口和各種數據;

傳輸層:建立主機端到端連接。涉及物理設備:四層交換機

網絡層:尋址和路由選擇。涉及物理設備:路由器

數據鏈路層:提供介質訪問,鏈路管理,將數據分幀并處理流控制。涉及物理設備:網卡,網橋,交換機

物理層:比特流傳輸,將數據轉換為可通過物理介質傳送的電子信號。涉及物理設備:雙絞線、同軸電纜,集線器

TCP/IP模型:

應用層(對應OSI模型的應用層,會話層,表示層)

傳輸層(對應OSI模型的傳輸層)

網絡互聯層(對應OSI模型的網絡層)

網絡接口層(對應OSI模型的數據鏈路層和物理層)

4、如何將linux主機接入TCP/ip網絡

    使用ifconfig查看網卡配置信息,看主要使用的網卡名稱

    到/etc/sysconfig/network-scripts/目錄下查找對應的網卡配置文件

    主要配置項

    DEVICE(設備名稱)

    TYPE(設備類型。端口為Ethernet) 

    ONBOOT(系統啟動時讀?。?nbsp;

    BOOTPROTO=static(ip配置協議。當前為靜態ip,可設置DHCP,) 

    IPADDR(ip地址) 

    NETMASK(子網掩碼) 

    GATEWAY(網關地址) 

    DNS1(DNS服務器地址)

    重啟網絡服務 service network restart

5、為linux主機配置網絡信息的方式有哪些

    ifconfig eth0 IP/mask

    ip addr add IP device eth0

    Linux網絡屬性配置的tui(text user interface):system-config-network-tui

    使用setup圖形界面設置

6、寫一個腳本,探測主機之間的狀態

    #!/bin/bash

    #

    for i in { 1 254 };do

        ping -c 1 -w 1 172.16.250.$i &> /dev/null

        if [ $? -eq 0 ] ; then

            echo -e " \033[;32m 172.16.250.$i \033[0m"

        else

            echo -e " \033[;31m 172.16.250.$i \033[0m"

        fi

    done

7、描述每個網絡接口的配置文件各個參數的含義何其所對應的值  

    DEVICE:此配置文件應用到的設備;

    HWADDR:對應的設備的MAC地址;

    BOOTPROTO:激活此設備時使用的地址配置協議,常用的dhcp, static, none, bootp;

    NM_CONTROLLED:NM是NetworkManager的簡寫;此網卡是否接受NM控制;CentOS6建議為“no”;

    ONBOOT:在系統引導時是否激活此設備;

    TYPE:接口類型;常見有的Ethernet, Bridge;

    UUID:設備的惟一標識;

    PADDR:指明IP地址;

    NETMASK:子網掩碼;

    GATEWAY: 默認網關;

    DNS1:第一個DNS服務器指向;此處的DNS配置優先于/etc/resolv.conf文件中的DNS配置

    DNS2:第二個DNS服務器指向;

    USERCTL:普通用戶是否可控制此設備;

    PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許dhcp server分配的dns服務器指向信息直接覆蓋至/etc/resolv.conf文件中;

8、如何給網絡接口配置多個地址,有哪些方式

    ifconfig:

        ifconfig IFACE_ALIAS IPADDR

    ip:

        ip addr add ip_addr/mask dev IFACE label alias_label

    配置文件:

        ifcfg-IFACE_ALIAS

            DEVICE=IFACE_ALIAS

9、常用的網絡管理工具有哪些

    ifconfig命令

                    ifconfig [interface]

                        # ifconfig -a

                        # ifconfig INTERFACE [up|down]

                     ifconfig interface [aftype] options | address …

                         # ifconfig INTERFACE IP/mask [up]

                         # ifconfig INTERFACE IP netmask MASK

                 route命令

                     路由管理命令

                         查看:route -n

                         添加:route add

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

     

                                 目標:192.168.1.3  網關:172.16.0.1

                                 ~]# route add -host 192.168.1.3 gw 172.16.0.1 dev eth0

     

                                 目標:192.168.0.0 網關:172.16.0.1

                                 ~]# route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0

                                 ~]# route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0

     

                                 默認路由,網關:172.16.0.1

                                 ~]# route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1

                                 ~]# route add default gw 172.16.0.1

     

                         刪除:route del

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

     

                                 目標:192.168.1.3  網關:172.16.0.1

                                 ~]# route del -host 192.168.1.3

     

                                 目標:192.168.0.0 網關:172.16.0.1

                                 ~]# route del -net 192.168.0.0 netmask 255.255.255.0

     

                     netstat命令:

                         netstat – Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships

     

                         顯示網絡連接:

                             netstat [–tcp|-t] [–udp|-u] [–raw|-w] [–listening|-l] [–all|-a] [–numeric|-n] [–extend|-e[–extend|-e]]  [–program|-p]

                                 -t: tcp協議相關

                                 -u: udp協議相關

                                 -w: raw socket相關

                                 -l: 處于監聽狀態

                                 -a: 所有狀態

                                 -n: 以數字顯示IP和端口;

                                 -e:擴展格式

                                 -p: 顯示相關進程及PID

     

                                 常用組合:

                                     -tan, -uan, -tnl, -unl

     

                         顯示路由表:

                             netstat  {–route|-r} [–numeric|-n]

                                 -r: 顯示內核路由表

                                 -n: 數字格式

     

                         顯示接口統計數據:

                             netstat  {–interfaces|-I|-i} [iface] [–all|-a] [–extend|-e] [–program|-p] [–numeric|-n] 

     

                                 # netstat -i

                                 # netstat -I IFACE  

     

            ip命令:

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

     

                ip [ OPTIONS ] OBJECT { COMMAND | help }

     

                    OBJECT := { link | addr | route }

     

                link OBJECT:

                    ip link – network device configuration

     

                        set

                            dev IFACE

                            可設置屬性:

                                up and down:激活或禁用指定接口;

     

                        show

                            [dev IFACE]:指定接口

                            [up]:僅顯示處于激活狀態的接口

     

                    ip address – protocol address management

     

                        ip addr { add | del } IFADDR dev STRING

                            [label LABEL]:添加地址時指明網卡別名

                            [scope {global|link|host}]:指明作用域

                                global: 全局可用;

                                link: 僅鏈接可用;

                                host: 本機可用;

                            [broadcast ADDRESS]:指明廣播地址

     

                            例如:

                            ip addr add 192.168.1.111/24 dev eth0 label eth0:0

     

                        ip address show – look at protocol addresses

                            [dev DEVICE]

                            [label PATTERN]

                            [primary and secondary]

     

                        ip address flush – flush protocol addresses

                            使用格式同show

     

                    ip route – routing table management

     

                        ip route add

                            添加路由:ip route add TARGET via GW dev IFACE src SOURCE_IP

                                TARGET:

                                    主機路由:IP

                                    網絡路由:NETWORK/MASK

     

                                添加網關:ip route add defalt via GW dev IFACE

     

                        ip route delete

                            刪除路由:ip route del TARGET 

     

                        ip route show

                        ip route flush

                            [dev IFACE]

                            [via PREFIX]

     

            ss命令:

                格式:ss [OPTION]… [FILTER]

                    選項:

                        -t: tcp協議相關

                        -u: udp協議相關

                        -w: 裸套接字相關

                        -x:unix sock相關

                        -l: listen狀態的連接

                        -a: 所有

                        -n: 數字格式

                        -p: 相關的程序及PID

                        -e: 擴展的信息

                        -m:內存用量

                        -o:計時器信息

                        FILTER := [ state TCP-STATE ] [ EXPRESSION ]

10、linux系統軟件包管理方法

    CentOS系統上rpm命令管理程序包:

        安裝、卸載、升級、查詢、校驗、數據庫維護

        安裝:

            rpm {-i|–install} [install-options] PACKAGE_FILE …

                -v: verbose

                -vv: 

                -h: 以#顯示程序包管理執行進度;每個#表示2%的進度

     

                rpm -ivh PACKAGE_FILE …

     

                    [install-options]

                        –test: 測試安裝,但不真正執行安裝過程;dry run模式;

                        –nodeps:忽略依賴關系;

                        –replacepkgs: 重新安裝;

     

                        –nosignature: 不檢查來源合法性;

                        –nodigest:不檢查包完整性;

     

                        –noscipts:不執行程序包腳本片斷;具體分為以下四類:(可單獨選擇某類)

                            %pre: 安裝前腳本; –nopre

                            %post: 安裝后腳本; –nopost

                            %preun: 卸載前腳本; –nopreun

                            %postun: 卸載后腳本;  –nopostun

     

        升級:

            rpm {-U|–upgrade} [install-options] PACKAGE_FILE …

            rpm {-F|–freshen} [install-options] PACKAGE_FILE …

     

                upgrage:安裝有舊版程序包,則“升級”;如果不存在舊版程序包,則“安裝”;

                freeshen:安裝有舊版程序包,則“升級”;如果不存在舊版程序包,則不執行升級操作;

     

                rpm -Uvh PACKAGE_FILE …

                rpm -Fvh PACKAGE_FILE …

     

                其他選項與上面安裝一樣

     

                –oldpackage:降級;

                –force: 強行升級;

     

            注意:

                (1)uname -r 不要對內核做升級操作;Linux支持多內核版本并存,因此,對直接安裝新版本內核

                (2) 如果原程序包的配置文件安裝后曾被修改,升級時,新版本的提供的同一個配置文件并不會直接覆蓋老版本的配置文件,而把新版本的文件重命名(FILENAME.rpmnew)后保留

     

        查詢:

            rpm {-q|–query} [select-options] [query-options]

     

            [select-options]

                -a: 所有包

                -f: 查看指定的文件由哪個程序包安裝生成

                 

            # rpm -qf /etc/fstab

            setup-2.5.58-9.el5 

             

                -p /PATH/TO/PACKAGE_FILE:針對尚未安裝的程序包文件做查詢操作;

                查詢尚未安裝的程序包

                rpm -qlp /PATH/TO/PACKAGE_FILE

     

                –whatprovides CAPABILITY:查詢指定的CAPABILITY由哪個包所提供;

                –whatrequires CAPABILITY:查詢指定的CAPABILITY被哪個包所依賴;

     

            [query-options]

                –changelog:查詢rpm包的changlog (制作的,非作者發布的)

                -c: 查詢程序的配置文件

                -d: 查詢程序的生成文檔

                -i: information

                -l: 查看指定的程序包安裝后生成的所有文件;

                –scripts:程序包自帶的腳本片斷

                -R: 查詢指定的程序包所依賴的CAPABILITY;

                –provides: 列出指定程序包所提供的CAPABILITY;

                –conflicts:列出創建包與哪些包可能沖突

     

            用法:

                -qi PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE

                -qpi PACKAGE_FILE, -qpl PACKAGE_FILE, …

                -qa

     

        卸載:

            rpm {-e|–erase} [–allmatches] [–nodeps] [–noscripts]

               [–notriggers] [–test] PACKAGE_NAME …

     

     

        校驗:

            rpm {-V|–verify} [select-options] [verify-options]

     

               S file Size differs

               M Mode differs (includes permissions and file type)

               5 digest (formerly MD5 sum) differs

               D Device major/minor number mismatch

               L readLink(2) path mismatch

               U User ownership differs

               G Group ownership differs

               T mTime differs

               P caPabilities differ

     

        包來源合法性驗正及完整性驗正:

            完整性驗正:SHA256

            來源合法性驗正:RSA

     

     

            公鑰加密:

                對稱加密:加密、解密使用同一密鑰;

                非對稱加密:密鑰是成對兒的,

                    public key: 公鑰,公開所有人

                    secret key: 私鑰, 不能公開

     

     

            導入所需要公鑰:

                rpm –import /PATH/FROM/GPG-PUBKEY-FILE

     

                CentOS 7發行版光盤提供的密鑰文件:RPM-GPG-KEY-CentOS-7

     

        數據庫重建:

            rpm {–initdb|–rebuilddb}

                initdb: 初始化

                    如果事先不存在數據庫,則新建之;否則,不執行任何操作;

     

                rebuilddb:重建

                    無論當前存在與否,直接重新創建數據庫;

11、配置本地repo respository

     (1) 掛載光盤至某目錄,例如/media/cdrom

                # mount -r -t iso9660 /dev/cdrom /media/cdrom

     (2) 創建配置文件

           在CentOS7中

            name=

            baseurl=file:///

            gpgcheck=0

            enabled=

12、寫一個腳本

    #!/bin/bash

    ls /etc/rc.d/rc3.d/K*|awk '{printf "%s Stop \n", $1}'|awk -F'/' '{print $NF}'

    ls /etc/rc.d/rc3.d/S*|awk '{printf "%s Start \n", $1}'|awk -F'/' '{print $NF}'

    k_lines=`ls /etc/rc.d/rc3.d/K*|awk '{print NR}'|tail -1`

    s_lines=`ls /etc/rc.d/rc3.d/S*|awk '{print NR}'|tail -1`

    echo "k start lines is $k_lines"

    echo "s start lines is $s_lines"

13、寫一個腳本

    #/bin/bash  

    sum=0  

    for i in $*;do    

        if id $i &> /dev/null ;then      

            userid=`id -u $i`      

            let sum=$sum+$userid    

        else      

            echo "user $i not found"    

        fi  

    done  

    echo "User id sum is $sum"

14、寫一些腳本

    

    #/bin/bash  

    for i in $*;do    

        typed=0    

        typef=0    

        filenume=0    

        for ii in `ls $i`;do      

            let filenume=$filenume+1      

            if [ -d $i/$ii ];then        

                let typed=$typed+1      

            elif [ -f $i/$ii ]; then        

                let typef=$typef+1      

            fi    

        done    

            echo "$i"    

            echo "$i director $typed, file $typef"  

    done

15、寫一個腳本

    #!/bin/bash  

    for i in $*;do    

        if ! id $i > /dev/null ; then      

            echo "There is no for user $i"    

        else       

            userid=`id -u $i`       

            if [ $userid -ge 500 ];then        

                echo "user $i is average user "      

            else         

                echo "user $i is system user"      

            fi    

        fi  

    done

16、寫一個腳本

    (1) 添加10用戶user1-user10;密碼同用戶名;

    (2) 用戶不存在時才添加;存在時則跳過;

    (3) 最后顯示本次共添加了多少用戶;

   #!/bin/bash

    for i in {1..10}; do

        if id user$i &> /dev/null ;then

            echo "user$i exists."

            continue 3

        else

            useradd user$i

            if [ $? -eq 0 ]; then

                echo "user$i" | passwd –stdin user$i &> /dev/null

                echo "useradd user$i finished."

            let sum++

            fi

        fi

    done

    echo " useradd $sum user "

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

(0)
N24_xingxiuN24_xingxiu
上一篇 2016-12-18
下一篇 2016-12-18

相關推薦

  • 15-2用戶系統資源配額

    用戶資源系統配額 在系統中,允許系統用戶使用存儲空間,但是不能限制的讓用戶隨意使用存儲空間,對用戶存儲空間的設定就是用戶資源系統配額。 下面以/home 為例,通常如果系統中有一定的用戶,會把用戶的家目錄作為一個單獨的分區,從而實現更好的管理。下面具體講解如何把用戶家目錄從根系統分區分離出來進行磁盤配額。 1、拿出一個未使用的分區,把用戶家目錄的數據拷貝到新…

    Linux干貨 2016-12-02
  • yum與rpm包

    yum與rpm包 包命名和工具 包:分類和拆包 Application-VERSION-ARCH.rpm:主包 Application-devel-VERSION-ARCH.rpm 開發子包 Application-utils-VERSION-ARHC.rpm 其它子包 Application-libs-VERSION-ARHC.rpm 其它子包 包之間:可…

    Linux干貨 2017-05-08
  • linux進程及作業管理

    linux進程及作業管理 cpu指令權限等級: 特權級也叫hierarchical protection domains, 有的也叫用戶態. 是一種用來保護數據和阻止惡意行為的機制. 電腦操作系統提供不同權限訪問級別的資源. 特權級分為四級, 特權級0,1,2,3. 在windows中只使用特權級0和特權級3, 特權最高的是特權級0, 可以直接操作硬件, 如…

    Linux干貨 2016-09-19
  • OpenStack私有云部署

    前言 相信你一定對“云主機”一詞并不陌生吧,通過在Web頁面選擇所需主機配置,即可快速定制一臺屬于自己的虛擬主機,并實現登陸操作,大大節省了物理資源。但這一過程是如何實現的呢?本文帶來OpenStack Icehouse私有云實戰部署。 OpenStack 簡介 OpenStack是由網絡主機服務商Rackspace和美國宇航局聯合推出的一個開源項目,Ope…

    2016-12-19
  • 進程查看管理工具htop/dstat/top/ps

    ps:顯示系統當前進程的運行情況         選項與參數(一):            a:所有與終端相關的進程;    x:所有與終端無關的進程;    u:以用戶為中心組織進程狀態信息顯示;   &nb…

    2016-12-04
  • 不作死就不會死,運維的危險命令(2)

    命令是一種很有趣且有用的東西,但在你不知道會帶來什么后果的時候,它又會顯得非常危險。所以,在輸入某些命令前,請多多檢查再敲回車。

    2017-12-03

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-23 12:44

    總結的還是不錯的,能注意下整體排版會更不錯~繼續加油~

欧美性久久久久