คุณสมบัติ BGP ของ Vultr ช่วยให้คุณสามารถนำพื้นที่ IP ของคุณเองและใช้งานได้ทั่วทุกสถานที่ของเราด้วยอินสแตนซ์ OpenBSD ไม่จำเป็นต้องใช้ซอฟต์แวร์เพิ่มเติม!
เริ่มต้นใช้งาน
ในการใช้ BGP คุณต้องมีพื้นที่ IP ของคุณเอง (v4 หรือ v6) หากคุณมี ASN ของคุณเองคุณสามารถใช้สิ่งนั้นหรือเราสามารถกำหนดชื่อส่วนตัว
เปิดตั๋วด้วยข้อมูลต่อไปนี้:
- ช่วง IP ของคุณ
- ASN ของคุณ(ถ้าคุณมี)
- LOA สำหรับช่วง IP ของคุณ(เฉพาะในกรณีที่คุณไม่มี ASN ของคุณเอง)
เมื่อกำหนดค่า BGP ในบัญชีของคุณแล้วคุณสามารถดำเนินการกำหนดค่า BGP ได้
ตัวอย่างของเราจะใช้ต่อไปนี้:
- ASN: 64512
- ที่อยู่ IPv4 ของอินสแตนซ์: 203.0.113.123
- ที่อยู่ IPv6 ของอินสแตนซ์: 2001: DB8: 1000 :: 1/64
- บล็อก IPv4: 198.51.100.0/24
- บล็อก IPv6: 2001: 0db8 :: / 32
- รหัสผ่าน BGP: hunter2
การตั้งค่า BGP
OpenBSD มาพร้อมกับการbgpd(8)
ติดตั้งแล้วและต้องการการเปลี่ยนแปลงไฟล์การตั้งค่าเพียงเล็กน้อยเพื่อเริ่มต้น
แก้ไขrc.conf.local(8)
เพื่อเพิ่มบรรทัดต่อไปนี้เพื่ออนุญาตให้bgpd(8)
daemon เริ่มทำงานrc.d(8)
bgpd_flags=
ตัวอย่างที่สมบูรณ์ของbgpd.conf(8)
สามารถพบได้ที่/etc/examples/bgpd.conf
และมีตัวเลือกการกำหนดค่าพิเศษมากมายที่คุณอาจต้องการ
ปรับการกำหนดค่าตัวอย่างด้านล่างตามต้องการและเขียนถึง/etc/bgpd.conf
(ให้แน่ใจว่าสิทธิ์สำหรับไฟล์นี้คือ 600)
AS 64512
router-id 203.0.113.123
listen on 127.0.0.1
listen on ::1
log updates
network 198.51.100.0/24
network 2001:0db8::/32
neighbor 169.254.169.254 {
remote-as 64515
descr "Vultr IPv4"
announce IPv4 unicast
announce IPv6 none
tcp md5sig password hunter2
multihop 2
local-address 203.0.113.123
}
neighbor 2001:19f0:ffff::1 {
remote-as 64515
descr "Vultr IPv6"
announce IPv4 none
announce IPv6 unicast
tcp md5sig password hunter2
multihop 2
local-address 2001:DB8:1000::1
}
bgpd -f /etc/bgpd.conf -n
เพื่อให้แน่ใจว่าทุกอย่างอยู่ในลำดับที่คุณสามารถออกคำสั่ง หากbgpd(ok)
ถูกส่งคืนคุณสามารถเริ่ม daemon
# rcctl enable bgpd
# rcctl start bgpd
bgpd(ok)
การตรวจสอบสถานะของการประชุม BGP bgpctl(8)
ของคุณคุณจะต้องใช้ ตัวอย่างเช่นหากต้องการดูภาพรวมพื้นฐานที่คุณสามารถใช้ได้bgpctl show summary
# bgpctl show summary
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
Vultr IPv6 64515 230 207 0 01:41:40 0
Vultr IPv4 64515 244 220 0 01:48:09 0
เพื่อดูข้อมูลรายละเอียดเกี่ยวกับการใช้งาน BPG เพื่อนบ้าน bgpctl show neighbor
BGP neighbor is 2001:19f0:ffff::1, remote AS 64515, Multihop (2)
Description: Vultr IPv6
BGP version 4, remote router-id 45.63.102.186, using md5sig
BGP state = Established, up for 01:46:45
Last read 00:00:08, holdtime 90s, keepalive interval 30s
Neighbor capabilities:
Multiprotocol extensions: IPv6 unicast
Route Refresh
Graceful Restart: Timeout: 120, IPv6 unicast
4-byte AS numbers
Message statistics:
Sent Received
Opens 1 1
Notifications 0 0
Updates 2 1
Keepalives 214 240
Route Refresh 0 0
Total 217 242
Update statistics:
Sent Received
Updates 4 0
Withdraws 0 0
End-of-Rib 1 1
Local host: 2001:DB8:1000::1, Local port: 38298
Remote host: 2001:19f0:ffff::1, Remote port: 179
BGP neighbor is 169.254.169.254, remote AS 64515, Multihop (2)
Description: Vultr IPv4
BGP version 4, remote router-id 45.63.102.186, using md5sig
BGP state = Established, up for 01:53:14
Last read 00:00:14, holdtime 90s, keepalive interval 30s
Neighbor capabilities:
Multiprotocol extensions: IPv4 unicast
Route Refresh
Graceful Restart: Timeout: 120, IPv4 unicast
4-byte AS numbers
Message statistics:
Sent Received
Opens 1 1
Notifications 0 0
Updates 2 1
Keepalives 227 253
Route Refresh 0 0
Total 230 255
Update statistics:
Sent Received
Updates 4 0
Withdraws 0 0
End-of-Rib 1 1
Local host: 203.0.113.123, Local port: 19824
Remote host: 169.254.169.254, Remote port: 179
ณ จุดนี้เราสามารถเริ่มกำหนดที่อยู่ IP ของเราให้กับอินเทอร์เฟซ(เช่นโดยการกำหนดค่า/etc/hostname.lo1
)เพื่อให้แอปพลิเคชันสามารถกำหนดค่าให้ฟัง IP เหล่านี้ได้
หากคุณตั้งใจจะใช้ที่อยู่ IP ของคุณในหลาย ๆ อินสแตนซ์คุณจะต้องปรับnetwork
งบในแต่ละอินสแตนซ์เพื่อประกาศเส้นทางที่เฉพาะเจาะจงมากขึ้นสำหรับ IP เหล่านั้น
อินสแตนซ์ A
AS 64512
router-id 203.0.113.123
listen on 127.0.0.1
listen on ::1
log updates
network 198.51.100.0/24
network 198.51.100.1/32
network 2001:0db8::/32
network 2001:0db8::/64
neighbor 169.254.169.254 {
remote-as 64515
descr "Vultr IPv4"
announce IPv4 unicast
announce IPv6 none
tcp md5sig password hunter2
multihop 2
local-address 203.0.113.123
}
neighbor 2001:19f0:ffff::1 {
remote-as 64515
descr "Vultr IPv6"
announce IPv4 none
announce IPv6 unicast
tcp md5sig password hunter2
multihop 2
local-address 2001:DB8:1000::1
}
อินสแตนซ์ B
AS 64512
router-id 203.0.113.124
listen on 127.0.0.1
listen on ::1
log updates
network 198.51.100.0/24
network 198.51.100.2/32
network 2001:0db8::/32
network 2001:0db8:0001::/64
neighbor 169.254.169.254 {
remote-as 64515
descr "Vultr IPv4"
announce IPv4 unicast
announce IPv6 none
tcp md5sig password hunter2
multihop 2
local-address 203.0.113.124
}
neighbor 2001:19f0:ffff::1 {
remote-as 64515
descr "Vultr IPv6"
announce IPv4 none
announce IPv6 unicast
tcp md5sig password hunter2
multihop 2
local-address 2001:DB8:1000::2
}
หมายเหตุ: อย่าลืมใช้รหัสผ่านที่แตกต่างจากที่อ้างถึงในบทความนี้