Linux之配置路由轉(zhuǎn)發(fā)功能的測(cè)試
環(huán)境
操作系統(tǒng)
- Centos7.9
網(wǎng)絡(luò)環(huán)境
1. 三臺(tái)主機(jī)的網(wǎng)卡 enp0s5 均在 10.211.55.0/24 網(wǎng)段,且網(wǎng)絡(luò)可以通訊
- centos7-18的IP 10.211.55.18,作為路由服務(wù)端
- centos7-10的IP 10.211.55.10,作為子網(wǎng)連接端
- centos7-22的IP 10.211.55.22,作為子網(wǎng)連接端
2. 兩臺(tái)子網(wǎng)連接端配置子網(wǎng)IP
- 主機(jī)centos7-10 網(wǎng)卡enp0s5配置子網(wǎng) 192.168.10.100/32(子網(wǎng)一個(gè)IP)
- 主機(jī)centos7-22 網(wǎng)卡enp0s5配置子網(wǎng) 172.16.1.200/32(子網(wǎng)一個(gè)IP)
3. 配置子網(wǎng)連接端的靜態(tài)路由
- 主機(jī)centos7-10(192.168.10.100/32),增加訪問 172.16.1.200/32 的靜態(tài)路由
- 主機(jī)centos7-22(172.16.1.200/32),增加訪問 192.168.10.100/32 的靜態(tài)路由
4. 開啟路由服務(wù)端的路由轉(zhuǎn)發(fā)功能
- 主機(jī)centos7-18(10.211.55.18), 配置訪問 192.168.10.100 和 172.16.1.200的靜態(tài)路由
- 主機(jī)centos7-18(10.211.55.18),開啟路由轉(zhuǎn)發(fā)功能,實(shí)現(xiàn)192.168.10.100/32 與 172.16.1.200/32 之間通訊。
測(cè)試步驟
1. 配置主機(jī)centos7-10
配置子網(wǎng)IP 192.168.10.100
[root@centos7-10 ~]# ip addr add 192.168.10.100 dev enp0s5 [root@centos7-10 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:1c:42:ae:b6:41 brd ff:ff:ff:ff:ff:ff inet 10.211.55.10/24 brd 10.211.55.255 scope global noprefixroute dynamic enp0s5 valid_lft 1743sec preferred_lft 1743sec inet 192.168.10.100/32 scope global enp0s5 valid_lft forever preferred_lft forever inet6 fdb2:2c26:f4e4:0:cd1f:12f3:4076:6d89/64 scope global noprefixroute dynamic valid_lft 2591943sec preferred_lft 604743sec inet6 fe80::7e0c:1902:e1ca:4324/64 scope link noprefixroute valid_lft forever preferred_lft forever
配置訪問 172.16.1.200 的靜態(tài)路由
[root@centos7-10 ~]# ip route 172.16.1.200 via 10.211.55.18 dev enp0s5 [root@centos7-10 ~]# ip route default via 10.211.55.1 dev enp0s5 proto dhcp metric 100 10.211.55.0/24 dev enp0s5 proto kernel scope link src 10.211.55.10 metric 100 172.16.1.200 via 10.211.55.18 dev enp0s5 192.168.10.100 dev enp0s5 proto kernel scope link src 192.168.10.100 metric 100 [root@centos7-10 ~]#
2. 配置主機(jī)centos7-22
配置子網(wǎng)IP 172.16.1.200
[root@centos7-22 ~]# ip addr add 172.16.1.200 dev enp0s5 [root@centos7-22 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:1c:42:44:79:a5 brd ff:ff:ff:ff:ff:ff inet 10.211.55.22/24 brd 10.211.55.255 scope global noprefixroute dynamic enp0s5 valid_lft 1605sec preferred_lft 1605sec inet 172.16.1.200/32 scope global enp0s5 valid_lft forever preferred_lft forever inet6 fdb2:2c26:f4e4:0:233e:38df:2cbd:cec1/64 scope global noprefixroute dynamic valid_lft 2591809sec preferred_lft 604609sec inet6 fe80::7e0c:1902:e1ca:4324/64 scope link tentative noprefixroute dadfailed valid_lft forever preferred_lft forever inet6 fe80::567a:248b:5e94:5d19/64 scope link noprefixroute valid_lft forever preferred_lft forever
配置訪問 192.168.10.100 的靜態(tài)路由
[root@centos7-22 ~]# ip route add 192.168.10.100 via 10.211.55.18 dev enp0s5 [root@centos7-22 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:1c:42:44:79:a5 brd ff:ff:ff:ff:ff:ff inet 10.211.55.22/24 brd 10.211.55.255 scope global noprefixroute dynamic enp0s5 valid_lft 1565sec preferred_lft 1565sec inet 172.16.1.200/32 scope global enp0s5 valid_lft forever preferred_lft forever inet6 fdb2:2c26:f4e4:0:233e:38df:2cbd:cec1/64 scope global noprefixroute dynamic valid_lft 2591768sec preferred_lft 604568sec inet6 fe80::7e0c:1902:e1ca:4324/64 scope link tentative noprefixroute dadfailed valid_lft forever preferred_lft forever inet6 fe80::567a:248b:5e94:5d19/64 scope link noprefixroute valid_lft forever preferred_lft forever
3. 配置主機(jī)centos7-18
配置訪問 192.168.10.100 和 172.16.1.200 的靜態(tài)路由
[root@centos7-18 ~]# ip route add 192.168.10.100 via 10.211.55.10 dev enp0s5 [root@centos7-18 ~]# ip route add 172.16.1.200 via 10.211.55.22 dev enp0s5 [root@centos7-18 ~]# ip route default via 10.211.55.1 dev enp0s5 10.211.55.0/24 dev enp0s5 proto kernel scope link src 10.211.55.18 172.16.1.200 via 10.211.55.22 dev enp0s5 192.168.10.100 via 10.211.55.10 dev enp0s5
// 查看主機(jī)centos7-18的IP配置 [root@centos7-18 ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:1c:42:60:87:b2 brd ff:ff:ff:ff:ff:ff inet 10.211.55.18/24 brd 10.211.55.255 scope global enp0s5 valid_lft forever preferred_lft forever inet6 fdb2:2c26:f4e4:0:21c:42ff:fe60:87b2/64 scope global mngtmpaddr dynamic valid_lft 2591430sec preferred_lft 604230sec inet6 fe80::21c:42ff:fe60:87b2/64 scope link valid_lft forever preferred_lft forever
4. 路由轉(zhuǎn)發(fā)測(cè)試
4.1 關(guān)閉路由轉(zhuǎn)發(fā)測(cè)試
- centos7-18設(shè)置 net.ipv4.ip_forward = 0,關(guān)閉路由轉(zhuǎn)發(fā)功能
- centos7-10測(cè)試 Ping 172.16.1.200,網(wǎng)絡(luò)不通
// 設(shè)置 net.ipv4.ip_forward = 0,關(guān)閉路由轉(zhuǎn)發(fā)功能 [root@centos7-18 ~]# sysctl -w net.ipv4.ip_forward=0 net.ipv4.ip_forward = 0
// 測(cè)試 192.168.10.100 Ping 172.16.1.200,網(wǎng)絡(luò)不通 [root@centos7-10 ~]# ping 172.16.1.200 -c5 PING 172.16.1.200 (172.16.1.200) 56(84) bytes of data. --- 172.16.1.200 ping statistics --- 5 packets transmitted, 0 received, 100% packet loss, time 4017ms [root@centos7-10 ~]#
4.2 開啟路由轉(zhuǎn)發(fā)測(cè)試
- centos7-18設(shè)置 net.ipv4.ip_forward = 1,開啟路由轉(zhuǎn)發(fā)功能
- centos7-10測(cè)試 Ping 172.16.1.200,網(wǎng)絡(luò)通
// 設(shè)置 net.ipv4.ip_forward = 1,開啟路由轉(zhuǎn)發(fā)功能 [root@centos7-18 ~]# sysctl -w net.ipv4.ip_forward=1 net.ipv4.ip_forward = 1
// 測(cè)試 192.168.10.100 Ping 172.16.1.200,網(wǎng)絡(luò)通 [root@centos7-10 ~]# ping 172.16.1.200 -c5 PING 172.16.1.200 (172.16.1.200) 56(84) bytes of data. 64 bytes from 172.16.1.200: icmp_seq=1 ttl=64 time=0.850 ms From 10.211.55.18: icmp_seq=2 Redirect Host(New nexthop: 10.211.55.22) 64 bytes from 172.16.1.200: icmp_seq=2 ttl=64 time=0.752 ms From 10.211.55.18: icmp_seq=3 Redirect Host(New nexthop: 10.211.55.22) 64 bytes from 172.16.1.200: icmp_seq=3 ttl=64 time=0.729 ms From 10.211.55.18: icmp_seq=4 Redirect Host(New nexthop: 10.211.55.22) 64 bytes from 172.16.1.200: icmp_seq=4 ttl=64 time=0.471 ms From 10.211.55.18: icmp_seq=5 Redirect Host(New nexthop: 10.211.55.22) 64 bytes from 172.16.1.200: icmp_seq=5 ttl=64 time=0.779 ms --- 172.16.1.200 ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4011ms rtt min/avg/max/mdev = 0.471/0.716/0.850/0.130 ms [root@centos7-10 ~]#
主機(jī)centos7-18 tcpdump抓包結(jié)果
tcpdump -nn -e -i enp0s5 host not 10.211.55.2 and icmp
抓包排除ssh客戶端 10.211.55.2
- -nn 兩個(gè) n 表示不解析域名和端口
- -e 在輸出行打印出數(shù)據(jù)鏈路層的頭部信息
- -i 抓指定接口(網(wǎng)卡)的數(shù)據(jù)包
[root@centos7-18 ~]# tcpdump -nn -e -i enp0s5 host not 10.211.55.2 and icmp tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enp0s5, link-type EN10MB (Ethernet), capture size 262144 bytes // 00:1c:42:ae:b6:41(centos7-10 enp0s5)> 00:1c:42:60:87:b2(centos7-18 enp0s5) 19:59:52.186950 00:1c:42:ae:b6:41 > 00:1c:42:60:87:b2, ethertype IPv4 (0x0800), length 98: 10.211.55.10 > 172.16.1.200: ICMP echo request, id 2040, seq 1, length 64 // 00:1c:42:60:87:b2(centos7-18 enp0s5)> 00:1c:42:44:79:a5(centos7-22 enp0s5) 19:59:52.187068 00:1c:42:60:87:b2 > 00:1c:42:44:79:a5, ethertype IPv4 (0x0800), length 98: 10.211.55.10 > 172.16.1.200: ICMP echo request, id 2040, seq 1, length 64 // 00:1c:42:44:79:a5(centos7-22 enp0s5)> 00:1c:42:ae:b6:41(centos7-10 enp0s5) 19:59:52.187364 00:1c:42:44:79:a5 > 00:1c:42:ae:b6:41, ethertype IPv4 (0x0800), length 98: 172.16.1.200 > 10.211.55.10: ICMP echo reply, id 2040, seq 1, length 64 ^C 3 packets captured 3 packets received by filter 0 packets dropped by kernel
總結(jié)
Linux 通過IP Forward 功能進(jìn)行路由轉(zhuǎn)發(fā),根據(jù)已有路由配置信息把包送到合適的網(wǎng)絡(luò)接口。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux服務(wù)器ubuntu定時(shí)任務(wù)cron設(shè)置每秒執(zhí)行
這篇文章主要介紹了linux服務(wù)器ubuntu定時(shí)任務(wù)cron設(shè)置每秒執(zhí)行,使用 cron 時(shí),有一些注意事項(xiàng)可以幫助你確保任務(wù)按預(yù)期執(zhí)行,并減少潛在的問題,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧2024-02-02jmeter 在linux服務(wù)器的安裝和運(yùn)行教程圖解
本文通過圖文并茂的形式給大家介紹了jmeter 在linux服務(wù)器的安裝和運(yùn)行的,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07Linux下查看nginx apache mysql php的編譯參數(shù)
由于工作的需要,有時(shí)候需要在一臺(tái)不是你參與編譯的環(huán)境調(diào)試環(huán)境,這就需要知道nginx,apache,mysql,php的編譯參數(shù),以下小方法能快速讓你了解默認(rèn)的服務(wù)器里的編譯參數(shù)2014-03-03Centos8最小化部署安裝OpenStack Ussuri的詳細(xì)教程
這篇文章主要介紹了Centos8最小化部署安裝OpenStack Ussuri的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08Linux虛擬主機(jī)面板 kloxo安裝及漢化教程分享
Kloxo的前身是lxadmin,是一款免費(fèi)的虛擬主機(jī)管理系統(tǒng),安裝簡單,功能強(qiáng)大,可以快速地在red hat,centos系列l(wèi)inux系統(tǒng)的主機(jī)上搭建LAMP環(huán)境。新版以完全解除限制無限域名綁定2012-09-09Linux里L(fēng)VM磁盤擴(kuò)容詳細(xì)步驟
大家好,本篇文章主要講的是Linux里L(fēng)VM磁盤擴(kuò)容詳細(xì)步驟,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下哦,方便下次瀏覽2021-11-11詳解Centos7中Nginx開機(jī)自啟動(dòng)的解決辦法
本篇文章主要介紹了詳解Centos7中Nginx開機(jī)自啟動(dòng)的解決辦法,具有一定的參加價(jià)值,有興趣的可以了解一下。2017-03-03