相关命令:ifconfig , route
输出网卡信息
#ifconfig -a
ifconfig基本用法:
ifconfig {interface} {up|down} //启动、关闭网卡
ifconfig interface {options}
options: // 选项包括
up,down
mtu
netmask
broadcast
route基本用法:
route [-nee]
-n // 直接显示ip或者port而不显示主机名
-ee //显示更多的信息
route add [-net|host] [网络或主机] netmask [mask] [gw|dev] // 增加路由
route del [-net|host] [网络或主机] netmask [mask] [gw|dev] //删除路由
-net 后接网络号
-host 后接主机
netmask 后接指定的子网掩码
gw : 即是gateway ,后接指定作为网关的ip
dev : 指定以上设置是针对哪一块网卡,后接设备名称,如eth0等
/*
这里补充一些知识:
一般路由表里的路由有三种,包括特定网络路由,特定主机路由,默认路由;默认路由一般是用在主机访问外网时。
*/
我们在修改ip前先查看一下主机路由:
#route -nee
参数列解释:
Destination \ Genmask分别是network \ netmask,它们两个组合成了一个网络。
Gateway就是网关,如果显示0.0.0.0表示该路由是直接由本机传送;如果显示ip,表示该路由需要经过路由器的帮助才能发出。
Iface 就是网卡接口名称。
Flags:
U(route is up)该路由是启动的
H(target is a host) 特定主机路由
G(use Gateway) 需要通过外部的主机传递数据包
R(...)
D(...)
M(...)
!(...) 这4项就不列出来了,这里没有关系到。
由以上我们可以知道,本主机有两条路由,如果发往本网络的数据包,肯定是用第二条路由啦;如果是发往外网的就是用第一条路由。
那么,路由器如何知道是发往本地网络还是外网呢?这就涉及到路由的一些算法了,主要是与运算符 【目的地址&子网掩码】 和 【本网络号】作比较就知道,详细这里不探讨。
开始改ip。
#ifconfig wlp1s0 192.168.1.88
<span style="font-size:12px;color:#333333;">#ifconfig -a</span>
可以看到ip已经改变,试着ping一下局域网的主机发现可以ping 的通,在ping 一下外网,如www.baidu.com,发现并不能通,上不了网。什么回事呢?
我们来看看现在的路由表信息:
发现只有一条局域网路由,这就能解释为什么不能连外网了,那么我们来设置一条外网的路由不就ok啦。
用route添加路由:
#route add default gw 192.168.1.1 //这里根据自己的网关地址设定
#route -nee
好的,外网路由添加了,再来ping一下外网,成功。