路由和Linux网卡配置实战

简介: 一、动态主机配置协议DHCP二、基本网络配置三、CentOS 6、CentOS 7网卡名称的区别三、CentOS 6网卡名称四、CentOS 6网络配置方式五、配置网络接口六、route命令

路由和Linux网卡配置实战

 

目录

一、动态主机配置协议DHCP

二、基本网络配置

三、CentOS 6CentOS 7网卡名称的区别

三、CentOS 6网卡名称

四、CentOS 6网络配置方式

五、配置网络接口

六、route命令

 

一、动态主机配置协议DHCP


对于计算机而言,利用tcp/ip协议与网络中的设备进行通讯通常需要对其配置IP地址。配置的方法,其一为:于tcp/ip属性中设置为自动获取IP地址,选中此项时,主机将自动于网络中寻找特殊的名为DHCP-动态主机配置协议的服务器,由于DHCP上维护着众多地址,寻找到后将会当从中寻找DHCP服务器,申请地址进行通讯。此过程为自动化,不需要人为进行干预。此过程通过四部分实现。

image.png


1.四部分过程


1).DISCOVER

在客户端启动时若无地址,进行的时自动获取,则其将向网络中发送请求,即DHCP发现报文,DISCOVER报文。以广播形式发出,在本身当前没有地址的情况下,询问网络中是否拥有DHCP服务器存在。


2)  .OFFER

如若网络中存在DHCP服务器,通常情况下此服务器会给予客户端以响应,表示本身地址的存在。假设服务器中存在192.1.68-192.1.100100个服务器地址,则服务器将会从众多地址中抽取空余的地址发予客户端,提供消息中含有地址的信息。服务器同时将分配出的地址做上标记,避免此后处理其他电脑提出的请求时出现地址给予重复的情况。


3)  .REQUEST:

客户端收到多个服务器发来的OFFER请求后,其需要选择一家服务器的地址进行反馈响应。同时,其余未被选择的服务器将地址标记取消回收。


4)  .ACK

被使用地址的服务器进行确认工作,确认获取的地址、网关、子网掩码、DNS、租期等众多重要信息。

经过以四个步骤之后即可得到地址,在租期指定的时间内对其进行使用。假设租期为一天,即可使用一天此地址。DHCP通常情况下会在分配IP后与租期约定时间距离一半时间的前夕进行提示,以便客户端申请续约继续使用IP地址。


假设租期为一天,服务器将在租定十二小时后相客户端发送续约提示,在客户端提交续约申请、服务器同意申请后,客户端即可得到新的一天使用时间,此后延续此操作,租期可继续延长。


2.IP频繁对换设置的便捷操作

由于IP设置仅能够从自动获取与手动输入中二选一,当需要频繁互换IP设置,例如笔记本在公司与家庭的运用,在家庭中自动获取IP,在部分工作单位中其地址为静态地址需要手动输入时,为保证效率与便捷性,可以选择自动获取IP地址中的备用配置,在其中进行固定地址的输入,意味着在没有DHCP服务器的场合下输入的地址将自动生效,而在DHCP服务器存在的场合下将会优先使用DHCP服务器,避免了IP地址频繁输入转换的麻烦。移动办公时十分方便。


3.注意

手动输入IP地址生效的前提为网络IP中未连接DNS服务器,自动获取IP地址和手动输入IP地址不能同时做到。

 

二、基本网络配置


1.介绍

Linux主机接入到网络,需要进行网络相关的设置。


一般包括如下内容:

1)主机名(windows内为计算机名)

Linuxcentos中,主机名默认情况下只具有本地意义,进行不同计算机之间的区分。而windows内由于其本身具有网络通讯功能,可以对计算机进行访问。

Linux中需要凭借hostname指令进行主机名的查看:

[root@centos7 ~]#hostname

主机名与windows的计算机名相类似,但由于是否拥有通讯功能的差别,即windows可通过计算机名,利用windowsping命令对计算机进行访问。

假设现今将两台主机更改为同样的ID,由于Linux中主机名不具有网络功能,故名字重复时不会被系统提示冲突,而windows中主机名重复,系统将会于显示冲突。


2IP/netmask

查看IP地址和子网掩码,需要使用到ifconfig命令

[root@centos7 ~]#ifconfig

centos7存在与虚拟化有关的虚拟网卡,可用删掉命令进行虚拟驱动的删除

[root@centos7 ~]#yum remove libvirt-daemon

 

将机器重启后,再次利用ifconfig即可。

3)路由:默认网关


4DNS服务器

    DNS服务器

    DNS服务器

    第三DNS服务器

 

三、CentOS 6CentOS 7网卡名称的区别


由于centos6centos7两个地址的网卡名并不相同。centos6默认使用eth进行网卡名的定义,centos7使用是ens进行定义。现今将两者分为两部分进行讲述

 

四、CentOS 6网卡名称


1.介绍

1)接口命名方式: CentOS 6

        以太网: eth[0,1,2...]

        ppp-较为特殊少见: ppp[0,1,2...].

        网卡名称并非一成不变,可通过更改配置文件以实现网卡的命名。

2)网络接口识别并命名相关的udev配置文件:

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

3)查看网卡:

        dmesg |grep -i eth

        ethtool -i ethO

4)卸载网卡驱动:

        modprobe -r e1000

        rmmod e1 000

5)装载网卡驱动:

        modprobe e1000


2.实际操作

通过克隆方式在centos6上建立两台完全相同的虚拟主机,其中一台主机的地址为:192.168.30.128;另一台主机地址为:192.168.30.102,即:由于centos本身主机名不能重复的特性,其中一台虚拟机的网卡名、MAC地址自动发生了改变。

网卡命名的实现

/etc/udev/rules.d/70-persistent-net.rules    此文件定义了网卡的命名方式

操作:

[root@centos7 ~]#cd

[root@centos7 ~]#cd /etc/udev/rules.d/

[root@centos7 ~]#ls

60-fprint-autosuspend.rules 70-persistent-cd.rules 97-bluetooth-serial.rules

60-openct.rules70-persistent-net.rules 98-kexec.rules //rules为定义了网卡命名规范的规则文件

60-pcmcia.rules 90-alsa.rules 99-fuse.rules

60-raw.rules 90-hal.rules

[root@centos6 rules .d]#vim 70-persistent-net.rules //将此文件打开

# This file was automatically generated by the /lib/udev/write net_rules

# program, run by the persistent-net-generator.rules rules file.

#

# You can modify it, as long as you keep each rule on a single

# line, and change only the value of the NAME= key.

 

# PCI device 0x8086:0x100f (e1000)

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR(address)=="00:0c:29:el:f7:aa", ATTR[type])=="1", KERNEL=="eth*", NAME=" eth0"   //当前mac名称为“aa”时网卡名称为0

 

# PCI device 0x8086:0x100f (e1000)

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR(address)=="00:0c:29:e1:f7:b4", ATTR[type]=="1", KERNEL=="eth*", NAME= "eth1"  //当前mac名称为“b4”时网卡名称为eth1

 

# PCI device 0x8086:0x100f (e1000)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",

ATTR(address)=="90:0c:29:df:51:03[ATTR[type)=="1", KERNEL=="eth*", NAME=" eth2 "   //显示为当前网卡的mac与网卡名称。

由于01网卡名称已被占据,此时欲实现mac地址为03的网卡名更改,需要将此前信息全部删除,并调整网卡名称

# PCI device 0x8086:0x100f (e1000)

# PCI device 0x8086:0x100f (e1000)

# PCI device 0x8086:0x100f (e1000)

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",

ATTR(address)=="90:0c:29:df:51:03[ATTR[type)=="1", KERNEL=="eth*", NAME=" eth0 "

文件更改后网卡通常并不会立刻生效,欲使其生效,由于重启在部分情况下并不现实,进行网卡驱动的卸载也同样能够到达此目的。


注意:

在文件为可执行的脚本命令时,能够进行source命令的使用。并非所有配置文件更改的生效都属于source命令,且由于/etc/udev/rules.d/70-persistent-net.rules此文件属于系统的配置文件,而非脚本,故当前情况并不能使用source命令。


3.查看网卡驱动名称的命令

欲进行网卡驱动的卸载,首先应知晓网卡驱动的名称。网卡驱动名称的查看具有两个方法。

方法1demesg

[root@centos7 ~]#demesg

//此命令针对所有硬件信息

[root@centos7 ~]#dmesg  |grep -i eth

//进入所有网卡信息后,进而进行寻找网卡驱动硬件的查看

e1000 0000:02:01.0: eth0:(PCI:66MHz:32-bit) 00:0c:29:df:51:03

e1000 0000:02:01.0: eth0:Intel(R) PR0/1000 Network Connection

dev:_ renamed network interface eth0 to eth2

e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None    

//e1000即驱动网卡的模块名

B021q: adding VLAN 0 to HW filter on device eth2

eth2: no IPv6 routers present

方法2ethtool

[root@centos7 ~]#ethtool  -i eth2  

//查看eth2的驱动模块

driver:e1000  

//此为eth2驱动网卡模块名

version: 7.3.21-k8-NAPI

firmware-version:

bus-info: 0000:02:01.0

supports-statistics: yes

supports-test: yes

supports-eeprom-access:yes

supports-register-dump: yes

supports-priv-flags: no

[root@centos7 ~]#modprobe -r e1000  

//r即进行驱动模块的卸载。

[root@centos7 ~]#ifconfig    

//由于网卡驱动模块的卸载,导致网卡同样也无法被看见

lo      Link encap:Local Loopback

       inet addr:127.0.0.1Mask:255.0.0.0

       inet6 addr: ::1/128 Scope :Host

       UP LOOPBACK RUNNING MTU: 65536 Metric: 1

       RX packets:12 errors:0 dropped:0 overruns:0 frame: 0

       TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

       collisions:0 txqueuelen: 0

      RX bytes:720 (720.0 b) TX bytes:720 (720.0 b)

 

[root@centos7 ~]#modprobe e1000

//驱动模块卸载后进行重新加载。网卡名;e1000,加载时将r去掉即加载命令。

[root@centos7 ~]#ifconfig重启时选择移动,即保留原始状态。

eth0      Link encap: Ethernet HWaddr 0Ѳ: 0C:29:DF:51:03

      inet6 addr: fe80: :20c:29ff:fedf:5103/64 Scope:Link

       UP BROADCAST RUNNING MULTICASTMTU: 1500 Metric:1

       RX packets:0 errors:0 dropped:0 overruns:0 frame:0

       TX packets:4 errors:0 dropped:0 overruns:0 carrier:0

       collisions:0 txqueue len: 1000

      RX bytes:0 (0.0 b) TX bytes:328 (328.0 b)

 

lo      Link encap:Local Loopback

       inet addr:127.0.0.1Mask:255.0.0.0

       inet6 addr: ::1/128 Scope :Host

       UP LOOPBACK RUNNING MTU: 65536 Metric: 1

       RX packets:12 errors:0 dropped:0 overruns:0 frame: 0

       TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueuelen: 0

       RX bytes:720 (720.0 b) TX bytes:720 (720.0 b)

即实现了网卡名称的更改。

现今进行对centOS6.9进行重启,在弹出“此虚拟机已被移动或复制”提醒时选择【我已移动该虚拟机】,表示保留虚拟机原来的状态。

在主机192.168.30.128中进行mac地址的查看

[root@centos6 ~]#ifconfig

eth0   Link encap: Ethernet HWaddr 00:0C:29:E7::AA

     inet addr:192.168.30.128 Bcast:192.168.30.255 Mask255.255.255.0

      inet6 addr: fe80::20c:29ff:fee1:f7aa/64 Scope:Link

      UP BROADCAST RUNNING MULTICASTMTU: 1500 Metric:1

      RX packets:112 errors:0 dropped:0 overruns:0 frame:0

      TX packets:110 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueuelen: 1000

      RX bytes:15341 (14.9 kiB) TX bytes:12649 (12.3kiB)

 

lo     Link encap:Local Loopback

      inet addr:127.0.0.1 Mask:255.0.0.0

      inet6 addr: ::1/128 Scope:Host

      UP LOOPBACK RUNNINGMTU:65536 Metric:1

      RX packets:8 errors:0 dropped:0 overruns:0 frame:0

      TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueuelen:0

      RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)

现进行对centOS6.9复制得到相同的新虚拟机的启动,由于与原虚拟机完全相同,在启动时其Mac地址出现了冲突,故网卡无法启动,造成卡顿。

[root@centos6 ~]#ifconfig  //查看得到完全相同的Mac地址

eth0   Link encap: Ethernet HWaddr 00:0C:29:E7::AA

      inet6 addr: fe80::20c:29ff:fee1:f7aa/64 Scope:Link

      UP BROADCAST RUNNING MULTICASTMTU: 1500 Metric:1

      RX packets:112 errors:0 dropped:0 overruns:0 frame:0

      TX packets:110 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueuelen: 1000

      RX bytes:15341 (14.9 kiB) TX bytes:12649 (12.3kiB)

 

lo     Link encap:Local Loopback

      inet addr:127.0.0.1 Mask:255.0.0.0

      inet6 addr: ::1/128 Scope:Host

      UP LOOPBACK RUNNINGMTU:65536 Metric:1

      RX packets:8 errors:0 dropped:0 overruns:0 frame:0

      TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueuelen:0

      RX bytes:480 (480.0 b) TX bytes:480 (480.0 b) //由于Mac地址冲突,导致其中此主机得不到IP地址


4.解决Mac地址冲突的问题

例如当搭建十个主机的网络,考虑到实际可能性,主机的搭建通常为虚拟机的复制而非手动搭建。此时为解决Mac地址冲突无法显示出IP地址的问题的操作如下:

点击设置->网络适配器(找到网卡)->高级->生成(新MAC地址)

需注意:由于在生产中使用的物理服务器并不会产生Mac地址冲突,故此类问题仅存在于虚拟机之中。

再次进行网卡驱动卸载的方式使其生效

[root@centos6 ~]#rthtool -i eth0

//查找网卡驱动名称

[root@centos6 ~]#ethtool  -i eth2

//查看eth2的驱动模块

driver: e1000    

//此为eth2驱动网卡模块名

version: 7.3.21-k8-NAPI

firmware-version:

bus-info: 0000:02:01.0

supports-statistics:yes

supports-test:yes

supports-eeprom-access:yes

supports-register-dump: yes

supports-priv-flags: no

[root@centos7 ~]#modprobe -r e1000    

//进行驱动模块的卸载。

[root@centos7 ~]#ifconfig    

//查看IP地址和子网掩码

lo      Link encap:Local Loopback

       inet addr:127.0.0.1Mask:255.0.0.0

       inet6 addr: ::1/128 Scope :Host

       UP LOOPBACK RUNNING MTU: 65536 Metric: 1

       RX packets:12 errors:0 dropped:0 overruns:0 frame: 0

       TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

       collisions:0 txqueuelen: 0

       RX bytes:720 (720.0 b) TX bytes:720 (720.0 b)

[root@centos6 ~]#cat /etc/udev/rules.d/70-persistent-net.rules

Link encap: Ethernet HWaddr 0Ѳ: 0C:29:DF:51:03

#This file was automatically generated by the /lib/udev/write_net_rules

#program,run by the persistent-net-generator.rules rules file.

#

# You can modify it, as long as you keep each rule on a single

# line, and change only the value of the NAME= key.

 

# PCI device 0x8086:0x100f(e1000)

 

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR(address)=="00:0c:29:el:f7:aa",ATTR(type)=="1",KERNEL=="eth*",NAME="eth0"    

//Mac地址占用eth0

 

# PCI device 0x8086: 0x100f (e1000)

SUBSYSTEM=="net",ACTI0N=="add",DRIVERS=="?*",ATTRfaddress)=="00:50:56:3b:ef:87".ATTR(tvpe)"1".KERNEL=="eth*".NAME="eth0"  

//Mac地址使用eth0

更为简单的更改Mac地址的方式:将/etc/udev/rules.d/70-persistent-net.rules这一文件进行删除

[root@centos6 ~]#rm -f/etc/udev/rules.d/70-persistent-net.rules  

//将此文件所对应进行修改

[root@centos6 ~]#ifconfig

eth1    Link encap:Ethernet. Hwaddr 00:50:56:3B:EF:87   //网卡重新卸载、加载模块

       inet6 addr: fe80::250: 56ff: fe3b: ef87/64 Scope:Link

        UP BROADCAST RUNNING MULTICAST MTU:1500 Metric :1

        RX packets:0 errors:0 dropped:0 over runs:0 fr ame : 0

       TX packets:3 errors:o dropped:0 overruns:0 carrier: 0

       collisions:0 txqueue len: 1000

       RX bytes:0(0.0 b)TX bytes:238 (230.0 b)

 

lo     Link encap:Local Loopback

      inet addr:127.0.0.1 Mask:255.0.0.0

      inet6 addr: ::1/128 Scope : Host

      UP LOOPBACK RUNNINGMTU:65536 Metric :1

      RX packets:24 errors:0 dropped:0 overruns:0 frame :0

      TX packets:24 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 txqueue len: 0

      RX bytes:1672 (1672.0 KiB)TX bytes:1672 (1.6 KiB)


5.网卡名的修改

网卡名同样可自由更改、人为定制,其方法同样为:

1.卸载网卡驱动

2.进行网卡加载

3.查看网卡名的修改

 

四、CentOS 6网络配置方式


1.静态指定:

较老旧(可能被淘汰):ifconfig,route, netstat

ifconfigm命令中存在的解释:This program is obsolete !

为避免旧命令被淘汰删除的情况,故建议使用IP命令将其代替。

较新:ip: object (link, addr, route), ss, tc

system-config -network -tui, setup


1)其中,system-config -network -tui为字符形式的工具,不用书写命令,进行回车即可。

image.png

如图Use DHCP处,通过“*”的去留进行地址的手动添加或自动获取IP


2setup中包括的设置较多,其中第四项Network configuration即为网络设置。

image.png

           

3)除开工具和命令,也可通过更改文件的方式来进行IP地址的配置


2.动态分配:

DHCP: Dynamic Host Configuration ProtocolIP地址实现自动获取

 

五、配置网络接口


1.ifconfig命令

   由于部分命令的使用悠久,部分情况下由于系统尚未进行换新,仍然存在只能使用旧命令的情况。因此,旧命令仍有掌握的必要

   ifconfig [interface]

   ifconfig -a

   ifconfig IFACE [up|down]        -启用或禁用网卡

   ifconfig interface [aftype] optionsl addressifconfig       IFACE IP/netmask [up]

其中,up可有有无

   ifconfig IFACE IP netmask NETMASK注意:立即生效

   启用混杂模式: [-]promisc

 

2.基本用法

[root@centos6 ~]#ifconfig

ifconfig默认显示的是活动状态的网卡信息,若网卡非活动,则默认不显示。不仅可以查看,也可以设置网卡设置的信息

设置网卡的地址、启用或禁用网卡

[root@centos6 ~]#ifconfig eth1 down  //up为启用,down为禁用。本身存在两个网卡,先将eth1进行禁用。

[root@centos6 ~]#ifconfig   //此时发现eth1被禁用无法被查看到,但网卡的禁用并非不存在

[root@centos6 ~]#ifconfig -a  //此命令可查看所有活动即非活动的网卡列表,此时发现eth1显现而出

eth0     Link encap: Ethernet HWaddr 00:0c:29:E1:F7 :AA

inet addr:192.168.30.128 Bcast:192.168.30.255 Mask:255.255.255.0

inet6 addr: fe80: :20c:29ff:fee1: f7aa/64 Scope:Link

UP BROADCAST RUNNING MULTICASTMTU:1500 Metric :1

RX packets:108 errors:0 dropped:0 over runs:0 fr ame :0   //接收数据包的数量

TX packets:112 errors:0 dropped:0 overruns:o carrier: 0        //发送数据包的数量

collisions:0 txqueue len: 1000

RX bytes:14732 (14.3 KiB) TX bytes:19861 (19.3 KiB)

 

eth1     Link encap:Ethernet. Hwaddr 00:0c:29:E1:F7:84

inet addr :172.18.108.3 Bcast :172.255

Mask:255.255.0.0

inet6 addr: fe80: :20c: 29ff: fee1: f7b4/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric :1

RX packets:117 errors:0 dropped:0 over runs:0 fr ame : 0

TX packets: 33 errors:o dropped:0 overruns:0 carrier: 0    

//由于数据量的变化,接收、发送数据包的数量同样有发生变化的可能。假设在eth1网卡中通过物理手段进行断开连接,即相当于拔掉网线。未联网时,数据将不再改变。连接网络时,数据继续变化,说明存在数据的通讯。但此信息在拔掉网线后显示并不全面,建议使用ip link进行查看更加清晰的数据。

运用:

[root@centos6 ~]#ip link

1:lo:<LOOPBACK,UP,LOWER_UP> mtu 65536 noqueue state UNKNOWN

link/loobback 00: 00:00:0000:00 brd 00:00: 00:000000

2:eth0: <BROADCAST,MULTICAST,UP,LOWER UP>mtu 1500 qdisc pfifo_fast state DOWN qlen 1000

link/ether 00:0c:29:e1:f7aa brd ff:ff:ff:ff:ff:f

3:eth1:<NO-CARRIER,BROADCAST,MULTICAST,UP>mtu 15500 qdisc prifo_fast state DOWN qlen 1000

//此时将网线插上,再次使用ip link查看

[root@centos6 ~]#ip link

1:lo:<LOOPBACK,UP,LOWER_UP> mtu 65536 noqueue state UNKNOWN

link/loobback 00: 00:00:0000:00 brd 00:00: 00:000000

2:eth0: <BROADCAST,MULTICAST,UP,LOWER UP>mtu 1500 qdisc pfifo_fast state UP qlen 1000

link/ether 00:0c:29:e1:f7aa brd ff:ff:ff:ff:ff:f

3:eth1:<NO-CARRIER,BROADCAST,MULTICAST,UP>mtu 15500 qdisc prifo_fast state UP qlen 1000 //当前显示为UP

使用ip link具有纠错的特点

同时,ifconfig也可进行禁用网卡的操作。

使用ifdown命令将网卡禁用后,IP无法查看的同时,由于通过命令而非物理方式进行断网,故通过ip link查看到当前网卡的状态时其显示仍为UP。而使用ifconfig时,能够进行网卡的查看,但不存在地址,同样相当于网卡不可使用。


使用ifup命令进行网卡禁用的恢复,此后进行ifconfig查看,地址重新恢复,意味着网卡重新可以使用。

故,启用禁用网卡的方式分为两类:

1.ifup/down

2.ifconfig+网卡名+down/up

(显示不同)


ifdown的局限性

由于ifdown命令的成功与否依赖于配置文件的事先配置与存在。显示在两个网卡eth0eth1中,由于eth0中存在配置文件,而eth1不包含,故使得命令在eth1网卡中运行成功,在eth0网卡中运行失败。

配置文件存在于:/etc/sysconfig/network-scripts/

       

设置网卡地址

IFACE IP/netmask [up] (临时测试时使用)

例:将eth1改为某一个地址

格式:[root@centos6 ~]#ifconfig 网卡名称 指定的新地址

[root@centos6 ~]#ifconfig eth1 1.1.1.1/24   //此类更改属于临时性更改,将网卡禁用再启动后,更改的地址将会丢失不存在。

eth0     Link encap: Ethernet HWaddr 00:0c:29:E1:F7 :AA

inet addr:192.168.30.128 Bcast:192.168.30.255 Mask:255.255.255.0

inet6 addr: fe80: :20c:29ff:fee1: f7aa/64 Scope:Link

UP BROADCAST RUNNING MULTICASTMTU:1500 Metric :1

RX packets:108 errors:0 dropped:0 over runs:0 fr ame :0

packets:112 errors:o dropped:0 overruns:o carrier: 0

collisions:0 txqueue len: 1000

RX bytes:14732 (14.3 KiB) TX bytes:19861 (19.3 KiB)

 

eth1     Link encap:Ethernet. Hwaddr 00:0c:29:E1:F7:84

inet addr :1.1.1.1 Bcast :1.1.1.255 Mask:255.255.0.0

inet6 addr: fe80: :20c: 29ff: fee1: f7b4/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric :1

RX packets:117 errors:0 dropped:0 over runs:0 fr ame : 0

TX packets: 33 errors:o dropped:0 overruns:0 carrier: 0

collisions:0 txqueue len: 1000

RX bytes:27583 (26.9 KiB)TX bytes:3362 (3.2 KiB)

另外,广播的是否支持也可进行设置

例如eth1中默认支持广播,存在[-]表示不支持,即:[-]BROADCAST

 

六、route命令


1.査看: route -n

由于路由器的每个接口一旦配上地址,相邻网段的路由记录会自动生成,故增加IP地址会自动进行路由的增加。


2.添加:route add

根据路由的分类:仅主机路由、网络路由、默认路由

route add[-net 仅主机路由|-host网络路由]

target [netmask Nm] [gw Gw] [[dev] If] 路由添加时要指定网关和接口

[root@centos6 ~]#route -host add 6.6.6.6  gw 3.3.3.100  

//假设6.6.6.6为网关地址,3.3.3.100为路由器地址,系统将自行判断需要经过的路径。仅主机方式。

Lroot@centos6 ~]#route -n

Kerne1 IP routing table

Destination  Gateway Genmask    Flags Metric Ref  Use Iface

6.6.6.6   3.3.3.100 255.255.255.255 UGH   0    0   eth1

192.168.30.0  0.0.0.0 255.255.255.0   U  1    0    eth0

3.3.3.0     0.0.0.0  255.255.255.0  U   0    0    eth1

[root@centos6 ~]#route add -net 8.8.8.8/32 gw 3.3.3.100

//另外一种等价写法。网络方式

SIOCADDRT: Invalid argument

[root@centos6 ~]#route add -net 8.8.8.8 netmask 255.255.255.255 gw 3.3.3.100

[ root@centos6 ~]#route -n

Kernel IP routing tab le

Destination Gateway Genmaskm     Flags Metric Ref   Use Iface

6.6.6.6    100  255.255.255.255 UGH     0    0      eth1

8.8.8.8   100   255.255.255.255 UGH     0   0       eth1

192.168.30.0 0.0.0.0 255.255.255.0 U     1    0      eth0

3.3.3.0   0.0.0.0   255.255.255.0 U     0    0      eth1

//8.8.8.8由于其本身为一台机器的网络,存在网络的特殊性,故8.8.8.86.6.6.6实际相等,仅存在语法的不同。

[root@centos6 ~] #route add -net 10.0.0.0 netmask 255.0.0.0 gw

192.168.30.100[root@centos6 ~] #route -n

//代表一个网段的表达方式,即添加了一条到达10.0.0.0网段的路由记录。

 

Kerne1 IP routing table

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

6.6.6.6 3.3.3.100 255.255.255.255 UGH    0     0   eth1

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O     0   eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0    0    eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0     0   eth1

10.0.0.0 192.168.30.200 255.0.0.0  UG   0    0     eth0

[root@centos6 ~] #route add -net 100.0.0.0 netmask 255.0.0.0 gw 192.168.3.100[root@centos6 ~] #route -n

Kerne1 IP routing table

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

6.6.6.6 3.3.3.100 255.255.255.255 UGH    0         eth1

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O         eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0        eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0         eth1

10.0.0.0 192.168.30.100  255.0.0.0. UG   0        eth0

[root@centos6 ~] #route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.30.200  

//下一个路由器的临近本身的接口和当前路由器应该处在同一个网段。当前机器的IP30.1283.3,与3.100不处于同一网段,应进行更改。如30.200

[root@centos6 ~] #route add default gw 192.168.30.200

[root@centos6 ~] #   -n

Kerne1 IP routing table

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

6.6.6.6 3.3.3.100 255.255.255.255 UGH    0         eth1

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O         eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0        eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0         eth1

10.0.0.0 192.168.30.100  255.0.0.0. UG   0        eth0

[root@centos6 ~] #route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.30.2  

//增加路由记录

以上格式同样可以改为-net 10.0.0.0 netmask 255.0.0.0,但不如前者简洁。

[root@centos6 ~] #route add -net 0.0.0.0 netmask 0.0.0.0 gw 3.3.3.100

删除

两个路由即两个到达位置网的路径,与对方连接时并不能明确具体线路,此时需要删除一条路径。

[root@centos6 ~] #route del default gw 192.168.30.2

[root@centos6 ~] #   -n

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

6.6.6.6 3.3.3.100 255.255.255.255 UGH    0     0   eth1

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O     0   eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0    0    eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0     0   eth1

100.0.0.0 192.168.30.200 255.0.0.0  UG   0    0    eth0

0.0.0.0  3.3.3.100   0.0.0.0     UG     0    0    eth1

[root@centos6 ~] #   -n

[root@centos6 ~] #route dle -host 6.6.6.6

[root@centos6 ~] #   -n

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O     0   eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0    0    eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0     0   eth1

100.0.0.0 192.168.30.200 255.0.0.0  UG   0    0    eth0

0.0.0.0  3.3.3.100   0.0.0.0     UG     0    0    eth1

[root@centos6 ~] #route dle -net 100.0.0.0 netmask 255.255.0.0  

//网段删除

[root@centos6 ~] # -n

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

8.8.8.8 3.3.3.100 255.255.255.255 UGH    O     0   eth1

192.168.30.0 0.0.0.0  255.255.255.0 U    0    0    eth0

3.3.3.0  0.0.0.0.    255.255.255.0 U    0     0   eth1

0.0.0.0  3.3.3.100   0.0.0.0     UG     0    0    eth1

此些记录并非真正被保存,当电脑进行重启后,记录将会失去,仅系统自带的将被保存。而当通过网络服务重启的方法时,丢失的是部分命令。

[root@centos7~] # -n

Kerne1 IP routing table

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

0.0.0.0      172.20.0.1  0.0.0.0 UG    100   0    ens37

172.20.0.0   0.0.0.0 255.255.0.0 U     100   0    ens37

192.168.30.0 0.0.0.0  255.255.255.0 U   100  0     ens33

[root@centos7 ~] #route del default gw 172.20.0.1

[root@centos7 ~] # -n

Kerne1 IP routing table

Destination  Gateway Genmask   Flags  Metric Ref Use Iface

172.20.0.0   0.0.0.0 255.255.0.0 U     100   0    ens37

192.168.30.0 0.0.0.0  255.255.255.0 U   100  0     ens33

进行centos67地址的各自配备

centos7

ens37:192.168.100/24

centos6

eyth1:192.168.2.100/24

两台主机经分辨可得出不在同一网段的结论。可使用ifconfig进行地址的临时该改变。

[root@centos7~] #ifconfog ens37 192.168.1.100.24/  

//临时改变地址

[root@centos7~] #route -n

//查看路由,发现自动添加了本机器新IP对应的网段路由

 

[root@centos6~] #ifconfig eth1 192.168.2.100/24

[root@centos6~] #ifconfig

[root@centos6~] #route -n //查看路由,发现本机器同样自动添加了新IP对应的网段路由

由于两台主机不处于同一网络网段中,故在centos7中无路径,进行ping192.168.2.100操作会出现网络不可到达的提示。物理上两主机是相通的,使路由配通,即添加路由,即可实现此目的

[root@centos7~]#ping192.168.2.100

[root@centos7~]#route add default dev ens37

[root@centos7~]#ping192.168.2.100 //再次进行ping命令

相当于现今两台电脑物理上相连于同一台交换机,但各自配置了不同的网段IP。相通理论上应加网关,正常情况下应该配置路由器。如今仅添加了路由,没有路由器。

只要通过ens37网卡发出,就能到达任何未知网络,ens37centos6的两个主机位于同一网段,通过arp广播形式寻找,实现了相通。

此种情况出现时,添加网关即可解决。

[root@centos6~]#route add default dev eth1

//加了路由未加网关,仅加了接口

路由表十分重要,当路由表拥有路径之后,便可按照其内里定义的路径进行通讯。在计算机中的通讯即由路由表转化数据实现。

一般情况下,添加地址就会自动生成路由记录。但由于没有对应127.0.0.1的地址,即每人访问此地址时不会通向互联网,尽在局域网中本地打转。

由于子网掩码为255.0.0.0,意味着但凡为127开头都无法走出局域网通向互联网。

现今使网卡centos6centos7分别回归默认

[root@centos7 ~]#ifconfig lo 6.6.6.6/32

//增加回环网卡

[root@centos6 ~]#ifconfig lo 8.8.8.8/32

//再次在centos6中为回环网卡增加地址,则centos6中地址为192.168.2.100centos7中地址为192.168.30.100

[root@centos7 ~]#ping 8.8.8.8 //若在centos7中进行8.8.8.8ping操作,系统显示不存在到达8.8.8.8的路由,为实现目的,进行默认路由到添加。

[root@centos7 ~]#route -n

[root@centos7 ~]#route add default fev ens37

[root@centos7 ~]#ping 8.8.8.8

//再次进行ping操作

[root@centos6 ~]#tcpdump -i eth1 icmp

//抓包命令

查询可知发出的数据包centos6处已然接收到。面对此种有去无回的情况,在回去的时候同样需要添加路由。

[root@centos6~]#route add default dev eth1

此时,两个主机进行了想通

加网关、IP地址的本质是为了添加路由。若路由出现错误,即使配配备了地址同样不能够使用。路由为重中之重

现今centos7存在两个地址:192.168.30.100172.20.102.77

centos6中存在两个地址:192.168.30.128172.18.108.3

两地址不相通

[root@centos7 ~]#ping 192.168.30.128

//两主机都为仅主机模式,可以进行正常的相ping命令。

[root@centos7 ~]#delete del -net 192.168.30.0 netmask 255.255.255.0 dev ens33

//此删除执行后,网络被断掉

尽管地址表面上仍然能够查询,但路由被删掉,故此时进行ping操作,不能实现相同。

此种情况中,IP地址不存在任何问题,但由于路由出现状况,使得命令无法正常执行。


3.目标: 192.168.1.3 网关: 172.16.0.1

route add -host 192.168.1.3 qw 172.16.0.1 dev ethO

 目标:192.168.0.0网关:172.16.0.1

route add -net 192.168.0.0 netmask 255.255.255.0

 

 

相关文章
|
11天前
|
安全 Ubuntu Java
Linux配置使用篇
Linux配置使用篇
|
23天前
|
存储 负载均衡 索引
linux7安装elasticsearch-7.4.0集群配置
linux7安装elasticsearch-7.4.0集群配置
109 0
|
28天前
|
监控 Linux Shell
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
38 0
|
28天前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
36 0
|
28天前
|
缓存 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
38 0
|
30天前
|
网络协议 Ubuntu Linux
Linux 动态/静态配置ip网卡信息
Linux 动态/静态配置ip网卡信息
36 0
|
28天前
|
域名解析 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
49 1
|
8天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
25 6
|
28天前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
30 1
|
11天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4