Centos7系统配置上的变化二网络管理基础_第1页
Centos7系统配置上的变化二网络管理基础_第2页
Centos7系统配置上的变化二网络管理基础_第3页
Centos7系统配置上的变化二网络管理基础_第4页
Centos7系统配置上的变化二网络管理基础_第5页
免费预览已结束,剩余24页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Centos7系统配置上的变化(二)网络管理基础上篇简单介绍了CentOS7在服务和网络方面的一点变化,先前很多烂熟于心的操作指令已经不适用了,不管是否习惯,总要接受、熟悉这些变化。写上篇的时候还没有最小安装的ISO(CentOS-7.0-1406-x86_64-Minimal.iso),后来安装了首先发现ifconfig、netstat、route、arp都没有了,在哪儿呢?[iyunv@centos7~]#yumsearchifconfig========================Matched:ifconfig=========================net-tools.x86_64:Basicnetworkingtools[iyunv@centos7-]#哦,最小安装默认没有包含这些老工具,如果非用不可,就yuminstallnet-tools吧,但我就是要看看不用它们我们怎么来管理网络。我们将要用到的是ip指令,ss指令和NetworkManager的两个工具nmtui,nmcli。老实说,这几个工具更加强大了,但还真不太容易习惯呢。一、ipss指令替代ifconfigroutearpnetstat1、ip指令入门ip[OPTIONS]OBJECT{COMMAND|help}OBJECT和COMMAND可以简写到一个字母iphelp可以查到OBJECT列表和OPTIONS,简写iphiphelp查看针对该OBJECT的帮助,比如ipaddrhelp,简写ipahipaddr查看网络接口地址,简写ipa查看网络接口地址,替代ifconfig:[iyunv@centos7-]#ipaddrlo:mtu65536qdiscnoqueuestateUNKNOWNlink/loopback00:00:00:00:00:00brd00:00:00:00:00:00inet/8scopehostlovalid_lftforeverpreferred_lftforeverinet6::1/128scopehostvalid_lftforeverpreferred_lftforeverenp0s3:mtu1500qdiscpfifo_faststateUPqlen1000link/ether08:00:27:15:35:d2brdff:ff:ff:ff:ff:ffinet10/24brd55scopeglobalenp0s3valid_lftforeverpreferred_lftforeverinet6fe80::a00:27ff:fe15:35d2/64scopelinkvalid_lftforeverpreferred_lftforever[iyunv@centos7-]#网络接口统计信息[iyunv@centos7-]#ip-slink1:lo:mtu65536qdiscnoqueuestateUNKNOWNmodeDEFAULTlink/loopback00:00:00:00:00:00brd00:00:00:00:00:00RX:bytespacketserrorsdroppedoverrunmcast000000TX:bytespacketserrorsdroppedcarriercollsns0000002:enp0s3:mtu1500qdiscpfifo_faststateUPmodeDEFAULTqlen1000link/ether08:00:27:15:35:d2brdff:ff:ff:ff:ff:ffRX:bytespacketserrorsdroppedoverrunmcast8135366131454000456TX:bytespacketserrorsdroppedcarriercollsns646297244100002、iproute显示和设定路由显示路由表[iyunv@centos7-]#iprouteshowdefaultvia54devenp0s3protostaticmetric1024

/24devenp0s3protokernelscopelinksrc10太难看了,格式化一下(显示的是默认网关和局域网路由,两行的内容没有共通性):[iyunv@centos7tmp]#iprouteshow|column-tdefaultvia54devenp0s3protostaticmetric1024/24devenp0s3protokernelscopelinksrc10添加静态路由[iyunv@centos7~]#iprouteadd/24via53devenp0s3[iyunv@centos7-]#[iyunv@centos7-]#iprouteshow|column-tdefaultviadefaultviaenp0s3protostatic/24viaenp0s3protostatic/24devkernelscopelink54devmetric102453devmetric1enp0s3protosrc10[iyunv@centos7-]#[iyunv@centos7-]#pingPING()56(84)bytesofdata.64bytesfrom:icmp_seq=1ttl=63time=1.77ms64bytesfrom:icmp_seq=1ttl=63time=1.08ms64bytesfrom:icmp_seq=1ttl=63time=1.57msAC删除静态路由只需要把add替换成del,或者更简单的只写目标网络[iyunv@centos7-]#iproutedel/24#修改于2014-10-8========================================3、设置永久的静态路由iproute指令对路由的修改不能保存,重启就没了。把iproute指令写到/etc/rc.local也是徒劳的。RHEL7官网文档没有提到/etc/sysconfig/static-routes,经测试此文件已经无效;/etc/sysconfig/network配置文件仅仅可以提供全局默认网关,语法同Centos6一样:GATEWAY=;永久静态路由需要写到/etc/sysconfig/network-scripts/route-interface文件中,比如添加两条静态路由:[iyunv@centos7-]#echo,/24via53devenp0s3'>/etc/sysconfig/network-scripts/route-enp0s3[iyunv@centos7-]#echo'/24via53devenp0s3'>>/etc/sysconfig/network-scripts/route-enp0s3注意第二条指令的重定向符号是>>。重启计算机、或者重新启用设备enp0s3才能生效(指令:nmclidevconnectenp0s3)。如果要清除永久静态路由,可以删除ifcfg-enp0s3文件或者注释掉文件里的相应静态路由条目,重启计算机。想要让修改后的静态路由立即生效,只能用iproutedel手工删除静态路由条目。实验的过程中出现两个奇怪的现象:1)有时候路由生效了但是在iprouteshow却没有显示,重启计算机后是肯定显示的,原因暂时不明。2)存在多个网卡时,默认路由似乎是随机经由某个网卡设备。检查了所有连接配置文件后发现,第一网卡的默认连接配置文件ifcfg-eth0设置了GATEWAY0(此设置会覆盖/etc/sysconfig/network定义的全局默认网关),第二网卡的连接配置文件ifcfg-eth1使用的是dhcp,会在启动时也分配默认网关,两个默认网关让计算机糊涂了。这是在测试系统里经常发生的现象,生产系统一般不会让网卡用dhcp,或者即使是用了也会仔细分配默认网关防止冲突。其他需要注意的:1)连接配置文件ifcfg-*里可以设置多个GATEWAY,一般第一个是GATEWAY0,然后GATEWAY1,GATEWAY2...,尾号最大的有效;2)如果必须在/etc/sysconfig/network文件定义全局网关,连接配置文件ifcfg-*就不要设置GATEWAY了,dhcp的连接要注意dhcp服务器不要定义默认网关。3)ifcfg-enp0s3文件改名为ifcfg-eth0后,route-enp0s3文件也要改名为route-eth0o#修改于2014-10-8========================================4、用ipneighbour代替arp-n[iyunv@centos7-]#ipnei54devenp0s3lladdrb8:a3:86:37:bd:f8STALE00devenp0s3lladdr90:b1:1c:94:a1:20DELAY53devenp0s3lladdr00:09:0f:85:86:b9

STALE可以用ipneiadd添加静态arp条目,ipneidelete删除静态arp条目,见/lidp/archive/2009/12/02/1697480.html5、用ss代替netstat对应netstat-ant[iyunv@centos7~]#ss-antStateRecv-QSend-QLocalAddress:PortPeerAddress:PortLISTEN0100:25LISTEN0128*:22ESTAB0010:2200:53233・・・*TOC\o"1-5"\h\zLISTEN0・・・*100::1:25・・・*LISTEN0・・・*128:::22对应netstat-antp[iyunv@centos7tmp]#ss-antpStateRecv-QSend-QLocalAddress:PortPeerAddress:PortLISTEN0100:users:(('master',1817,13))LISTEN0128:users:(('sshd',1288,3))ESTAB0000:59413users:(('sshd',2299,3))LISTEN0100::users:(('master',1817,14))LISTEN0128・・*:25*:2210:22::1:25:::22users:(('sshd',1288,4))[iyunv@centos7tmp]#看着真的很别扭,不管多宽的终端屏,users:部分都会折到下一行,其实是在一行的。格式化一下,内容整齐了,但是标题行串了:[iyunv@centos7tmp]#ss-antp|column-tStateRecv-QSend-QLocalStateRecv-QSend-QLocalAddress:PortPeerAddress:PortPeerAddress:PortLISTEN0100LISTEN0100:25users:(('master',1817,13))LISTEN0128*:22users:(('sshd',1288,3))ESTAB0010:22・・・*・・・*00:59413users:(('sshd',2299,3))・・・*・・・*LISTEN0100::1:25users:(('master',1817,14))LISTEN0128:::22users:(('sshd',1288,4))5、网络配置文件:/etc/sysconfig/network说是全局设置,默认里面啥也没有,可以添加全局默认网关/etc/hostname用nmtui4修改hostname后,主机名保存在这里/etc/resolv.conf保存DNS设置,不需要手工改,nmtui里面设置的DNS会出现在这里/etc/sysconfig/network-scripts/连接酉己置信息ifcfg文件/etc/NetworkManager/system-connections/VPN、移动宽带、PPPoE连接6、旧的network脚本和ifcfg文件Centos7开始,网络由NetworkManager服务负责管理,相对于旧的/etc/init.d/network脚本,NetworkManager是动态的、事件驱动的网络管理服务。旧的/etc/init.d/network以及ifup,ifdown等依然存在,但是处于备用状态,即:NetworkManager运行时,多数情况下这些脚本会调用NetworkManager去完成网络配置任务;NetworkManager么有运行时,这些脚本就按照老传统管理网络。这部分我们回头作为专题来搞搞。[iyunv@centos7-]#/etc/init.d/networkstartStartingnetwork(viasystemctl):[OK]注意(viasystemctl),它的作用跟systemctlrestartnetwork一样的。二、nmtui配置基本网络连接nmtui属于curses-basedtextuserinterface(文本用户界面),类似Centos6的setup工具,但只能编辑连接、启用/禁用连接、更改主机名。系统初装之后可以第一时间用nmtui配置网络,挺方便。看图吧,功能跳转可以用tab键或光标键,用空格或回车执行。每个子功能完成了、退出了或取消了会直接回命令行(觉得不方便就试试nmtuihelp,有直达的方法)。在命令行运行nmtui添加连接,支持的连接很丰富啊,还有WiFi呢。但是vpn在哪?呵呵,nmtui目前还不支持。编辑连接。想编哪里就跳到哪里,如果不喜欢enp0s3这样的连接名,可以在Profilename处改掉,后面会说改名的好处。注意,编辑复选框只能用空格启用/禁用连接,远程连接的时候可以试试执行一下,然后以泪洗面吧。。。。改主机名,改完后重启才有效,不想重启就回命令行执行hostname,注销再登录就好了。三、nmcli和其他网络设置nmcli的功能要强大、复杂的多[iyunv@centos7-]#nmclihelpUsage:nmcli[OPTIONS]OBJECT{COMMAND|help}OPTIONS-t[erse]terseoutput-p[retty]prettyoutput-m[ode]tabular|multilineoutputmode-f[ields]|all|commonspecifyfieldstooutpute[scape]yes|noescapecolumnsseparatorsinvalues-n[ocheck]don'tchecknmcliandNetworkManagerversionsa[sk]askformissingparametersw[ait]settimeoutwaitingforfinishingoperations-v[ersion]showprogramversionh[elp]printthishelpOBJECTg[eneral]NetworkManager'sgeneralstatusandoperationsn[etworking]overallnetworkingcontrolr[adio]NetworkManagerradioswitchesc[onnection]NetworkManager'sconnectionsd[evice]devicesmanagedbyNetworkManagerOBJECT和COMMAND可以用全称也可以用简称,最少可以只用一个字母,建议用头三个字母。OBJECT里面我们平时用的最多的就是connection和device,这里需要简单区分一下connection和device。device叫网络接口,是物理设备connection是连接,偏重于逻辑设置多个connection可以应用到同一个device,但同一时间只能启用其中一个connection。这样的好处是针对一个网络接口,我们可以设置多个网络连接比如静态IP和动态IP再根据需要up相应的connection。上篇说了,/etc/udev/rules.d/70-persistent-net.rules文件没有了,新添加的网卡NetworkManager自动识别。我们现在试试,给Virtualbox虚拟机增加第二块网卡,虚拟机启动后直接可以看到并且生效了。[iyunv@centos7-]#nmcliconshowNAMEUUIDTYPEDEVICEWiredconnection10c451785-b098-4c5c-994d-9107171b439d802-3-ethernetenp0s8enp0s3295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3“Wiredconnection1”是新增的网络连接,对应的网络接口叫enp0s8;“enp0s3”是最初的网络连接,默认与网络接口同名。我们可以用nmtui把两个连接改成我们熟悉的名字(nmcli也能,但比较麻烦哦b改完了看看连接:[iyunv@centos7-]#nmcliconshowNAMEUUIDTYPEDEVICEeth10c451785-b098-4c5c-994d-9107171b439d802-3-ethernetenp0s8eth0295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3这样就舒服多了!看看设备:[iyunv@centos7-]#nmclidevshowenp0s3GENERAL.DEVICE:enp0s3GENERAL.TYPE:ethernetGENERAL.HWADDR:08:00:27:15:35:D2GENERAL.MTU:1500GENERAL.STATE:100(connected)GENERAL.CONNECTION:eth0GENERAL.CON-PATH:/org/freedesktop/NetworkManager/ActiveConnection/4TOC\o"1-5"\h\zWIRED-PROPERTIES.CARRIER:onIP4.ADDRESS[1]:ip=10/24,gw=192,168.150.254IP4.DNS[1]:54IP6.ADDRESS[1]:ip=fe80::a00:27ff:fe15:35d2/64,gw=::[iyunv@centos7~]#[iyunv@centos7~]#nmclidevshowenp0s8GENERAL.DEVICE:enp0s8GENERAL.TYPE:ethernetGENERAL.HWADDR:08:00:27:98:D1:B7GENERAL.MTU:1500GENERAL.STATE:100(connected)GENERAL.CONNECTION:eth1GENERAL.CON-PATH:/org/freedesktop/NetworkManager/ActiveConnection/3WIRED-PROPERTIES.CARRIER:onIP4.ADDRESS[1]:ip=5/24,gw=

ip=ip=IP6.ADDRESS[1]:fe80::a00:27ff:fe98:d1b7/64,gw=::[iyunv@centos7-]#但是试试用连接名查设备呢?[iyunv@centos7-]#nmclidevshoweth0Error:Device'eth0'notfound.用设备名查连接也是一样出错:[iyunv@centos7-]#nmcliconshowenp0s3Error:enp0s3-nosuchconnectionprofile.这回能看清楚了吧?懂得了连接和设备的区别,在一些指令帮助里面有的参数需要connection,有的需要device,就不会糊涂了。需要注意的是,enp0s3设备对应的连接名改为eth0,但对应的ifcfg文件并没有改名,我们改改试试,改之前先备份原配置文件到其他目录(注意,不能备份到network-scripts目录!)b[iyunv@centos7network-scripts]#catifcfg-enp0s3TYPE=EthernetBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=noIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eth0UUID=295e1841-0ff3-4db9-8800-4e25fc2944daONBOOT=yesIPADDR0=10PREFIX0=24GATEWAY0=54DNS1=54HWADDR=08:00:27:15:35:D2[iyunv@centos7network-scripts]#[iyunv@centos7network-scripts]#cpifcfg-enp0s3/root/[iyunv@centos7network-scripts]#mvifcfg-enp0s3ifcfg-eth0[iyunv@centos7network-scripts]#[iyunv@centos7network-scripts]#systemctlrestartnetwork[iyunv@centos7network-scripts]#没有问题,配置文件改名成功,强迫症又一次胜利了,耶!我们还可以看到,ifcfg-eth0里面没有参数指明设备enp0s3,唯一与设备enp0s3相对应的是MAC地址(HWADDR08:00:27:15:35:D2}现在试试增加一个针对新网络接口enp0s8的连接,现有连接是eth1:[iyunv@centos7network-scripts]#catifcfg-eth1HWADDR=08:00:27:98:D1:B7TYPE=EthernetBOOTPROTO=dhcpDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eth1UUID=0c451785-b098-4c5c-994d-9107171b439dONBOOT=yes嗯,是自动获得IP的。我们新建一个连接eth1-1,分配固定IP,用nmtui可以很容易的建立[iyunv@centos7~]#nmcliconshowNAMEUUIDTYPEDEVICEeth1-1ef5c3fbc-f07a-4d6e-9f4d-83f239ffc2e9802-3-ethernet--eth10c451785-b098-4c5c-994d-9107171b439d802-3-ethernetenp0s8eth0295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3只是增加了一个连接,其他的没有变化。我们启动新连接eth1-1[iyunv@centos7-]#nmcliconupeth1-1Connectionsuccessfullyactivated(D-Busactivepath:/org/freedesktop/NetworkManager/ActiveConnection/2)[iyunv@centos7~]#[iyunv@centos7~]#nmcliconshowNAMEUUIDTYPEDEVICEeth1-1ef5c3fbc-f07a-4d6e-9f4d-83f239ffc2e9802-3-ethernetenp0s8eth10c451785-b098-4c5c-994d-9107171b439d802-3-ethernet--eth0295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3[iyunv@centos7-]#[iyunv@centos7~]#nmcli-t-fIP4.ADDRESSdevshowenp0s8IP4.ADDRESS[1]:ip=10/24,gw=“nmcli-t-fIP4.ADDRESSdevshowenp0s8”是以脚本友好的方式显示网络接口信息。现在可以很明显的看到,将连接eth1-1up了之后,eth1-1占据了原来由eth1占据的DEVICEenp0s8,并且IP地址已经是指定的10/24了。[iyunv@centos7network-scripts]#catifcfg-eth1-1TYPE=EthernetBOOTPROTO=noneIPADDR0=10PREFIX0=24GATEWAY0=DNS1=DEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=noNAME=eth1-1UUID=ef5c3fbc-f07a-4d6e-9f4d-83f239ffc2e9DEVICE=enp0s8ONBOOT=yesifcfg-eth1-1文件里没有HWADDR参数,但是多了一个DEVICE参数,等于enp0s8,你可以对比一下ifcfg-eth1看看区别在哪。连接的配置文件ifcfg-*,可以用DEVICE指定设备名,也可以用HWADDR指定设备的MAC地址,最终结果都一样的指向某个设备(网络接口b我们再试试用nmcli增加连接:[iyunv@centos7-]#nmcliconaddcon-nameeth1-2ifnameenp0s8typeethernetip420/24gw4Connection'eth1-2'(468815f5-ce97-43bd-904a-3078e2e59fec)successfullyadded.[iyunv@centos7-]#[iyunv@centos7~]#nmcliconshowNAMEUUIDTYPEDEVICEeth1-1ef5c3fbc-f07a-4d6e-9f4d-83f239ffc2e9802-3-ethernetenp0s8eth10c451785-b098-4c5c-994d-9107171b439d802-3-ethernet--eth0295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3eth1-2468815f5-ce97-43bd-904a-3078e2e59fec802-3-ethernet--[iyunv@centos7~]#[iyunv@centos7~]#nmcliconupeth1-2Connectionsuccessfullyactivated(D-Busactivepath:/org/freedesktop/NetworkManager/ActiveConnection/3)[iyunv@centos7~]#[iyunv@centos7~]#nmcliconshowNAMEUUIDTYPEDEVICEeth1-1ef5c3fbc-f07a-4d6e-9f4d-83f239ffc2e9802-3-ethernet--eth10c451785-b098-4c5c-994d-9107171b439d802-3-etherneteth0295e1841-0ff3-4db9-8800-4e25fc2944da802-3-ethernetenp0s3eth1-2468815f5-ce97-43bd-904a-3078e2e59fec802-3-ethernetenp0s8[iyunv@centos7~]#[iyunv@centos7~]#nmcli-t-fIP4.ADDRESSdevshowenp0s8IP4.ADDRESS[1]:ip=20/24,gw=[iyunv@centos7~]#再看看新的ifcfg文件:[iyunv@centos7network-scripts]#catifcfg-eth1-2TYPE=EthernetBOOTPROTO=noneIPADDR0=20PREFIX0=24GATEWAY0=DEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noNAME=eth1-2UUID=468815f5-ce97-43bd-904a-3078e2e59fecDEVICE=enp0s8ONBOOT=yes[iyunv@centos7network-scripts]#现在up的连接是eth1-2,网络接口enp0s8的IP是20如果重新up连接eth1-1,nmcliconupeth1-1,网络接口enp0s8的IP变成了10如果重新up连接eth1,nmcliconupeth1,网络接口enp0s8的IP就回到原来自动获得的值5所以,对一个网络接口设置不同的连接,可以快速的切换不同的网络配置,这个真的满厉害的。如果希望系统重启后仅up某个特定连接,那么可以把其他连接配置文件的ONBOOT=no,ONBOOT=no的连接也可以随时up。#添加于2014-10-8编辑连接用nmtui编辑连接后,ifcfg文件也会有相应的改动;手工修改ifcfg后,nmtui中也

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论