আমার সেটআপে মাল্টিকাস্টে টিএক্স ট্র্যাফিক আইপটবেবল দ্বারা চিহ্নিত করা হয়েছিল তবে নতুন রাউটিং টেবিলগুলি ব্যবহার করে পলিসি রাউটিং কখনও কাজ করেনি। যদিও এটি ইউনিকাস্ট টিএক্স প্যাকেটগুলির জন্য কাজ করেছে (উত্স প্যাকেটগুলি এথ 0 থেকে এথ 5 এ পুনঃনির্দেশিত)। সিসিআরসি ম্যাক এবং এসআরসি আইপি ঠিকানাটি এথ 5 এর পরিবর্তিত হয়ে গেছে তাই স্যুইচ শিখতে সমস্যা তৈরি করবে না। কার্নেল প্যাকেট নির্ধারণের জন্য সমস্ত কর্নেল সমর্থন CONFIG_NET_SCHED অবশ্যই সক্ষম থাকতে হবে
ইউনিকাস্ট এবং মাল্টিকাস্ট ট্র্যাফিকের জন্য E00 থেকে E5 এ পুনর্নির্দেশের জন্য ওয়ার্কস এর নীচে
নেটফিল্টারটি কার্নেলের কোনও প্যাকেটের প্রতিনিধিত্বকারী কাঠামোর সাথে সরাসরি ইন্টারঅ্যাক্ট করতে ব্যবহার করা যেতে পারে। এই কাঠামো, sk_buff, "__u32 nfmark" নামক একটি ক্ষেত্র রয়েছে যা আমরা সংশোধন করতে যাচ্ছি। টিসি এর পরে কোনও প্যাকেটের গন্তব্য শ্রেণি নির্বাচন করতে সেই মানটি পড়বে।
IP_ADDR_ETH0 = ifconfig eth0 | grep 'inet addr'| cut -d ':' -f 2 | cut -d ' ' -f 1 | tr -d '\n'
iptables -t ম্যাঙ্গেল -A OUTPUT -s {{IP_ADDR_ETH0} -p udp - ম্যাচ মাল্টিপোর্ট - ডিপোর্স 329,330 -o এথ0-জে মার্ক - সেট-চিহ্ন 2
এমন একটি গাছ তৈরি করতে যা যা আমাদের শিডিয়ুলিং নীতি উপস্থাপন করে এবং এটি পিআরআইও কিউডিস্ক (প্যাকেট শিডিয়ুলার) ব্যবহার করে (অন্যান্য উপলব্ধগুলির চেষ্টা করতে পারে)। qdiscs একটি ডিভাইসের গোড়ায় সংযুক্ত হচ্ছে
tc qdisc dev eth0 রুট হ্যান্ডেল 15: প্রিও যোগ করুন
এখন একদিকে ট্র্যাফিক শেপিং নীতি রয়েছে এবং অন্যদিকে প্যাকেটগুলি চিহ্নিত করছে। দুটি সংযোগ করতে, আমাদের একটি ফিল্টার প্রয়োজন।
ম্যান টিসি-মিরর (8) দেখুন: মিররযুক্ত ক্রিয়া প্যাকেটটি মিররিং (অনুলিপি করা) বা প্যাকেটটি পুনর্নির্দেশের (চুরি) অনুমতি দেয় it মিররিং হ'ল যা কখনও কখনও সুইচ পোর্ট অ্যানালাইজার (স্প্যান) হিসাবে পরিচিত এবং সাধারণত বিশ্লেষণ এবং / অথবা ডিবাগ প্রবাহ হিসাবে ব্যবহৃত হয়।
man tc-fw (8) দেখুন: fw - fwmark ট্র্যাফিক কন্ট্রোল ফিল্টার fw ফিল্টার iptables দ্বারা পূর্ববর্তী সেট fwmark এর উপর ভিত্তি করে প্যাকেটগুলিকে শ্রেণিবদ্ধ করতে দেয়। যদি এটি ফিল্টারটির 'হ্যান্ডেল' এর অনুরূপ হয় তবে ফিল্টারটি মেলে। আইপটিবলগুলি মার্ক চিহ্নের সাথে একক প্যাকেটগুলি চিহ্নিত করতে দেয় বা কনকমার্ক ব্যবহার করে পুরো সংযোগগুলি দেয়।
MAC_ADDR_ETH1 = cat /sys/class/net/eth1/address
IP_ADDR_ETH1 = ifconfig eth1 | grep 'inet addr'| cut -d ':' -f 2 | cut -d ' ' -f 1 | tr -d '\n'
টিসি ফিল্টার যোগ করুন eth0 পিতা 15: 0 প্রোটোকল আইপি প্রিও 1 হ্যান্ডেল 0x2 fw অ্যাকশন প্যাডিট প্রাক্তন মুঞ্জ ইথ এসসিআর সেট করুন $ {MAC_ADDR_ETH1} পাইপ \ অ্যাকশন পেডিট প্রিপ মুঞ্জ ip src সেট red TH red_rdR পাইপ_ eg দেব এথ 1
উপরোক্ত সেট বিধিগুলি দেখান: tc qdisc প্রদর্শন dev eth0 টিসি ফিল্টার শো ডেভ এথ0
উপরের সেট বিধিগুলি মোছা / আনসেট করুন: tc qdisc del dev eth0 root