Linux Network Manager

Linux Network Manager


  • Network简述

  • Switch,Router简述

  • Linux Network 配置方法

  • ifcfg家族命令

  • ip家族命令

  • rhel7 nmcli命令

  • 配置文件

Network简述

Network是什么? 
网络是将分布在地理位置不同的计算机通过物理线路的连接,在网络软件的管理下,实现数据通信的过程。 
Network有什么功能? 
实现数据通信,资源共享,负载均衡。

OSI七层参考模型

osi 
头文件添加

ps 上述两图引用自网络。。。为什么不自己做。。因为我懒。。。。

底层为高层提供服务,并相同层只能认知相同层,数据通过1->7时,自动添加头文件并转换源数据的格式。 
报文->数据包->数据帧->比特流

Switch,Router简述

Switch

二层Switch工作在OSI的第二层,数据通过广播的方式依靠MAC地址传输,能够划分冲突域,并搭建小型的局域网络。

Router

Router工作在OSI的第三层,能够连接不同的两个网络,转发网络封包,自动学习路由表,能够划分广播域。

Linux Network 配置方法

  1. 通过命令配置。 
    ifconfig,route,netstat 
    ip,nmcli,ss

  2. 通过配置文件。 
    /etc/sysconfig/network-scripts/ifcfg-*

  3. DHCP

ifcfg家族命令

ifcfg一系列命令是非常古老的命令,应用于各大发行版。

ifconfig

ifconfig [OPTION] [INTERFACE]:显示网卡信息。

    -v:vorbose 
    -a:all
    -s:short list

ifconfig < INTEFACE > [COMMAND]:设置网卡属性(ip,mask),是否启用。

    [IP/MASK]:设定IP与mask
    [UP|DOWN]:是否启用
    [[-]promisc]:混杂模式

配置立即生效

route

route [OPTION] [COMMAND]:不带参数即显示本机路由信息。

OPTION:
    -[4|6]:指定IP地址类型

COMMAND:
    add [-net|-host] ip/mask <gw> gw_address:添加一个NEW路由,指定目标ip/mask,下一跳地址。
    del [-net|-host] ip/mask <gw> gw_address:删除一个路由信息。
    dev [INTEFACE]:与add等命令搭配使用,强制路由信息与一个IF绑定。

netstat

netstat [OPTION] :显示网络信息。

    -r:显示路由信息。
    -I [device]:显示指定网络接口信息。
    -i:列出所有网络接口信息。
    -t:tcp
    -u:udp
    -n:以数字的形式。
    -a:all
    -l:显示listen状态的套接字信息。
    -e:显示扩展信息。
    -p:显示pid以及进程信息。
    -w:显示原始套接字信息。

IP家族命令

IP命令是比较新的一款网络管理命名,拥有更加强大的功能。

ip命令

ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]            PS.之后的子命令格式省略[OPTION]选项

OPTION    
        -s:详细信息。
        -f [Protocol]:指定强制使用的协议种类,默认为inet,any。

ip link [COMMAND]:网络设备设置。

    show:显示所有网络设备信息。
        ip link show [INTEFACE]

    add:创建一个虚拟设备。
        ip link add [COMMAND [ARGUMENTS]]
            [name [NAME]]:指定设备名称。
            [address [MAC_ADDRESS]]:指定MAC地址。
            ...(更加多设置请参考 man ip-link )

    delete :删除一个虚拟设备。
        ip link delete [INTEFACE]

    set:修改设备属性。
        ip link set [INTEFACE] [COMMAND [ARGUMENTS]] type [TYPE|
                       [TYPE]= bridge|can|dummy|ifb|ipoib|macvlan|vcan|veth|vlan|vxlan|ip6tnl|ipip|sit 
            [up|down]:启动/关闭设备。
            [name [NEW_NAME]]:修改设备名称。
            [promisc [on|off]]:混杂模式。
            [arp [on|off]]:    地址解析协议。
            [address [MAC_ADDRESS]]:修改MAC地址。
            [mtu [#]]:修改最大传输单元。
            [txqueuelen [#]]:修改传输队列的长度。
            [multicast [on/off]]:组播。

ip address [COMMAND]:协议地址管理。

    show:显示协议地址。
        ip address show [COMMAND[ARGUMENTS]]
            [dev [INTEFACE]]:查看指定设备名称的信息。
            [up]:查看运行的设备。
            [primary|secondary]:only list primary|secondary addresses。
            ...

    add:创建一个新的协议地址。
        ip address add <IP_address> <dev [DEV_NAME]> [COMMAND[ARGUMENTS]]
            [scope [global|site|link|host]]:指定作用域,global全局,site本地站点,link当前设备,host当前主机。

    del:删除一个协议地址。
        ip address del <IP_address> <dev [DEV_NAME]>

    flush:清除协议地址。
        ip address flush [dev [DEV_NAME]] [scope [SCOPE-ID]]

ip route [COMMAND]:路由管理。

    list:列出route信息。
        ip route list

    add:创建一个路由信息。
        ip route add <target_ip> via <next_jump_address> dev [DEV]
            [dev [DEV]]:绑定网络接口,即所有到此地址的包,都要从此网卡经过。

    del:删除一个路由信息。
        ip route del <target_ip>

ss命令:显示网络状态信息

ss [OPTION]

    -t:tcp
    -u:udp
    -n:numble
    -a:all
    -l:listen
    -e:扩展
    -4:ipv4
    -6:ipv6
    -w:原始套接字

RHEL7 nmcli命令

nmcli [OPTIONS] OBJECT [COMMAND]

nmcli general [COMMAND]:常规NM状态。

    status   显示状态
    hostname  显示主机名

nmcli networking [COMMAND]:设置网络状态。

    [off|no]

nmcli radio [COMMAND]:显示和设置交换广播状态[wifi]。

    all  显示所有。
    wifi [on|off]
    wwan [on|off]
    wimax [on|off]

nmcli connection [COMMAND]:开始,停止和管理网络连接。

    show [INTERFACE]
    [INTEFACE] [DOWN|UP] :开启/关闭网络接口
    delete [INTEFACE] 
    add setting  属性值 ...
    modify [INTEFACE] [+|-]setting  属性值 ...

    setting:
        ipv4.dns
        ipv4.gateway
        ...

nmcli device [COMMAND]:显示和管理网络接口。

    status:状态信息。
    show [INTERFACE]:详细信息。
    connect [INTERFACE]:激活网络接口。
    disconnect [INTERFACE]:关闭网络接口。
    delete [INTERFACE]:删除。
    wifi [list [ifname <ifname>] [bssid <BSSID>]]
      wifi connect <(B)SSID> [password <password>] [wep-key-type key|phrase] [ifname <ifname>] :连入wifi。
                     [bssid <BSSID>] [name <name>] [private yes|no]
    wifi rescan [[ifname] <ifname>]:重新扫描wifi。

配置文件配置

指定DNS服务器:

/etc/resolv.conf  
    nameserver DNS_Server_IP1  
    nameserver DNS_Server_IP2  
    nameserver DNS_Server_IP3

配置网络接口文件:

/etc/sysconfig/network-scriptes/ifcfg-*    

    [IPADDR]=IP        ip地址。
    [NETMASK]=MASK        子网掩码。    
    [GETEWAY]=GW        网关。
    [DNS1]=DNS1        dns服务器1
    [DNS2]=DNS2        dns服务器2

    [DEVICE]=DEVICE_NAME    设备名称。
    [ONBOOT]=yes|no    是否在系统引导时激活此设备。
    [BOOTPROTO]=Protocol_TYPE   地址配置协议类型,常用的有DHCP STATIC BOOTP NONE
    [NM_CONTROLLED]=yes|no    是否允许接受Network Manager的管理。
    [TYPE]=INTFACE_TYPE   指定网络接口类型,常用的有Ethernet Bridge
    [UUID]=UUID    

    [USERCTL]=yes|no    是否允许普通用户控制此设备。
    [PEERDNS]=yes|no    如果BOOTPROTO的值为DHCP,是否允许dhcp server分配的dns服务器指向信息直接覆盖/etc/resolv

配置路由文件:

/etc/sysconfig/network-scriptes/route-*
    风格一:
            target_ip  via next_jump
    风格二:
            ADDRESS#=target_ip
            NETMASK$=MASK
            GETEWAY#=NEXT_JUMP

    ps 两种风格在一个配置文件中只能选择一种。

网络接口名称配置文件:

/etc/udev/rules.d/70.persistent-net.rules

接口命名规则:

1.集成设备的索引信息,eno# 
2.主板PCI-E扩展槽信息,ens# 
3.硬件接口物理位置信息,enp#s# 
4.MAC地址,enx# 
5.默认名,eth#

PS RHEL7网络接口的具体命名规则请自行查询。

如果想要将文件名改回eth#,可以将/etc/udev/rules.d/下所有文件都链接到/dev/null
[RHEL7]
    ln -s /dev/null  [/etc/udev/rules.d/FILE_NAME]

原创文章,作者:Net18_肖肖,如若转载,请注明出处:http://www.178linux.com/13834

(2)
Net18_肖肖Net18_肖肖
上一篇 2016-04-05
下一篇 2016-04-05

相关推荐

  • Linux系统操作练习-2

    1、显示当前系统上root、fedora或user1用户的默认shell: 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(): 3、使用echo命令输出一个绝对路径,使用grep取出基名;扩展:取出路径名: 扩展: 4、找出ifconfig命令结果中的1-255之间的数字: 5、挑战题:写一个…

    2017-11-25
  • 软件包管理(rpm篇)

    软件包管理(rpm篇)静态和动态链接    链接主要作用是把各个模块之间相互引用的部分处理好,使得各个模块之间能够正确地衔接,分为静态链接和动态链接    静态链接        把程序对应的依赖库复制一份到包&nbsp…

    Linux干货 2017-04-24
  • N26第一周博客作业

    1.       计算机的组成及其功能 计算机由以下5部分组成: 控制器:控制器是计算机的中枢神经,功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各个部分工作及内存与外存的访问等。 运算器:运算器功能主要是对数据进行各种算术和逻辑运算,即对数据进行加工处理。…

    Linux干货 2016-12-28
  • lamp安装配置详细过程(把以前的笔记贴上来)

    准备; 首先进入/usr/local/目录 #cd /usr/local 删除所有安装过的php mysql apache 以及libxml 首先查看目前 /usr/local目录下面的内容 #ls –l 如果看到php5 php apache2 apache mysql mysql5 libxml libxml2字样的目录都将其删除具体命令如下 #rm –…

    Linux干货 2015-05-01
  • Linux如何进行分区和目录管理

    第七周作业   1、创建一个10G分区,并格式为ext4文件系统: 1、要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包括acl; ~]# mke2fs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1 2、挂载至/data/mydata目录,要求挂载时禁止程序自动运行,县不更新…

    2017-09-18
  • 计算机基础入门及Pyhton基础

    编程基础 计算机基础 程序(program识别并执行的指令 计算机是执行程序的机器 现代计算机 艾伦·麦席森·图灵奠定了现在计算机的逻辑工作方式的基础 冯·诺依曼提出计算机应该有五大部件组成:输入/输出设备、运算器、控制器、输出设备。这是现代计算机基本框架。 语言基础 计算机语言:与计算机之间交互的语言 机器语言:一定位数的二进制代码成为机器指令,指令集合则…

    2017-09-16

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:42

    markdown使用不的错,但还欠火候,加油