ট্রেস্রোয়েট - প্রতিটি প্যাকেটে টিটিএল == 1 রয়েছে


17

আমি কম্পিউটার নেটওয়ার্কিংয়ে ওয়্যারশার্ক ল্যাব-আইপি নিয়ে কাজ করছি - একটি টপ ডাউন পদ্ধতির এবং আমি বুঝতে পারি না যে সাধারণত প্রতিটি প্যাকেটের মেয়াদোত্তীর্ণ মেয়াদ কেন 1 টি টিএল থাকে has

আমার ওয়্যারশার্ক ক্যাপচার ফাইলটি এখানে। https://www.dropbox.com/s/rr5wgze9j20gzvu/traceroute-56.pcapng?dl=0

আমি tracerouteলিনাক্সে প্রোগ্রামটির সম্পাদনাটি (56 বাইটের বিকল্প সহ) ক্যাপচার করেছি , যেমন নিম্নলিখিত কমান্ড দিয়ে কার্যকর করা হয়েছে:

traceroute http://gaia.cs.umass.edu 56

আপনি দেখতে পাচ্ছেন যে প্যাকেটের বেশিরভাগ টিটিএল == 1 এবং আমি কেন জানি না, যেহেতু আমি শিখেছি যে পরবর্তী প্রতিটি হুপের +1 টি (বা আরও) রয়েছে।

পুনশ্চ:

  • আমি হোস্টের ব্রিজড নেটওয়ার্কের সাথে ভিএমওয়ারে লুবুন্টু ব্যবহার করছি।
  • আমি এটি হোস্ট মেশিনে উইন্ডোজ দিয়ে ক্যাপচার করেছি (উইন্ডোজ)
  • আমি NAT প্রোটোকলের উপরে তার নিজস্ব ডিএইচসিপি সার্ভার ব্যবহার করে একটি ওয়্যারলেস এপি'র সাথে যুক্ত আছি

উত্তর:


14

আমাকে এটির উত্তর দেওয়ার চেষ্টা করা যাক , কারণ এটি কিছুটা জটিল যে এটি প্রাথমিকভাবে দেখায়।

দেখে মনে হচ্ছে আপনি এর প্রাথমিক ক্রিয়াকলাপটি ইতিমধ্যে জানেন tracerouteতবে এখানে অন্য কিছুর আগে খুব ছোট সংশোধন:

tracerouteআপনার হোস্ট থেকে গন্তব্য হোস্টের সমস্ত অভ্যন্তরীণ পদক্ষেপগুলি নির্ধারণ করার চেষ্টা করে, বা আপনার দূরত্বে থেকে কোনও গন্তব্য হোস্টের কাছে কেবল দূরত্ব, যেমন হপগুলির সংখ্যা। এটি করার জন্য এটি একটি "এলোমেলো" গন্তব্য পোর্ট নম্বর এবং একটি টিটিএল দিয়ে গন্তব্য হোস্টে প্যাকেটগুলি প্রেরণ শুরু করে যা 1 থেকে শুরু হয় এবং বাড়তে থাকে।
ধারণাটি এই যে প্রতিটি মধ্যবর্তী রাউটার টিটিএল 1 টি হ্রাস করে Thus " টাইম-টু-লাইভ ছাড়িয়ে গেছে " ত্রুটি বার্তা, যেমন আপনার ক্যাপচার ফাইলে প্যাকেট নম্বর 24 number এর থেকে আপনি যা পান তা হ'ল আপনার গন্তব্যটি আরও দূরে এবং এ কারণেই আপনি টিটিএল বাড়িয়ে চলেছেন।
আপনার প্যাকেটে এমন একটি টিটিএল রয়েছে যা গন্তব্যে পৌঁছানোর পক্ষে যথেষ্ট বড়, আপনি একটি আলাদা আইসিএমপি ত্রুটি বার্তা পাবেন: " গন্তব্য অল্যাচিয়াযোগ্য (পোর্ট অল্যাচিয়াযোগ্য) ", যেমন আপনার ক্যাপচার ফাইলটিতে প্যাকেট নম্বর 208 । আপনি যেটি থেকে পান সেটি হ'ল সর্বশেষ ব্যবহৃত টিটিএল হ'ল আপনার এবং গন্তব্য নোডের মধ্যে হপগুলির সংখ্যা। আপনার ত্রুটি হওয়ার কারণটি কেবলমাত্র আপনি "র্যান্ডম" বন্দরে একটি বার্তা প্রেরণ করছেন যা গন্তব্য নোড (আশা করি) শুনছে না।

এখন আপনার ক্যাপচার ফাইলটির সুনির্দিষ্ট বিবরণে যাচ্ছি:
ম্যানুয়াল পৃষ্ঠা থেকে tracerouteআমরা দেখতে পাচ্ছি যে প্রতিটি টিটিএল 3 বার ব্যবহার করা হয় (বিকল্প '-কিউ') এবং ব্যবহৃত ডিফল্ট প্রোটোকলটি ইউডিপি (বিকল্প '-পি') হয়। প্রথম 3 ইউডিপি প্যাকেট, অর্থাৎ 8-9-10 প্যাকেটগুলি পরীক্ষা করে আমরা দেখতে পাচ্ছি যে টিটিএল 1 টি । পরবর্তী 3, অর্থাৎ 11-12-13 , একটি টিটিএল 2 এবং আরও রয়েছে। উত্স দৃষ্টিকোণ থেকে তাই সবকিছু ঠিক আছে বলে মনে হচ্ছে।

তারপরে, নেটওয়ার্কের বিলম্বের উপর নির্ভর করে কিছু সময়ের পরে, আমরা প্রত্যাশিত ত্রুটি বার্তা পাওয়া শুরু করি। সুতরাং আমরা দেখতে পাচ্ছি যে প্যাকেটগুলি 24-25-26 হ'ল " বেঁচে থাকার সময় পেরিয়ে গেছে " ত্রুটি প্যাকেটগুলি এবং এর অর্থ গন্তব্যটি আরও দূরে।

প্রয়াস এবং ত্রুটিগুলির এই পিছনে এবং অব্যাহত অবিরত অবধি, প্যাকেট 208 অবধি এবং আপনি " পোর্ট অল্যাচিয়াযোগ্য " ত্রুটি বার্তা দেখতে পাচ্ছেন , যার অর্থ আপনার গন্তব্য পৌঁছে গেছে।

আপনার প্রেরিত প্যাকেটগুলি এবং প্রতিক্রিয়াগুলি গণনা করে আপনি টিটিএল আসলে কাজ করেছেন এমন ট্রেস থেকে আবিষ্কার করতে পেরেছিলেন তবে এটি একটি ক্লান্তিকর কাজ :)

আশা করি যে সাহায্য করেছে


সুপার ব্যাখ্যা
ksp0422

14

আপনার ক্লায়েন্ট কেবল ১ টি টিটিএল দিয়ে প্রথম তিনটি প্যাকেট প্রেরণ করছেন পরের তিনটি ২ টি টিটিএল দিয়ে প্রেরণ করা হয়। পরের তিনটি একটি টিটিএল দিয়ে প্রেরণ করা হয়। এবং আরও অনেক কিছু।

এটি দেখার সহজ উপায় হ'ল আইপি টিটিএল ক্ষেত্রটি ওয়্যারশার্কে নিজস্ব কলাম হিসাবে সেট করা। যে কোনও প্যাকেটের টিটিএল মানটিতে কেবল ডান ক্লিক করুন, এবং "কলাম হিসাবে প্রয়োগ করুন" নির্বাচন করুন: টিয়ারলিকে ওয়্যারশার্কে একটি কলাম হিসাবে সেট করুন

সেখান থেকে আপনি দেখতে পাচ্ছেন যে প্যাকেটগুলি 8,9,10 এর 1 টি টিএল আছে এবং 11,12,13 এর প্যাকেটগুলির একটি টিটিএল থাকে 2. এবং আরও অনেক কিছু। একটি ট্রেস্রোয়েটে টিটিএল

এটি ঘটছে কারণ ট্রেস্রোয়েট এভাবে কাজ করে। এটা একটা রাউটার যখন এটি প্যাকেট ফরওয়ার্ডিং অবিরত চেয়ে 0. বরং একটি TTL এর কমে যায় কি সুবিধা নেয়, এটা মূল ক্লায়েন্ট একটি "সরাসরি ICMP TTL এর ট্রানজিট বার্তায় মেয়াদউত্তীর্ণ" এ পাঠায় (প্যাকেট # 24 আপনার ক্যাপচার দেখুন)

সুতরাং ক্লায়েন্ট হিসাবে, আপনি যখন 1 টি টিটিএল দিয়ে প্যাকেটের প্রথম সেটটি প্রেরণ করেন, তখন পাথের প্রথম রাউটার টিটিএল মেয়াদোত্তীর্ণ বার্তার সাথে সাড়া দেয়। তারপরে আপনি পরিমাপ করেন যে আপনি প্রাথমিক বার্তাগুলি প্রেরণ করার সময় টিটিএল মেয়াদোত্তীর্ণ বার্তাটি পেতে কত সময় নিয়েছিল এবং এটি আপনাকে ট্রেস্রুট আউটপুটে আপনার প্রথম তিনটি মান দেয়।

তারপরে আপনি ২ টি টিটিএল সহ তিনটি প্যাকেটের আরও একটি সেট প্রেরণ করুন পাথের প্রথম রাউটারটি এটি হ্রাস করে 1 এবং তারপরে এটি পরবর্তী রাউটারে ফরোয়ার্ড করে। অভ্যর্থনার পরে, যখন দ্বিতীয় রাউটারটি এটি পায়, এটি টিটিএলকে 0 এ কমিয়ে দেয়, যা আপনাকে প্যাকেটটি ফেলে দেওয়ার এবং ট্রানজিটে আপনাকে টিটিএল মেয়াদোত্তীর্ণ প্রেরণের জন্য অনুরোধ করে।

প্রক্রিয়াটি অব্যাহত থাকে যতক্ষণ না আপনার ক্লায়েন্ট আপনার এবং আপনার চূড়ান্ত গন্তব্যের মধ্যে ট্রানজিটের প্রতিটি রাউটার থেকে একটি (ভাল, তিন) টিটিএল মেয়াদোত্তীর্ণ বার্তা না পেয়ে থাকে।


চাক্ষুষভাবে ভালভাবে ব্যাখ্যা করা হয়েছে
ksp0422

@ এডি, এটি এই প্রশ্নের সাথে প্রাসঙ্গিক নাও হতে পারে তবে এটি খুব কম বিশদ যা আমি মন্তব্য করে জিজ্ঞাসা করেছিলাম বলে মনে করি। হোস্টটি (রাউটার নয়) টিটিএল ক্ষেত্র 1 দিয়ে ডেটাগ্রাম গ্রহণ করলে কী ঘটে তা আপনি নির্দিষ্ট করতে পারেন?
বিমল প্যাটেল

1
@ বিমলপ্যাটেল যদি প্যাকেটটি হোস্টের জন্য নির্ধারিত হয় তবে হোস্টটি কেবল প্যাকেটটি গ্রহণ করে। টিটিএল 0 টি হিট হলে প্যাকেটগুলি ফেলে দেওয়া একটি রাউটার ফাংশন।
এডি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.