ifconfig
用于配置网卡ip地址信息等网络参数或显示网络接口状态,类似于windows的ipconfig命令。
可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。
注意只能用root使用此命令,且系统如果没有此命令,需要单独安装
yum install net-tools -y
语 法:
ifconfig [网络设备][down up -allmulti -arp -promisc][add][del][][io_addr][irq][media][mem_start][metric][mtu][netmask][tunnel][-broadcast][-pointopoint][IP地址]
fconfig案例
MAC地址,直译为媒体访问控制地址,也称为局域网地址,以太网地址或物理地址,它是一个用来确认网上设备位置的地址。在OSI模型中,第三层网上层负责IP地址,第二层数据链接层则负责MAC地址
[root@local-pyyu ~]# ifconfig
ens33: flags=4163 mtu 1500
inet 192.168.178.180 netmask 255.255.255.0 broadcast 192.168.178.255 #IPV4
inet6 fe80::d2d8:6d71:84a:bacd prefixlen 64 scopeid 0x20 #IPV6
ether 00:0c:29:1f:ea:9e txqueuelen 1000 (Ethernet) #MAC地址
RX packets 5290 bytes 451038 (440.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3829 bytes 363532 (355.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 15 bytes 1560 (1.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 15 bytes 1560 (1.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
启动/关闭指定网卡
[root@local-pyyu ~]# ifconfig ens33 down #注意不得在服务器上执行,关闭了网卡就断开连接了
[root@local-pyyu ~]# ifconfig ens33 up #再次启动网卡
修改、设置网卡ip
注意这个操作不要在服务器上操作,否则会断开连接,仅供学习
ifconfig ens33 192.168.178.100
给网卡设置别名、添加多个ip地址
#添加并启动新ip
[root@local-pyyu ~]# ifconfig ens33:0 192.168.178.111 netmask 255.255.255.0 up
#第二种方式添加
[root@local-pyyu ~]# ifconfig ens33:0 192.168.178.115/24 up
修改MAC地址
[root@local-pyyu ~]# ifconfig ens33 hw ether 00:0c:29:13:10:CF
[root@local-pyyu ~]# ifconfig ens33 hw ether 00:0c:29:1f:ea:9e #再改回去
修改网卡配置文件
以上命令重启网卡或是机器后,网卡信息会还原,想要永久修改网卡信息,还得修改配置文件
网卡路径
[root@local-pyyu ~]# ls /etc/sysconfig/network-scripts/ |grep ifcfg
ifcfg-ens33
ifcfg-lo
别名也可以设置配置文件
例如/etc/sysconfig/network-scripts/ifcfg-ens33:0
ifup命令
用于激活指定的网络接口,ifup其实是读取配置文件/etc/sysconfig/network-scripts/ifcfg-ens33
启停网卡
ifup ens33
ifdown ens33
ifconfig查看
route命令
route程序对内核的IP选路表进行操作。它主要用于通过已用ifconfig(8)程序配置好的接口来指定的主机或网络设置静态路由。
路由概念:
计算机之间的数据传输必须经过网络,网络可以直接连接两台计算机,或者通过一个一个的节点构成。
路由器理解为互联网的中转站,网络中的数据包就是通过一个一个路由器转发到达目的地。
路由的分类
路由分为静态路由和动态路由。
Linux上配置的都是静态路由,是系统管理员使用route命令假如,也就是通过手动输入的方式添加路由规则。
动态路由是无需人为干预,是本机与不同机器之间经过路由的顺序,相互交换路由规则而来
-v
选用细节操作模式
-A family
用指定的地址族(如`inet',`inet6')。
-n
以数字形式代替解释主机名形式来显示地址。此项对试图检测对域名服务器进行路由发生故障的原因非常有用。
-e
用netstat(8)的格式来显示选路表。-ee将产生包括选路表所有参数在内的大量信息。
-net
路由目标为网络。
-host
路由目标为主机。
-F
显示内核的FIB选路表。其格式可以用-e 和 -ee选项改变。
-C
显示内核的路由缓存。
del
删除一条路由。
add
添加一条路由。
target
指定目标网络或主机。可以用点分十进制形式的IP地址或主机/网络名。
netmask Nm
为添加的路由指定网络掩码。
gw Gw
为发往目标网络/主机的任何分组指定网关。注意:指定的网关首先必须是可达的。也就是说必须为该网关预先指定一条静态路由。如果你为本地接口之一指定这个网关地址的话,那么此网关地址将用于决定此接口上的分组将如何进行路由。这是BSD风格所兼容的。
metric M
把选路表中的路由值字段(由选路进程使用)设为M。
mss M
把基于此路由之上的连接的TCP最大报文段长度设为M字节。这通常只用于优化选路设置。默认值为536。
window W
把基于此路由之上的连接的TCP窗口长度设为W字节。这通常只用于AX.25网络和不能处理背对背形式的帧的设备。
irtt I
把基于此路由之上的TCP连接的初始往返时间设为I毫秒(1-12000)。这通常也只用于AX.25网络。如果省略此选项,则使用RFC1122的缺省值300ms。
reject
设置一条阻塞路由以使一条路由查找失败。这用于在使用缺省路由前先屏蔽掉一些网络。但这并不起到防火墙的作用。
mod, dyn, reinstate
设置一条动态的或更改过的路由。这些标志通常只由选路进程来设置。这只用于诊断目的,
dev If
强制使路由与指定的设备关联,因为否则内核会自己来试图检测相应的设备(通常检查已存在的路由和加入路由的设备的规格)。在多数正常的网络上无需使用。
如果dev If是命令行上最后一个指定的选项,那么可以省略关键字dev,因为它是缺省值。否则路由修改对象(metric - netmask- gw - dev)无关紧要。
route案例
# route将IP地址进行DNS解析成主机名
[root@local-pyyu network-scripts]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default bogon 0.0.0.0 UG 102 0 0 ens33
192.168.178.0 0.0.0.0 255.255.255.0 U 102 0 0 ens33
#route 添加-n参数,不解析dns
[root@local-pyyu network-scripts]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.178.2 0.0.0.0 UG 102 0 0 ens33
192.168.178.0 0.0.0.0 255.255.255.0 U 102 0 0 ens33
解释
Destination:表示网络号,network的意思
Gateway:网关地址,网络是通过该IP连接出去的,如果显示0.0.0.0代表该路由是直接本机传送出去的,如果有ip表示本条路由必须经过该IP才能连接出去。
Genmask:子网掩码地址,也就是netmask,IP+NETMASK组成一个完整的网络
Flags:路由标记信息,标记当前网络节点的状态
U Up表示此路由当前为启动状态。
H Host,表示此网关为一主机
G Gateway,表示此网关为一路由器。
R Reinstate Route,使用动态路由重新初始化的路由。
D Dynamically,此路由是动态性地写入。
M Modified,此路由是由路由守护程序或导向器动态修改。
! 表示此路由当前为关闭状态,用于禁止不安全的网络
Metric:需要经过几个网络节点才能到达路由的目标地址
Ref:参考到此路由规则的数目
Iface:路由对应的网络设备接口
192.168.178.0 0.0.0.0 255.255.255.0 U 102 0 0 ens33
表示主机所在网段是192.168.178.0
若数据传送目标在同一网段,可以直接通过ens33转发数据包
0.0.0.0 192.168.178.2 0.0.0.0 UG 102 0 0 ens33
是系统默认网关,表示去任何地方的请求,都转发给192.168.178.2网关去处理
添加和删除默认网关
默认网关就是数据包不匹配任何设定的路由规则最后流经的地址关口。
网关网关,网络的关口,就好比家里的门,外出就得经过访问,数据也是一样。
#此时我的机器,路由信息
[root@local-pyyu network-scripts]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default bogon 0.0.0.0 UG 102 0 0 ens33
192.168.178.0 0.0.0.0 255.255.255.0 U 102 0 0 ens33
删除网关
[root@local-pyyu network-scripts]# route del default
[root@local-pyyu ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.178.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
添加网关
[root@local-pyyu ~]# route add default gw 192.168.178.2
[root@local-pyyu ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.178.2 0.0.0.0 UG 0 0 0 ens33
192.168.178.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
以上方式等同于
route add -net 0.0.0.0 gw 192.168.178.2
arp命令
arp是地址解析协议(ARP、Address Resolution Protocol),主要功能是根据IP地址获取物理地址(MAC地址)
[描述]
用来管理系统的arp缓存,常用的命令包括:
arp: 显示所有的表项。
arp -d address: 删除一个arp表项。
arp -s address hw_addr: 设置一个arp表项。
常用参数:
-a 使用bsd形式输出。(没有固定的列)
-n 使用数字形式显示ip地址,而不是默认的主机名形式。
-D 不是指定硬件地址而是指定一个网络接口的名称,表项将使用相应接口的MAC地址。一般用来设置ARP代理。
-H type, --hw-type type: 指定检查特定类型的表项,默认type为ether,还有其他类型。
-i If, --device If: 指定设置哪个网络接口上面的arp表项。
-f filename: 作用同'-s',不过它通过文件来指定IP地址和MAC地址的绑定。文件中每行分别是主机和MAC,中间以空格分割。如果没有指定文件名称,则使用/etc/ethers文件。
案例
显示arp缓存区的所有条目
[root@local-pyyu ~]# arp
Address HWtype HWaddress Flags Mask Iface
bogon ether 00:50:56:eb:26:44 C ens33
bogon ether 00:50:56:c0:00:08 C ens33
Address:主机地址或是主机名
HWtype:硬件类型
HWaddress:硬件地址
Flags Mask:记录标志,C表示是arp缓存中的条目,M表示静态arp条目
Iface:网络接口
[root@local-pyyu ~]# arp -n
Address HWtype HWaddress Flags Mask Iface
192.168.178.2 ether 00:50:56:eb:26:44 C ens33
192.168.178.1 ether 00:50:56:c0:00:08 C ens33