ที่อยู่ ip ที่สองบนอินเทอร์เฟซเดียวกัน แต่อยู่บนเครือข่ายย่อยอื่น


10

เป็นไปได้หรือไม่ที่ CentOS 5.7 64 บิตจะมีที่อยู่ IP ที่สองในอินเทอร์เฟซเดียว (เช่น eth0) - การกำหนดค่าส่วนต่อประสานนามแฝง - ในซับเน็ตอื่น

นี่คือการกำหนดค่าดั้งเดิมสำหรับ eth0

more etc/sysconfig/network-scripts/ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.91.255
HWADDR=00:1D:09:FE:DA:04
IPADDR=192.168.91.250
NETMASK=255.255.255.0
NETWORK=192.168.91.0
ONBOOT=yes

และนี่คือการกำหนดค่าสำหรับ eth0: 0

more etc/sysconfig/network-scripts/ifcfg-eth0:0
# Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=10.10.191.255
DNS1=10.10.15.161
DNS2=10.10.18.36
GATEWAY=10.10.191.254
HWADDR=00:1D:09:FE:DA:04
IPADDR=10.10.191.210
NETMASK=255.255.255.0
NETWORK=10.39.191.0
ONPARENT=yes

ไฟล์ resolv.conf ควรเปลี่ยนแปลงอย่างไรเนื่องจากมีเกตเวย์ที่ต่างกันสองตัว การเปลี่ยนแปลงอื่น ๆ ที่จำเป็น?

คำตอบ:


4

เป็นไปได้หรือไม่ที่จะมีที่อยู่ IP ที่สองในอินเทอร์เฟซเดียว (เช่น. eth0) - การกำหนดค่าส่วนต่อประสานนามแฝง - ในซับเน็ตอื่น

แน่นอนไม่มีอะไรหยุดคุณจากการทำเช่นนั้น อินเทอร์เฟซเครือข่ายจะเห็นการออกอากาศสำหรับซับเน็ตอื่นทั้งคู่ แต่นั่นอาจจะไม่สร้างความแตกต่างอย่างใหญ่หลวงเว้นแต่ว่าคุณจะมีเครือข่ายไม่ว่างจริง ๆ

ไฟล์ resolv.conf ควรเปลี่ยนแปลงอย่างไรเนื่องจากมีเกตเวย์ที่ต่างกันสองตัว การเปลี่ยนแปลงอื่น ๆ ที่จำเป็น?

คุณไม่สามารถมีเกตเวย์เริ่มต้นได้ 2 แห่ง ลบเกตเวย์ออกจากหนึ่งในอินเตอร์เฟสเหล่านั้น การมี 2 อย่างนี้ก็ไม่ได้ทำอะไรที่มีประโยชน์ จะใช้เกตเวย์เดียวเท่านั้น

การแก้ไข DNS (resolv.conf) ไม่มีส่วนเกี่ยวข้องกับการกำหนดค่าการกำหนดเส้นทางของคุณ ในการแก้ไข Linux DNS นั้นเป็นระบบที่กว้างและไม่มีอะไรเกี่ยวข้องกับการกำหนดค่าอินเตอร์เฟสเลย เพียงวางเซิร์ฟเวอร์ DNS ที่ถูกต้องสองตัวใน resolv.conf ของคุณ หากคุณต้องการสิ่งที่สูงกว่านี้เพื่อส่งคำขอไปยังเซิร์ฟเวอร์อัปสตรีมอื่น ๆ คุณอาจต้องติดตั้งบางอย่างเช่น DNSMasq


ฉันสงสัยว่าฉันต้องระบุเกตเวย์ต่อ ifcfg-eth0 และหนึ่งต่อ ifcfg-eth0: 0 หรือไม่ [ตั้งแต่นั้นควรจะอยู่ในเครือข่ายย่อยที่แตกต่างกัน?
fptstl

2

ดังที่ได้กล่าวไปแล้วว่าไม่มีอะไรผิดที่จะมีซับเน็ตสองเครือข่ายที่แตกต่างกันในเครือข่ายเดียวและมันจะทำงานได้ตราบใดที่คุณเชื่อมต่อกับกลุ่มสวิตช์ / สวิตช์เดียวกันสำหรับเครือข่ายทั้งสองและคุณไม่มีกฎ VLAN ใด ๆ โซน

ไม่ว่าคุณจะมีที่อยู่ IP / ซับเน็ตจำนวนกี่รายการจะมีเกตเวย์เริ่มต้นเพียงหนึ่งเดียวเสมอ เกตเวย์เริ่มต้นจะใช้เมื่อที่อยู่ IP ไม่ตรงกับเส้นทางอื่น ๆ ในตารางเส้นทาง ดังนั้นในตัวอย่างของคุณสำหรับทุกคำขอที่ไม่ได้เป็นส่วนหนึ่งของเครือข่าย 192.168.91.0/24 หรือ 10.10.191.0/24 จะถูกเปลี่ยนเส้นทางไปยังเกตเวย์เริ่มต้น

แต่ถ้าคุณต้องการคุณยังสามารถเพิ่มเส้นทางด้วยตนเองได้ สมมุติว่าคุณมีเครือข่ายส่วนตัวที่สาม 10.10.200.0/24 ซึ่งสามารถเข้าถึงได้ผ่าน 10.10.191.0/24 คุณต้องเพิ่มเส้นทางคงที่:

ip route add 10.10.200.0/24 via 10.10.191.254 dev eth0:0

Resolv.conf ไม่มีส่วนเกี่ยวข้องกับเกตเวย์และใช้สำหรับ DNS resolvs มีการอ่านที่นี่สำหรับข้อมูลเพิ่มเติม


0

ปกติไฟล์ /etc/resolv.conf เป็นไฟล์กำหนดค่าสำหรับตัวเลือกที่เกี่ยวข้องกับ DNS (เนมเซิร์ฟเวอร์, โดเมนการค้นหา, ecc) ในการกระจายแบบ Red-Hat ฉันจะแนะนำให้คุณสร้างสองไฟล์:

/ etc / sysconfic / network-script / route-eth0
/ etc / sysconfic / network-script / route-eth0: 0 (ฉันไม่เคยเห็นสิ่งนี้มาก่อน)

ในแต่ละรายการคุณสามารถกำหนดตัวเลือกเส้นทางทั้งหมดสำหรับส่วนต่อประสานที่เฉพาะเจาะจง

สิ่งนี้ไม่ถูกต้อง แม้ว่าจะยอมรับได้ในระบบ RHEL / CentOS เพื่อจัดการอินเตอร์เฟส Ethernet ในหลาย ๆ ไฟล์ แต่การจัดการเส้นทางนั้นแตกต่างกัน เราต์สำหรับอินเตอร์เฟสที่เจาะจงจะต้องอยู่รวมกันเป็นไฟล์เดียวสำหรับอินเตอร์เฟสนั้น กล่าวอีกนัยหนึ่งหากคุณต้องการเส้นทางที่กำหนดเองสำหรับ eth0: 1, eth0: 2 และ eth0: 3 พวกเขาจะต้องอยู่ใน:

/etc/sysconfig/network-script/route-eth0

ไม่มีสิ่งใดที่ชอบ: 1 สามารถต่อท้ายชื่อไฟล์ได้

คำตอบก่อนหน้านี้แนะนำให้สร้างไฟล์สำหรับอินเทอร์เฟซใหม่:

/etc/sysconfig/network-scripts/ifcfg-eth0:1 

สิ่งนี้ถูกต้อง แต่คุณไม่ควรวางคำสั่ง GATEWAY = ไว้ในนั้น ซึ่งจะส่งผลให้เกตเวย์เริ่มต้นหลายแห่งถูกสร้างขึ้นซึ่งทำให้การกำหนดเส้นทางไปยังการทำงานไม่ถูกต้อง ปล่อยให้ตัวเลือก GATEWAY = ออกและเพิ่มเส้นทางที่จำเป็นไปที่:

/etc/sysconfig/network-script/route-eth0

1
ดูเหมือนว่าคุณกำลังพยายามแสดงความคิดเห็นในคำตอบอื่นแทนที่จะตอบคำถาม คุณควรแก้ไขคำตอบเพื่อมุ่งเน้นการตอบคำถาม
kasperd

0

ปกติไฟล์ /etc/resolv.conf เป็นไฟล์กำหนดค่าสำหรับตัวเลือกที่เกี่ยวข้องกับ DNS (เนมเซิร์ฟเวอร์, โดเมนการค้นหา, ecc) ในการกระจายแบบ Red-Hat ฉันจะแนะนำให้คุณสร้างสองไฟล์:

/etc/sysconfig/network-script/route-eth0  
/etc/sysconfig/network-script/route-eth0:0  (I have not ever seen this)

ในแต่ละรายการคุณสามารถกำหนดตัวเลือกเส้นทางทั้งหมดสำหรับส่วนต่อประสานที่เฉพาะเจาะจง กฎที่คุณใส่จะถูกโหลดเมื่อบู๊ต แนะนำให้ตั้งเกตเวย์เริ่มต้นไว้ในไฟล์ / etc / sysconfig / network

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.