目录
定位数据包走向
linux主机系统下,直接执行命令行:traceroute hostname;而在Windows系统下是执行tracert的命令: tracert hostname
centos 路由管理
ip route flush 0/0 //清空路由
ip route add default dev eth1
ip route add xx.xx.xx.xx/xx via xx.xx.xx.xx dev ethx
ip route del default dev eth0
ip route replace default via 192.168.0.1 dev eth0 //替换路由
ip route show|column -t //查看路由,并格式化显示
设置永久静态路由
设置永久性路由,重启vm,路由不丢失
/etc/sysconfig/network-scripts/route-ethxx
10.15.150.0/24 via 192.168.150.253 dev ethxx
10.25.250.0/24 via 192.168.150.253 dev ethxx
需要重启network,如果不可以,需重启VM
注意点:
设置的静态路由需要确保网络是可达的。
例如:上述10.15.150.0/24 via 192.168.150.253 dev ethxxx
需确保vm可以连接该IP,否则无法设置成功!!!
windows 设置路由
1. 首先在“运行”窗口输入cmd(按WIN+R打开运行窗口),然后回车进入命令行。
2. 在命令行下输入route命令,会有对应的提示信息。
实例:
1. 查看所有的路由表信息
route print
2. 添加一条路由条目
route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1
route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3
route add 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
3. 添加一条永久路由条目(-p 表示永久路由,重启后不丢失)
route -p add 157.0.0.0 MASK 255.0.0.0 157.55.80.1
4. 删除路由条目
route delete 157.0.0.0
5. 修改路由条目(CHANGE 只用于修改网关和/或跃点数)
route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2
网桥管理
(1) 手动添加
[root@master ~]# brctl addbr br0
[root@master ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000000000000 no
[root@master ~]# brctl addif br0 eth0
[root@master ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000000000000 no eth0
删除eth0上面的ip地址,将br0上面添加上固定ip地址
[root@master ~]# ip addr del dev eth0 192.168.3.176/24 //删除eth0上的IP地址
[root@master ~]# ifconfig br0 192.168.3.176/24 up //配置br0的IP地址并启动设备
[root@master ~]# route add default gw 192.168.3.1 //重新加入默认网关
上面是通过命令进行的手动配置方法,但是大家都清楚,这些命令配置的结果在服务器重启之后就不能生效了,要想使得所有配置永久生效,我们还是需要通过配置文件进行配置,然后重启网卡设备,让系统帮我们配置,然后重启之后也是生效的。
还原原始配置
[root@master ~]# route delete default //删除默认网关
[root@master ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.3.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
[root@master ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.525400a7b756 no eth0
[root@master ~]# brctl delif br0 eth0 //断开/删除br0上的eth0设备
[root@master ~]#ifconfig br0 down //让br0设备停止活动
[root@master ~]#brctl delbr br0 //删除br0
root@master ~]# brctl show //查看br0是否依然存在
bridge name bridge id STP enabled interfaces
[root@master ~]# ifconfig eth0 192.168.3.176/24 //重新给eth0分配IP地址
root@master ~]# route add default gw 192.168.3.1 //重新加入默认网关
(2) 通过配置文件配置桥接设备
配置文件请自行备份
[root@master ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BRIDGE=br0
[root@master ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.3.176
NETMASK=255.255.255.0
GATEWAY=192.168.3.1
注意点:
有时候网桥上的IP可能设置失败!
原因:NetworkManager的原因,解决方案:1. 上述红色的设置 2.关闭NetworkManager
VLAN的配置
方法一:手动创建
创建 VLAN 设备
用下列命令添加 VLAN 网口:
# ip link add link eth0 name eth0.100 type vlan id 100
查看详情
# ip -d link show eth0.100
添加 IP
Now add an IPv4 address to the just created vlan link, and activate the link:
# ip addr add 192.168.100.1/24 brd 192.168.100.255 dev eth0.100
# ip link set dev eth0.100 up
关闭设备
To cleanly shutdown the setting before you remove the link, you can do:
# ip link set dev eth0.100 down
移除设备
Removing a VLAN interface is significantly less convoluted
# ip link delete eth0.100
方法二: 配置文件
ifcfg-enp8s0f0.10配置文件,按照如下修改:
PHYSDEV=enp8s0f0 //vlan端口对应物理硬件名称
VLAN=yes //设置允许vlan
TYPE=Vlan //TYPE类型
VLAN_ID=10 //VLAN ID
REORDER_HDR=yes //VLAN tag,GVRP MVRP为vlan协议,一般用不到
GVRP=no
MVRP=no
BOOTPROTO=none //设置为手动配置IP,如DHCP改成dhcp即可
IPADDR=192.168.10.2
PREFIX=24
GATEWAY=192.168.10.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME=enp8s0f0.10 //网卡名称,对配置不影响,可自定义
ONBOOT=yes
关闭interface的ipv6
方法一:编辑/etc/sysctl.conf
# net.ipv6.conf.all.disable_ipv6=1
# sysctl -p //实时生效
###关闭所有interface的IPV6功能
方法二:编辑每个网络设备 /etc/sysconfig/network-scripts/ifcfg-xxxx
IPV6_AUTOCONF=no
###关闭单个interface的IPV6自动配置
或者 /etc/sysconfig/network
NETWORKING_IPV6=yes
IPV6_AUTOCONF=no
##关闭所有interface的IPV6自动配置
## 未关闭功能,但是禁用自动配置IPV6
Tap设备
ip tuntap add {dev} mode tap
或者
tunctl –b –t {dev} –u root
ip link set {dev} address {mac_address}
ip link set {dev} up