目錄
定位數據包走向
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