zoukankan      html  css  js  c++  java
  • [administrative][CentOS][NetworkManager] networkmanager (二)

    [administrative][CentOS][NetworkManager] 万恶的NetworkManager到底怎么用

    工程文档:

    https://wiki.gnome.org/Projects/NetworkManager

    RH admin 手册:

    https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Networking_Guide/

    nmcli使用手册:

    https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/networking_guide/sec-network_config_using_nmcli

    基本理解之后,直接看help。主要是理解connect,device,等这些概念。

    [root@D128 j]# nmcli help

    接下来,做一个例子试一下:

    增加一个tap设备:

    [root@D128 j]# nmcli connection 
    NAME   UUID                                  TYPE            DEVICE 
    ens33  e4672331-0638-4db8-b818-d6ff50f901af  802-3-ethernet  ens33  
    [root@D128 j]# nmcli connection add type tun mode tap ifname tap-nlb con-name tap-nlb autoconnect yes save yes
    Connection 'tap-nlb' (b3e1db65-4821-4139-95f5-9cba4035ee08) successfully added.
    [root@D128 j]# nmcli connection 
    NAME     UUID                                  TYPE            DEVICE  
    ens33    e4672331-0638-4db8-b818-d6ff50f901af  802-3-ethernet  ens33   
    tap-nlb  b3e1db65-4821-4139-95f5-9cba4035ee08  tun             tap-nlb 
    [root@D128 j]# 

    生成的配置文件在这里:

    [root@D128 j]# cat /etc/NetworkManager/system-connections/tap-nlb 
    [connection]
    id=tap-nlb
    uuid=b3e1db65-4821-4139-95f5-9cba4035ee08
    type=tun
    interface-name=tap-nlb
    permissions=
    
    [tun]
    mode=2
    
    [ipv4]
    dns-search=
    method=auto
    
    [ipv6]
    addr-gen-mode=stable-privacy
    dns-search=
    method=auto

    修改禁用tap的DHCP:

    [root@D128 ~]# nmcli connection modify tap-nlb ipv4.method link-local

    删除tap连接设备:

    [root@D128 ~]# nmcli connection delete tap-nlb 
    Connection 'tap-nlb' (b3e1db65-4821-4139-95f5-9cba4035ee08) successfully deleted.

    连接在up/down的时候会自动增加或删除设备,可以用nmcli device 查看。

    再来个例子,增加一个对外的网桥:

    1。加网桥:

    [root@D128 ~]# nmcli connection add type bridge ifname br-ext autoconnect yes save yes 
    Connection 'bridge-br-ext' (e886ae77-3a2c-4c93-aee0-4dea8b4d12a8) successfully added.
    [root@D128 ~]# nmcli connection show
    NAME           UUID                                  TYPE            DEVICE 
    bridge-br-ext  e886ae77-3a2c-4c93-aee0-4dea8b4d12a8  bridge          br-ext 
    ens33          e4672331-0638-4db8-b818-d6ff50f901af  802-3-ethernet  ens33  
    [root@D128 ~]# nmcli device
    DEVICE  TYPE      STATE                                  CONNECTION    
    ens33   ethernet  connected                              ens33         
    br-ext  bridge    connecting (getting IP configuration)  bridge-br-ext 
    lo      loopback  unmanaged                              --      

    2. 增加slave

    [root@D128 ~]# nmcli connection add type bridge-slave ifname ens33 master br-ext

    3. 切换连接,从网卡到bridge

    [root@D128 j]# nmcli connection down ens33
    [root@D128 j]# nmcli connection up bridge-slave-ens33

    4.  删掉原理的connect

    [root@D128 j]# nmcli connection delete ens33 

    5. reboot 测试

    6 成功。networkmanager学会了还是蛮好用的

    [root@D128 ~]# ip link
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br-ext state UP mode DEFAULT qlen 1000
        link/ether 00:0c:29:2f:cf:32 brd ff:ff:ff:ff:ff:ff
    3: br-ext: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT qlen 1000
        link/ether 00:0c:29:2f:cf:32 brd ff:ff:ff:ff:ff:ff
    [root@D128 ~]# ip addr
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br-ext state UP qlen 1000
        link/ether 00:0c:29:2f:cf:32 brd ff:ff:ff:ff:ff:ff
    3: br-ext: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
        link/ether 00:0c:29:2f:cf:32 brd ff:ff:ff:ff:ff:ff
        inet 192.168.50.128/24 brd 192.168.50.255 scope global dynamic br-ext
           valid_lft 1771sec preferred_lft 1771sec
        inet6 fe80::1ecf:c3cc:4ff6:ef29/64 scope link 
           valid_lft forever preferred_lft forever
    [root@D128 ~]# brctl show
    bridge name    bridge id        STP enabled    interfaces
    br-ext        8000.000c292fcf32    yes        ens33

    另外:

      nmcli加的tap设备,在nmtui中是看不见的。也不能编辑。所以首选还是nmcli。

  • 相关阅读:
    Atitit..组件化事件化的编程模型(2)Web datagridview 服务器端控件的实现原理and总结
    Atitit.dwr3 不能显示错误详细信息的解决方案,控件显示错误详细信息的解决方案 java .net php
    Atitit.实现继承的原理and方法java javascript .net c# php ...
    Atitit. 解压缩zip文件 的实现最佳实践 java c# .net php
    Atitit..文件上传组件选型and最佳实践总结(2)断点续传
    atitit.web的动态include 跟变量传递 java .net php
    Atitit. BigConfirmTips 控件 大数据量提示确认控件的原理and总结O9
    Atitit.guice3 ioc 最佳实践 o9o
    Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结提升用户体验and开发效率..
    atitit.提升开发效率使用服务器控件生命周期 asp.net 11个阶段 java jsf 的6个阶段比较
  • 原文地址:https://www.cnblogs.com/hugetong/p/8780424.html
Copyright © 2011-2022 走看看