Linux 创建网络会话

  RHEL7系统支持网络会话功能,允许用户在多个配置文件中快速切换(非常类似于firewalld防火墙服务中的区域技术)。如果我们在公司网络中使用笔记本电脑时需要手动指定网络的IP地址,而回到家中则是使用DHCP自动分配IP地址。这就需要麻烦地频繁修改IP地址,但是使用了网络会话功能后一切就简单多了—只需在不同的使用环境中激活相应的网络会话,就可以实现网络配置信息的自动切换了。

  可以使用nmcli命令并按照“connection add con-name type ifname”的格式来创建网络会话。假设将公司网络中的网络会话称之为company,将家庭网络中的网络会话称之为house,现在依次创建各自的网络会话。

  使用con-name参数指定公司所使用的网络会话名称company,然后依次用ifname参数指定本机的网卡名称(千万要以实际环境为准,不要照抄书上的eno16777728),用autoconnect no参数设置该网络会话默认不被自动激活,以及用ip4及gw4参数手动指定网络的IP地址:

[root@linuxprobe ~]# nmcli connection add con-name company ifname eno16777728 autoconnect no type ethernet ip4  gw4 192.168.10.1
Connection 'company' (cead2896-8b12-4f4c-9f27-91948d99f40f) successfully added.

使用con-name参数指定家庭所使用的网络会话名称house。因为我们想从外部DHCP服务器自动获得IP地址,因此这里不需要进行手动指定。

[root@linuxprobe ~]# nmcli connection add con-name house type ethernet ifname eno16777728
Connection 'house' (254ddbd4-f30c-48fd-b047-2cd7a3d9dd76) successfully added.

在成功创建网络会话后,可以使用nmcli命令查看创建的所有网络会话:

[root@linuxprobe ~]# nmcli connection show
NAME         UUID                                  TYPE            DEVICE
company      cead2896-8b12-4f4c-9f27-91948d99f40f  --ethernet  --
house        254ddbd4-f30c-48fd-b047-2cd7a3d9dd76  --ethernet  --
eno16777728  36644a00-01b9-4fcb-a765-748bc7b42672  --ethernet  eno16777728 

使用nmcli命令配置过的网络会话是永久生效的,这样当我们在公司时,启用company网络会话。

[root@localhost ~]# nmcli connection  up company
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
[root@localhost ~]# ifconfig
eno16777728: flags=<UP,BROADCAST,RUNNING,MULTICAST>  mtu
        inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::20c:29ff:fe1d:  prefixlen   scopeid 0x20<link>
        ether :0c::1d::  txqueuelen   (Ethernet)
        RX packets   bytes  (13.4 KiB)
        RX errors   dropped   overruns   frame
        TX packets   bytes  (10.3 KiB)
        TX errors   dropped  overruns   carrier   collisions 

lo: flags=<UP,LOOPBACK,RUNNING>  mtu
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::  prefixlen   scopeid 0x10<host>
        loop  txqueuelen   (Local Loopback)
        RX packets   bytes  (96.5 KiB)
        RX errors   dropped   overruns   frame
        TX packets   bytes  (96.5 KiB)
        TX errors   dropped  overruns   carrier   collisions 

如果大家使用的是虚拟机,请把虚拟机系统的网卡(网络适配器)切换成仅主机模式。


这样当我们下班回家后,顺手启用house网络会话,网卡就能自动通过DHCP获取到IP地址了。

[root@localhost ~]# nmcli connection up house
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
[root@localhost ~]# ifconfig
eno16777728: flags=<UP,BROADCAST,RUNNING,MULTICAST>  mtu
        inet 192.168.1.180  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe1d:  prefixlen   scopeid 0x20<link>
        ether :0c::1d::  txqueuelen   (Ethernet)
        RX packets   bytes  (228.0 KiB)
        RX errors   dropped   overruns   frame
        TX packets   bytes  (10.6 KiB)
        TX errors   dropped  overruns   carrier   collisions 

lo: flags=<UP,LOOPBACK,RUNNING>  mtu
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::  prefixlen   scopeid 0x10<host>
        loop  txqueuelen   (Local Loopback)
        RX packets   bytes  (33.1 KiB)
        RX errors   dropped   overruns   frame
        TX packets   bytes  (33.1 KiB)
        TX errors   dropped  overruns   carrier   collisions 

[root@localhost ~]# ping www.baidu.com
PING www.a.shifen.com (() bytes of data.
 bytes from  ttl= time=17.6 ms
 bytes from  ttl= time=17.5 ms
 bytes from  ttl= time=15.9 ms

如果大家使用的是虚拟机,请把虚拟机系统的网卡(网络适配器)切换成桥接模式,然后重启虚拟机系统即可。


如何如果大家使用的是虚拟机,这样设置“虚拟网络配置”,将达不到效果。

Linux 创建网络会话的更多相关文章

  1. 在linux 创建网络会话和绑定两块网卡

    1. 如果我们在公司网络中要手动指定网络的IP地址,当我们回到家里则是使用DHCP(动态主机配置协议)自动分配IP地址.这就有点麻烦了,因为要频繁的修改IP地址,所以接下来我们来创建网络会话----- ...

  2. linux 学习第十二天(网络会话connection、bond、ssh配置)

    一.网络会话 使用 con-name 参数指定公司所使用的网络会话名称company,然后依次用ifname 参 数指定本机的网卡名称,用autoconnect no 参数设置该网络会话默认不被自动激 ...

  3. Linux基本命令 网络命令

    概述 网络和监控命令类似于这些: hostname, ping, ifconfig, iwconfig, netstat, nslookup, traceroute, finger, telnet, ...

  4. 使用 Azure 创建网络文件系统

    本快速入门介绍了如何使用 Azure 文件存储实现网络文件共享.在本教程中完成的所有操作均符合 1 元试用条件. 本快速入门介绍了如何使用 Azure 文件存储实现网络文件共享.在本教程中完成的所有操 ...

  5. Kali Linux——迈向网络攻防

    自从进入大三的课程后,在已学的高数.线代.数论.概率论.信息论.通信等知识的技术上,开始了网络信息安全.网      络攻防的学习.俗话说得好,磨刀不误砍柴工,开始网络攻防之旅也势必要一个好的工具.然 ...

  6. Linux内核--网络栈实现分析(三)--驱动程序层+链路层(上)

    本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7497260 更多请看专栏,地址 ...

  7. Linux 上网络监控工具 ntopng 的安装

    当今世界,人们的计算机都相互连接,互联互通.小到你的家庭局域网(LAN),大到最大的一个被我们称为互联网.当你管理一台联网的计算机时,你就是在管理最关键的组件之一.由于大多数开发出的应用程序都基于网络 ...

  8. linux创建用户和用户组

    Linux创建用户.用户组 及 删除 在创建用户时,需要为新建用户指定一用户组,如果不指定其用户所属的工作组,自动会生成一个与用户名同名的工作组.创建用户user1的时候指定其所属工作组users,例 ...

  9. linux虚拟机网络连接模式 bridged, host-only, NAT

    最近安装了fedora9.0,却一直不能连接到外网,我用的是3G无线网卡上网的,起初以为是linux不支持3G无线方式的,可后来装了虚拟机ubuntu却可以上网,在后来用有ADSL网络连接的电脑安装f ...

随机推荐

  1. C# —— 枚举

    一.使用枚举的优点 枚举能够使代码更加的清晰,它允许使用描述性的名称表示整数值. 枚举使代码更易于维护,有助于确保给变量指定合法的.期望的值. 枚举使代码更易输入. 二.枚举说明 1.简单枚举 枚举使 ...

  2. Spring security获取当前用户

    1.如果在jsp页面中获取可以使用spring security的标签 页面引入标签 <%@ taglib prefix="sec" uri="http://www ...

  3. 知识点补充,set集合,深浅copy

    一:对之前知识点的补充 1;字符串(str)中的join方法.把列表转换成字符串 2;列表list[ ]和字典dic{ }在循环过程中不能字节删除.需要把要删除的内容记录在新列表中.然后在循环新列表, ...

  4. HZOJ 模板(ac)

    调了一天,恶心死我了……作者的题解水的一b…… 测试点1-6: 暴力修改查询即可,期望得分30. 测试点7-14: k=1e5,相当于没有限制,那么对于树上每个点建权值线段树,线段树合并即可. 期望的 ...

  5. iptables 限制访问规则

    iptables -I INPUT 1 -m state --state RELATED,ESTABLISHED -j ACCEPT把这条语句插在input链的最前面(第一条),对状态为ESTABLI ...

  6. spark sql thrift server

    ### create data ## cat ## echo "$(date ;echo ## cat }'";exit}' ..} do passwd) echo "$ ...

  7. WebStorm使用参考手册

    WebStorm 是 JetBrains 推出的一款商业的 JavaScript 开发工具 任何一个编辑器都需要保存(ctrl + s),这是所有win平台上编辑类软件的特点,但是webstorm编辑 ...

  8. 一个框架看懂优化算法之异同 SGD/AdaGrad/Adam

    Adam那么棒,为什么还对SGD念念不忘 (1) —— 一个框架看懂优化算法 机器学习界有一群炼丹师,他们每天的日常是: 拿来药材(数据),架起八卦炉(模型),点着六味真火(优化算法),就摇着蒲扇等着 ...

  9. SuperSocket 中内置的 Flash/Silverlight 策略服务器

    关键字: 策略服务器, Flash策略服务器, Silverlight策略服务器, Policy Server, Flash Policy Server, Silverlight Policy Ser ...

  10. 深入Java线程管理(五):线程池

    这几天主要是狂看源程序,在弥补了一些以前知识空白的同时,也学会了不少新的知识(比如 NIO),或者称为新技术吧. 线程池就是其中之一,一提到线程,我们会想到以前<操作系统>的生产者与消费者 ...