প্রায় এক মাস আগে, আমি সুপারউসারটিতে এই প্রশ্নটি করেছি। সেখানে দেওয়া উত্তর অবশ্যই কাজ করে, তবে আমি এমন একটি সমস্যা নিয়ে এসেছি যা আমি আগে ভাবিনি।
আমার যে সেটআপটি চলছিল (আগের উল্লিখিত উত্তরের ভিত্তিতে) তা ছিল
auto eth0
iface eth0 inet static
address a.b.c.d
netmask 255.255.255.0
network a.b.c.0
broadcast a.b.c.255
gateway a.b.c.254
auto xenbr0
iface xenbr0 inet static
bridge_ports none
address e.f.g.1
netmask 255.255.255.0
তারপরে, আমি ডেটাসেন্টার দ্বারা নির্ধারিত রেঞ্জের একটি ঠিকানা ব্যবহার করার জন্য আমি ডমইউগুলি কনফিগার করব। বিশেষত এই পরিসরটি efg24 / 29 হবে, আমাকে domUs এর জন্য 8 আইপি ঠিকানা উপলব্ধ। গেটওয়েটি সেতুর আইপি হবে, সেখান থেকে প্যাকেটগুলি ইথ 0 এর মাধ্যমে বাইরের বিশ্বে পৌঁছে দেওয়া হবে। এটি পুরোপুরি কাজ করে।
কিছু দিন আগে আমি যে বিষয়টি বুঝতে পেরেছি তা হ'ল, ডমইউগুলি কখনই ইএফজি 1 এর মতো ঠিকানাগুলিতে পৌঁছাতে সক্ষম হবে না, কারণ এটি সেতু নিজেই। তবে, যদি কোনও ডমইউতে আসলে efg1 (প্রকৃত বাইরের আইপি) অ্যাক্সেস করা প্রয়োজন?
সুতরাং, আমি আমাকে যে নেটওয়ার্কগুলি বরাদ্দ করা হয়েছিল তার ভিতরে সমস্ত কিছু সরিয়ে নেওয়া শুরু করে। তখন সমস্যাটি ছিল, একটি / 29 ব্লক সহ, আমি কেবল একটি ডোমইউয়ের জন্য 5 আইপি ঠিকানা উপলব্ধ রাখি:
auto xenbr0
iface xenbr0 inet static
bridge_ports none
address e.f.g.25
netmask 255.255.255.248
আমি আমার নেটওয়ার্কে সর্বদা তিনটি ঠিকানা আলগা করি (একটি "নেটওয়ার্ক" এর জন্য একটি, সেতুর জন্য নিজেই এবং একটি সম্প্রচারের ঠিকানা)। আমি আসলে নেটওয়ার্ক এবং সম্প্রচারের ঠিকানাটি সংজ্ঞায়িত করি নি, তবে ifconfig
এখনও সম্প্রচারের ঠিকানাটি 31 হিসাবে দেখায় (নেটওয়ার্কের শেষ আইপি) এবং আমি কোনও কার্যকরী পদ্ধতিতে 24 ঠিকানায় সেতুটি রাখতে পারি না। ইস্যুটি একটি / 30 নেটওয়ার্কের সাথে আরও খারাপ হয়ে যায়, যেখানে আমার কাছে কেবল ডমইউগুলির জন্য একটি মাত্র চারটি আইপি পাওয়া যায় (হ্যাঁ, আমারও এই জাতীয় নেটওয়ার্ক রয়েছে)।
যেহেতু আমি প্রতি আইপি ঠিকানার জন্য অর্থ প্রদান করছি, আমি তাদের যথাসম্ভব দক্ষতার সাথে ব্যবহার করতে চাই। আমি তখন জেনের রুট নিয়ে গবেষণা শুরু করি। আমি এখন যা করার চেষ্টা করছি তা হ'ল ব্যবহার করা vif-route
এবং network-route
এর /etc/xen/xend-config.sxp
মতো একটি সেটআপ করা:
+-----------------------------+ +-------------+
| dom0 | | domU |
| | | |
-------eth0 vif1.0--------------eth0 |
| a.b.c.d ???? | | e.f.g.24 |
| | | |
+-----------------------------+ +-------------+
এইভাবে ডেটাসেন্টারটি আমার আইপিগুলির জন্য ডোম0 এর এথ0-তে প্যাকেট প্রেরণ করত, ডম0 এটিকে সঠিক ভিএফ-এ পাঠিয়ে দেবে যা এটি ডমইউ এর এথ0-এ ছেড়ে দেবে।
আমি যতই চেষ্টা করি না কেন, ডিবাগ করা শুরু করার জন্য কোনও অর্থবহ ত্রুটি বার্তা ছাড়াই, আমি এটি কাজ করে চলেছি বলে মনে হচ্ছে না। দু'দিন অবিচ্ছিন্ন গুগলিং আমাকে সাহায্য করেনি এবং আমি এই মুহুর্তে একদম ফাঁকা শুকিয়েছি।
আমি কি এটিকে ভুল উপায়ে দেখছি, বা আমি কি ভুলভাবে জিনিস কনফিগার করছি? এই ধরনের একটি সেটআপ এমনকি সম্ভব? যদি তাই হয় তবে আমি কী ভুল করছি?
iface xenbr0 inet manual
। এটি কোনও আইপি ঠিকানা যুক্ত করার চেষ্টা করে এটি প্রতিরোধ করবে।
ip route add e.f.g.24/29 dev xenbr0
হোস্টের মতো একটি রুট রাখুন , যা ইন্টারনেট থেকে ব্রিজের বাইরে সমস্ত কিছু ফরোয়ার্ড করবে। তারপরে হোস্টগুলিতে, তাদের ট্র্যাফিকের একইভাবে তাদের E0 এর বাইরে ফরোয়ার্ড করুন।