root@kolla02:~/dev-env# ip rs
ค่าเริ่มต้นผ่าน 192.168.1.101 dev eno1
10.0.0.0/16 dev eno2 proto kernel ขอบเขตลิงค์ src 10.0.0.1
10.1.0.0/16 dev virbr2 proto kernel ขอบเขตลิงค์ src 10.1.0.1
10.230.0.0/16 dev virbr3 proto kernel ขอบเขตลิงค์ src 10.230.0.1
192.168.0.0/16 dev eno1 ลิงก์ขอบเขตเคอร์เนลโปรโต src 192.168.20.11
192.168.1.101 dev eno1 proto dhcp ขอบเขตลิงค์ src 192.168.20.11 เมตริก 100
192.168.121.0/24 dev virbr1 โปรโตเคอร์เนลขอบเขตลิงก์ src 192.168.121.1
root@kolla02:~/dev-env# curl google.com
curl: (7) ไม่สามารถเชื่อมต่อกับพอร์ต <proxy> <พอร์ต>: ไม่มีเส้นทางไปยังโฮสต์
root@kolla02:~/dev-env# curl google.com --interface eno1
<HTML><HEAD><เมตา http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 ย้ายแล้ว</TITLE></HEAD><BODY>
<H1>301 ย้ายแล้ว</H1>
ย้ายเอกสารแล้ว
<A HREF="http://www.google.com/">ที่นี่</A>
</BODY></HTML>
ฉันต้องการให้ curl ทำงานโดยไม่ต้องระบุอินเทอร์เฟซทุกครั้ง เส้นทางเริ่มต้นถูกตั้งค่าไว้ดังนั้นไม่แน่ใจว่าเหตุใดจึงใช้งานไม่ได้หากไม่มีอินเทอร์เฟซ สิ่งนี้ได้รับการแก้ไขอย่างไร
ระบบปฏิบัติการ --> อูบุนตู 20.04
หากเส้นทางพิเศษทั้งหมดถูกลบออกจากสิ่งนี้:
เริ่มต้นผ่าน 192.168.1.101 dev eno1 โปรโต dhcp src 192.168.20.11 เมตริก 100
192.168.0.0/16 dev eno1 ลิงก์ขอบเขตเคอร์เนลโปรโต src 192.168.20.11
192.168.1.101 dev eno1 proto dhcp ขอบเขตลิงค์ src 192.168.20.11 เมตริก 100
เส้นทางเริ่มต้นเริ่มทำงานอีกครั้ง:
root@kolla02:~/dev-env# curl google.com
<HTML><HEAD><เมตา http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 ย้ายแล้ว</TITLE></HEAD><BODY>
<H1>301 ย้ายแล้ว</H1>
ย้ายเอกสารแล้ว
<A HREF="http://www.google.com/">ที่นี่</A>
</BODY></HTML
แต่เส้นทางเหล่านั้นจำเป็นสำหรับคนพเนจรและไม่ใช่วิธีแก้ปัญหาในกรณีนี้
อัปเดต:
ดูเหมือนว่ารายการที่ขัดแย้งกันคือ:
10.1.0.0/16 dev virbr2 proto kernel ขอบเขตลิงค์ src 10.1.0.1
ทันทีที่ลบสิ่งนี้ออก ทุกอย่างก็ทำงานได้ดี แต่เส้นทางนี้จำเป็นสำหรับคนจรจัดที่จะทำงาน
root@kolla02:~/dev-env# ip ก
1: จริง: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์ / ย้อนกลับ 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 ขอบเขตโฮสต์เลย
valid_lft ตลอดไป reserved_lft ตลอดไป
inet6 ::1/128 ขอบเขตโฮสต์
valid_lft ตลอดไป reserved_lft ตลอดไป
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP กลุ่มเริ่มต้น qlen 1000
ลิงค์/อีเทอร์ a4:bf:01:55:f6:28 brd ff:ff:ff:ff:ff:ff
inet 192.168.20.11/16 brd 192.168.255.255 ขอบเขต global eno1
valid_lft ตลอดไป reserved_lft ตลอดไป
ลิงค์ขอบเขต inet6 fe80::a6bf:1ff:fe55:f628/64
valid_lft ตลอดไป reserved_lft ตลอดไป
3: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP กลุ่มเริ่มต้น qlen 1000
ลิงค์/อีเธอร์ a4:bf:01:55:f6:29 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::a6bf:1ff:fe55:f629/64
valid_lft ตลอดไป reserved_lft ตลอดไป
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state เริ่มต้นกลุ่ม
ลิงค์/อีเธอร์ 02:42:0b:2d:4f:ee brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 ขอบเขต global docker0
valid_lft ตลอดไป reserved_lft ตลอดไป
5: virbr1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP กลุ่มเริ่มต้น qlen 1000
ลิงค์/อีเธอร์ 52:54:00:07:f9:55 brd ff:ff:ff:ff:ff:ff
inet 192.168.121.1/24 brd 192.168.121.255 ขอบเขต global virbr1
valid_lft ตลอดไป reserved_lft ตลอดไป
6: virbr1-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr1 state DOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ 52:54:00:07:f9:55 brd ff:ff:ff:ff:ff:ff
7: virbr2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP กลุ่มเริ่มต้น qlen 1000
ลิงค์/อีเธอร์ 52:54:00:9c:15:16 brd ff:ff:ff:ff:ff:ff
inet 10.1.0.1/16 brd 10.1.255.255 ขอบเขต global virbr2
valid_lft ตลอดไป reserved_lft ตลอดไป
8: virbr2-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr2 state DOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ 52:54:00:9c:15:16 brd ff:ff:ff:ff:ff:ff
9: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:99:a4:2f brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe99:a42f/64
valid_lft ตลอดไป reserved_lft ตลอดไป
10: macvtap0@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:2e:82:8b brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe2e:828b/64
valid_lft ตลอดไป reserved_lft ตลอดไป
11: macvtap1@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:ff:40:a0 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:feff:40a0/64
valid_lft ตลอดไป reserved_lft ตลอดไป
12: vnet1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:44:07:25 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe44:725/64
valid_lft ตลอดไป reserved_lft ตลอดไป
13: vnet2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:55:fc:18 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe55:fc18/64
valid_lft ตลอดไป reserved_lft ตลอดไป
14: macvtap2@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:ee:cf:c6 brd ff:ff:ff:ff:ff:ff
inet6 fe80::5054:ff:feee:cfc6/64 ลิงค์ขอบเขต
valid_lft ตลอดไป reserved_lft ตลอดไป
15: macvtap3@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:b9:1a:e0 brd ff:ff:ff:ff:ff:ff
inet6 fe80::5054:ff:feb9:1ae0/64 ลิงค์ขอบเขต
valid_lft ตลอดไป reserved_lft ตลอดไป
16: vnet3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:65:ab:6f brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe65:ab6f/64
valid_lft ตลอดไป reserved_lft ตลอดไป
17: vnet4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:0f:8e:63 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe0f:8e63/64
valid_lft ตลอดไป reserved_lft ตลอดไป
18: macvtap4@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:2c:39:9f brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe2c:399f/64
valid_lft ตลอดไป reserved_lft ตลอดไป
19: macvtap5@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:78:8b:e2 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe78:8be2/64
valid_lft ตลอดไป reserved_lft ตลอดไป
20: vnet5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:3d:c3:28 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe3d:c328/64
valid_lft ตลอดไป reserved_lft ตลอดไป
21: vnet6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:bd:b4:dd brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:febd:b4dd/64
valid_lft ตลอดไป reserved_lft ตลอดไป
22: macvtap6@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:a3:7a:db brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fea3:7adb/64
valid_lft ตลอดไป reserved_lft ตลอดไป
23: macvtap7@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:9a:31:0f brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe9a:310f/64
valid_lft ตลอดไป reserved_lft ตลอดไป
24: vnet7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:78:db:b6 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe78:dbb6/64
valid_lft ตลอดไป reserved_lft ตลอดไป
25: vnet8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:93:71:45 brd ff:ff:ff:ff:ff:ff
inet6 fe80::fc54:ff:fe93:7145/64 ลิงค์ขอบเขต
valid_lft ตลอดไป reserved_lft ตลอดไป
26: macvtap8@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:99:c1:9c brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe99:c19c/64
valid_lft ตลอดไป reserved_lft ตลอดไป
27: macvtap9@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 สถานะ qdisc fq_codel กลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:11:a9:ab brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe11:a9ab/64
valid_lft ตลอดไป reserved_lft ตลอดไป
28: vnet9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:37:be:e0 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe37:bee0/64
valid_lft ตลอดไป reserved_lft ตลอดไป
29: vnet10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr1 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:78:6f:36 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::fc54:ff:fe78:6f36/64
valid_lft ตลอดไป reserved_lft ตลอดไป
30: macvtap10@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:51:1e:a4 brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe51:1ea4/64
valid_lft ตลอดไป reserved_lft ตลอดไป
31: macvtap11@eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 500
ลิงค์/อีเธอร์ 52:54:00:7f:f8:6e brd ff:ff:ff:ff:ff:ff
ลิงค์ขอบเขต inet6 fe80::5054:ff:fe7f:f86e/64
valid_lft ตลอดไป reserved_lft ตลอดไป
32: vnet11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master virbr2 state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ fe:54:00:98:1d:35 brd ff:ff:ff:ff:ff:ff
inet6 fe80::fc54:ff:fe98:1d35/64 ลิงค์ขอบเขต
valid_lft ตลอดไป reserved_lft ตลอดไป
อัปเดต 2:
ฉันเปลี่ยนเครือข่ายส่วนตัวคนจรจัดจาก 10.1.0.0/16 เป็นช่วงส่วนตัว 172.16.0.0/16 และเริ่มใช้งานได้ @Michael Hampton ให้คำแนะนำเส้นทางที่ขัดแย้งกันนี้ พร็อกซี http ถูกเปลี่ยนเส้นทางไปยังเครือข่ายส่วนตัวของคนจรจัดภายในแทนที่จะออกไป
Vagrant.configure('2') ทำ |config|
(1..6).แต่ละทำ |i|
config.vm.define "vm-#{i}" ทำ |โหนด|
config.vm.box = 'ทั่วไป/ubuntu2004'
node.vm.network 'สาธารณะ_เครือข่าย'
:dev => 'eno1',
:mode => 'บริดจ์',
:netmask => '255.255.0.0',
:ip => "192.168.20.#{50 + i}"
node.vm.network 'สาธารณะ_เครือข่าย'
:dev => 'อีโน2',
:bridge => 'อีโน2',
:netmask => '255.255.0.0',
:ip => "10.0.87.#{i}"
node.vm.network 'ส่วนตัว_เครือข่าย'
:forward_mode => 'แนท',
:forward_device => 'eno1',
:ip => "172.16.0.#{10+i}",
:netmask => '255.255.0.0'
node.vm.provider 'libvirt' ทำ |v| # เอกสาร -> https://github.com/vagrant-libvirt/vagrant-libvirt
# หน่วยความจำในหน่วย MBytes
v.memory = $mem
# จำนวนของซีพียูเสมือน
v.cpus = $ซีพียู
# การจำลองเสมือนที่ซ้อนกัน
v.ซ้อน = จริง
# ขนาดอิมเมจสำหรับบูตเป็น GB
v.machine_virtual_size = 150
v.storage :ไฟล์,
:ขนาด => 100,
:allow_existing => จริง,
:path => "vm-#{i}-data.img"
node.vm.provision "shell", inline: $script
จบ
จบ
จบ
จบ