12/25/2023

Ping Check Internet Switch Network Notification Line.

Ping Check Internet Switch Network Notification Line.

1. ใช้งานที่ เครื่อง VMware .2.99
1.1.ลากสายจาก Router wifi Fttx เข้า VMware
1.2.ตั้งค่า Virtual switches ชื่อ FttxWifi
1.3.ตั้งค่า Add port group ชื่อ FttxWifi

2. ติดตั้ง 22.04 add network 2 Adapter
- วง 2 DMZ
- และ FTTX รับ DHCP จาก FttxWifi
- update upgrade ตั้ง Time zone
set-timezone Asia/Bangkok

3. config ip
nano /etc/netplan/00-installer-config.yaml

network:
ethernets:
ens160: # Fix .2
dhcp4: false
addresses: [192.168.2.8/24]
nameservers:
addresses: [192.168.2.2,8.8.8.8]
routes:
- to: default
via: 192.168.2.2
ens192: # DHCP form fttx TOT.
dhcp4: true
version: 2



3.1. fix ip .2
3.2. fttx รับ DHCP จาก FttxWifi Network (ข้อ 1.3)

4. นำไปใช้ด้วยคำสั่ง หรือ reboot เครื่อง
netplan apply

5. ตรวจเช็ค IP ดูว่าได้ IP ทั้งสองหรือไม่
ifconfig


(ขั้นตอนนี้อาจจะไม่ได้ใช้งาน)
ติดตั้ง network-manager แล้ว Reboot เครื่อง
apt-get install network-manager

6. Code เช็ค และแจ้งเตือน XXXXXXXXXX คือ ID ของ Line ที่ต้องการส่งเข้า
CheckNet.sh
  1. #!/bin/bash
  2.         ping -c 1 -t 116 http://www.google.com
  3.         if [[ "$?" == "1" ]] # 1 is internet is down.
  4.         then
  5.                 # Net fttx down. change up to .2
  6.                 ifconfig ens160 up  # .2
  7.                 ifconfig ens192 down # fttx
  8.                 sleep 5 # Wait switch network.
  9.                
  10.                 ################## Test To Line ###############################
  11.                 #curl -X POST -H 'Authorization: Bearer XXXXXXXXXX' -F 'message=Internet FTTX down.Please check! From IP 192.168.2.8' https://notify-api.line.me/api/notify
  12.                 ################## To It Group ################################
  13.                 curl -X POST -H 'Authorization: Bearer XXXXXXXXXX' -F 'message=Internet FTTX down.Please check! From IP 192.168.2.8' https://notify-api.line.me/api/notify
  14.         #else
  15.                 # Net fttx up. down .2
  16.                 #ifconfig ens192 up  # fttx
  17.                 #ifconfig ens160 down # .2
  18.         fi
  19.  

7. Code เมื่อตรวจสอบเสร็จแล้วกลับไปใช้ Network FttxWifi
  1. SwitchToFttx.sh
  2. #!/bin/bash
  3.         # Net fttx up. down .2
  4.         ifconfig ens192 up  # fttx
  5.         ifconfig ens160 down # .2


8. Code สำหรับปิด DMZ เพื่อให้ใช้งาน FttxWifi
DownDMZ.sh
  1. #!/bin/bash
  2.         ifconfig ens160 down # .2


9. ใส่ ไว้ใน cron เพื่อให้ทำตอนเปิดเครื่อง
crontab -e เมื่อเปิดเครื่องให้ปิด DMZ เพื่อใช้ Network FttxWifi.
#Down DMZ Network When Start.
@reboot /home/sa/DownDMZ.sh

#Check internet Fttx Wifi.
5 8-18 * * 1-6 bash /home/sa/CheckNet.sh

# 1 Hour switch to fttx wifi disable dmz. For check Fttx again.
0 8-18 * * 1-6 bash /home/sa/SwitchToFttx.sh



การทำงาน
1. เปิดเครื่อง ปิด Network .2 เปิดใช้เฉพาะ FTTX
2. เช็ค Ping ทุก 5 นาที วันจันทร์ - เสาร์ เวลา 8 - 18 น. ถ้า เน็ตเสีย ปิด Network FTTX เปิด Network .2 เพื่อส่งแจ้งเตือนทาง Line คำสั่ง Check
bash CheckNet.sh
เมื่อได้รับเตือนต้องเข้าเช็ค ว่า Fttx เสียหรือไม่ ถ้าเช็ค Fttx ใช้งานได้แล้ว ให้ Run คำสั่ง
bash SwitchToFttx.sh
เพื่อกลับไปใช้ Network Fttx และปิด Network .2
3. กรณีไม่ได้เข้าเช็ครออีก 1 ชั่วโมง จะทำ Auto Switch
bash SwitchToFttx.sh
เพื่อกลับไปใช้เน็ต FTTX ปิดวง .2
และเช็คซ้ำอีกครั้งและแจ้งเตือนถ้าเน็ต Fttx ยังเสียอยู่

No comments:

Post a Comment