নির্দিষ্ট ওয়েবসাইটে র্যান্ডম টিসিপি আরএসটি'র কী চলছে?


34

সংক্ষিপ্ত সংস্করণ: আমার ওয়েবসাইটের একটি উইন্ডোজ সার্ভার 2012 মেশিন নির্দিষ্ট ওয়েবসাইটগুলিতে সংযোগ করার সময় অবিচ্ছিন্ন তবে অন্তর্বর্তী টিসিপি আরএসটি পাচ্ছে। ডুনো তারা কোথা থেকে আসছে। আমার বিশ্লেষণ ও প্রশ্নের জন্য ওয়্যারশার্ক লগটি দেখুন।

দীর্ঘ সংস্করণ:

আমরা আমাদের ছোট অফিসে পরিষেবা দেওয়ার জন্য আমাদের একটি সার্ভারে একটি ক্যাচিং ওয়েব-প্রক্সি চালাই। কোনও সহকর্মী নির্দিষ্ট সাইটের সাথে সংযোগ করার সময় প্রচুর 'সংযোগ রিসেট' বা 'পৃষ্ঠা প্রদর্শিত হতে পারে না' বলে রিপোর্ট করেছেন, তবে তা রিফ্রেশিং সাধারণত এটি ঠিক করে দেয়।

আমি ব্রাউজারের আচরণটি যাচাই করেছি এবং তারপরে আরও সরাসরি সার্ভারে একটি প্রক্সাইড ব্রাউজার চেষ্টা করে। তবে সমস্যাযুক্ত সাইটগুলিতে পিংস এবং ট্রেস্রোয়েটগুলি কোনও সমস্যা দেখায় না, সমস্যাগুলি টিসিপি সংযোগের মধ্যে সীমাবদ্ধ বলে মনে হয়েছিল।

তারপরে আমি প্রভাবিত সাইটগুলিকে সরাসরি সিআরএল এর মাধ্যমে HTTP হেড অনুরোধগুলি প্রেরণ করে এবং তারা কতবার সফল হয় তা পরীক্ষা করে স্ক্রিপ্ট তৈরি করেছি। একটি সাধারণ পরীক্ষাটি এর মতো দেখায়: (এটি আনপ্রেসিড নয়, সরাসরি খারাপ সার্ভারে চলছে)

C:\sdk\Apache24\htdocs>php rhTest.php
Sending HTTP HEAD requests to "http://www.washingtonpost.com/":
20:21:42: Length: 0     Response Code: NULL (0%)
20:22:02: Length: 0     Response Code: NULL (0%)
20:22:22: Length: 0     Response Code: NULL (0%)
20:22:42: Length: 0     Response Code: NULL (0%)
20:23:02: Length: 3173  Response Code: HTTP/1.1 302 Moved Temporarily (20%)
20:23:22: Length: 3174  Response Code: HTTP/1.1 302 Moved Temporarily (33.33%)
20:23:43: Length: 0     Response Code: NULL (28.57%)
20:24:03: Length: 3171  Response Code: HTTP/1.1 302 Moved Temporarily (37.5%)
20:24:23: Length: 3173  Response Code: HTTP/1.1 302 Moved Temporarily (44.44%)
20:24:43: Length: 3172  Response Code: HTTP/1.1 302 Moved Temporarily (50%)
20:25:03: Length: 0     Response Code: NULL (45.45%)

দীর্ঘমেয়াদে, প্রায় %০% অনুরোধ সফল হয়, বাকী কিছু নেই, কার্ল ত্রুটি কোড সহ: "সিআরএল ত্রুটি (56): পিয়ারের কাছ থেকে ডেটা পাওয়ার সময় ব্যর্থতা" ওয়েবসাইটগুলির জন্য খারাপ আচরণটি সামঞ্জস্যপূর্ণ I পরীক্ষা (কোনও সাইটের পক্ষে 'উন্নততর উন্নতি হয়নি') এবং এটি বেশ ধ্রুবক, আমি এখন এক সপ্তাহ ধরে সমস্যার সমাধান করছি, এবং সহকর্মীরা রিপোর্ট করেছেন যে সমস্যাগুলি কয়েক মাস ধরে আপাতদৃষ্টিতে রয়েছে।

আমি আমাদের নেটওয়ার্কের অন্যান্য মেশিনগুলিতে হেড অনুরোধ স্ক্রিপ্টটি পরীক্ষা করেছি: কোনও সমস্যা নেই, সমস্ত সংযোগগুলি আমার পরীক্ষার তালিকার সমস্ত সাইটে চলে through তারপরে আমি আমার ব্যক্তিগত ডেস্কটপে একটি প্রক্সি সেট আপ করেছি এবং আমি যখন সমস্যাযুক্ত সার্ভারের হেড অনুরোধগুলি চালিত করি তখন এটি সমস্ত সংযোগ দিয়ে যায়। সুতরাং সমস্যা যাই হোক না কেন, এটি এই সার্ভারের সাথে খুব নির্দিষ্ট।

পরবর্তী আমি কোন ওয়েবসাইটগুলি সংযোগ-পুনরায় সেট করার আচরণ প্রদর্শন করে তা আলাদা করার চেষ্টা করেছি:

  • আমাদের ইন্ট্রনেট সাইটগুলির মধ্যে (192.168.xx) ড্রপ সংযোগ নেই।
  • কোন আইপভি 6 সাইট আমি ড্রপ সংযোগ পরীক্ষা করেছি। (আমরা দ্বৈত স্ট্যাক)
  • কেবলমাত্র ইন্টারনেট আইপিভি 4 সাইট সংখ্যালঘু সংযোগ ছাড়ছে।
  • সিডিএন হিসাবে ক্লাউডফ্লেয়ার ব্যবহার করে এমন প্রতিটি সাইট (আমি এটি পরীক্ষা করেছি) সংযোগগুলি ড্রপ করে। (তবে সমস্যাটি ক্লাউডফ্লেয়ার সাইটের সাথে একচেটিয়া মনে হয় না)

এই কোণটি সত্যিকারের সহায়ক কোনও কিছুর মধ্যে বিকাশ ঘটেনি, সুতরাং আমি যখন কোনও অনুরোধ ব্যর্থ হয়েছিল তখন কী চলছে তা দেখার জন্য আমি ওয়্যারশার্ক ইনস্টল করেছি। একটি ব্যর্থ হেড অনুরোধগুলি এর মতো দেখাচ্ছে: (এখানে বৃহত্তর স্ক্রিনশট: http://imgur.com/TNfRUtX )

127 48.709776000    192.168.1.142   192.33.31.56    TCP 66  52667 > http [SYN, ECN, CWR] Seq=0 Win=8192 Len=0 MSS=8960 WS=256 SACK_PERM=1
128 48.728207000    192.33.31.56    192.168.1.142   TCP 66  http > 52667 [SYN, ACK, ECN] Seq=0 Ack=1 Win=42340 Len=0 MSS=1460 SACK_PERM=1 WS=128
129 48.728255000    192.168.1.142   192.33.31.56    TCP 54  52667 > http [ACK] Seq=1 Ack=1 Win=65536 Len=0
130 48.739371000    192.168.1.142   192.33.31.56    HTTP    234 HEAD / HTTP/1.1 
131 48.740917000    192.33.31.56    192.168.1.142   TCP 60  http > 52667 [RST] Seq=1 Win=0 Len=0
132 48.757766000    192.33.31.56    192.168.1.142   TCP 60  http > 52667 [ACK] Seq=1 Ack=181 Win=42240 Len=0
133 48.770314000    192.33.31.56    192.168.1.142   TCP 951 [TCP segment of a reassembled PDU]
134 48.807831000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897
135 48.859592000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897
138 49.400675000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897
139 50.121655000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897
141 51.564009000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897
143 54.452561000    192.33.31.56    192.168.1.142   TCP 951 [TCP Retransmission] http > 52667 [PSH, ACK] Seq=1 Ack=181 Win=42240 Len=897

আমি যেভাবে এটি পড়ছি (আমি ভুল হলে আমাকে সংশোধন করি, এটি আসলে আমার অঞ্চল নয়):

  • আমরা ওয়েব সার্ভারে একটি টিসিপি সংযোগ খুলি
  • ওয়েব সার্ভার এসি এর
  • HTTP হেড অনুরোধ প্রেরণ করা হয়
  • একটি আরএসটি প্যাকেট রয়েছে, যা ওয়েবসারভার আইপি হিসাবে চিহ্নিত হয়েছে, যা সংযোগটি মেরে ফেলে।
  • ওয়েবসভার ACK প্রেরণ করে
  • ওয়েবসিভার (বৈধ HTTP ডেটা সহ হেড অনুরোধের প্রতিক্রিয়া জানাতে চেষ্টা করে) (951 বাইট উত্তরটিতে সঠিক HTTP শিরোনাম রয়েছে)
  • ওয়েবসভারটি বৈধ এইচটিটিপি প্রতিক্রিয়াটি (বেশ কয়েক সেকেন্ডের মধ্যে বেশ কয়েকবার) ফেরত পাঠায়, তবে সংযোগটি আরএসটি হওয়ার পরে এটি সফল হতে পারে না since

সুতরাং যদি ওয়েবসভারটি একটি বৈধ আরএসটি প্রেরণ করেছে, তবে কেন এটি অনুরোধটি পূরণ করার চেষ্টা চালিয়ে যায়? এবং যদি ওয়েবসার্ভার আরএসটি উত্পন্ন না করে, তবে হ্যাকটি কী করেছিল?

আমি যে জিনিসগুলি চেষ্টা করেছি সেগুলির কোনও প্রভাব নেই:

  • এনআইসিকে দলবদ্ধকরণ অক্ষম করা হচ্ছে
  • নেটওয়ার্ক অ্যাডাপ্টার পরিবর্তন করা (প্রতিস্থাপন এনআইসি কাজ করে বলে পরিচিত ছিল)
  • একটি স্ট্যাটিক আইপি বরাদ্দ করা হচ্ছে।
  • আইপিভি 6 অক্ষম করা হচ্ছে।
  • জাম্বো ফ্রেম অক্ষম করা হচ্ছে।
  • আমাদের সুইচ এবং রাউটারকে বাইপাস করে এক রাতে সরাসরি আমাদের মডেমে সার্ভার প্লাগিং করুন।
  • উইন্ডোজ ফায়ারওয়াল বন্ধ করা হচ্ছে।
  • নেট এর মাধ্যমে টিসিপি সেটিংস পুনরায় সেট করা
  • সার্ভারে প্রতিটি অন্যান্য পরিষেবা ব্যবহারিকভাবে অক্ষম করা হচ্ছে। (আমরা বেশিরভাগই এটি ফাইলসভার হিসাবে ব্যবহার করি তবে অ্যাপাচি এবং একটি দম্পতির ডিবি রয়েছে)
  • ডেস্কে মাথা ঠেকানো (বারবার)

আমার সন্দেহ হয় সার্ভারে থাকা কিছু আরএসটি প্যাকেট তৈরি করছে তবে আমার জীবনের জন্য আমি এটি খুঁজে পাচ্ছি না। আমি যদি জানতাম তবে মনে হচ্ছে: কেবল এই সার্ভারটি কেন? বা কেন কেবল কিছু ওয়েবসাইট? এটা অনেক সাহায্য চাই। আমি এখনও কৌতূহল বজায় থাকাকালীন, আমি ক্রমবর্ধমান কক্ষপথ থেকে শুরু এবং আবার শুরু করতে ঝোঁক।

ধারণা / পরামর্শ?

-Thanks


এই ক্যাচিং প্রক্সি সার্ভারটি কোন অপারেটিং সিস্টেমটি চালায়? এবং প্রক্সি সার্ভার সফ্টওয়্যার কি?
মাইকেল হ্যাম্পটন

1
সার্ভারটি উইন্ডোজ সার্ভার ২০১২ চলছে, প্রক্সিটি স্কুইড cy.৩.৩ সাইগউইনের মাধ্যমে চলছে; তবে এটি কেবল প্রক্সি সংযোগ নয়, মেশিনের সমস্ত টিসিপি সংযোগে ঘটে। কার্ল পরীক্ষার স্ক্রিপ্ট আনপ্যাক্সড।
মর্তি

উত্তর:


38

আপনার প্যাকেট ক্যাপচারে কিছু অস্বাভাবিক ছিল: ইসিএন বিটগুলি বহির্গামী এসওয়াইএন প্যাকেটে সেট করা হয়েছিল।

সুস্পষ্ট কনজেশন নোটিফিকেশন হ'ল আইপি প্রোটোকলের একটি এক্সটেনশন যা হোস্টকে নেটওয়ার্ক কনজিশনে আরও দ্রুত প্রতিক্রিয়া জানাতে দেয়। এটি 15 বছর আগে ইন্টারনেটে প্রথম পরিচয় করা হয়েছিল, তবে এটি প্রথম স্থাপনার সময় গুরুতর সমস্যাগুলি লক্ষ্য করা গিয়েছিল। এর মধ্যে সবচেয়ে গুরুতর বিষয়টি ছিল যে ইসিএন বিটস সেটটির সাথে কোনও এসওয়াইএন প্যাকেট পাওয়ার সময় অনেকগুলি ফায়ারওয়াল হয় প্যাকেট ফেলে দেয় বা কোনও আরএসটি ফিরে আসত ।

ফলস্বরূপ, বেশিরভাগ অপারেটিং সিস্টেমগুলি কমপক্ষে বহির্গামী সংযোগের জন্য, ইসিএনকে ডিফল্টরূপে অক্ষম করে। ফলস্বরূপ, আমি সন্দেহ করি যে প্রচুর সাইটগুলি (এবং ফায়ারওয়াল বিক্রেতারা!) তাদের ফায়ারওয়ালগুলি কেবল কখনও স্থির করেনি ।

উইন্ডোজ সার্ভার 2012 প্রকাশিত না হওয়া পর্যন্ত। মাইক্রোসফ্ট এই অপারেটিং সিস্টেম সংস্করণ দিয়ে ডিফল্টরূপে ইসিএন সক্ষম করেছে।

দুর্ভাগ্যক্রমে কেউই সাম্প্রতিক স্মৃতিতে ইসিএন-এর কাছে ইন্টারনেট সাইটের প্রতিক্রিয়াগুলির জন্য কোনও গুরুত্বপূর্ণ পরীক্ষা-নিরীক্ষা করেনি, তাই 2000 এর দশকের প্রথমদিকে দেখা সমস্যাগুলি এখনও বিদ্যমান কিনা তা অনুমান করা শক্ত, তবে আমি দৃ strongly়ভাবে সন্দেহ করি যে সেগুলি এবং আপনার ট্রাফিক কমপক্ষে কিনা is কিছু সময়, যেমন সরঞ্জাম মাধ্যমে পাস।

আমার ডেস্কটপে ইসিএন সক্ষম করার পরে এবং তারপরে ওয়্যারশার্ককে গুলি চালানোর পরে আমি একটি হোস্টের উদাহরণ ধরার কয়েক সেকেন্ড আগেই আমি SYN এবং ইসিএন সেট সহ একটি প্যাকেটে একটি আরএসটি পেয়েছিলাম, যদিও বেশিরভাগ হোস্ট ভাল কাজ করে বলে মনে হচ্ছে। সম্ভবত আমি নিজে ইন্টারনেট স্ক্যান করব ...

সমস্যাটি ক্লিয়ার হয়ে গেছে কিনা তা দেখতে আপনি আপনার সার্ভারে ইসিএন অক্ষম করার চেষ্টা করতে পারেন। এটি আপনাকে ডিসিটিসিপি ব্যবহার করতেও অক্ষম করে তুলবে, তবে একটি ছোট অফিসে আপনি এটি করছেন বা এটি করার দরকার আছে এমন সম্ভাবনা খুব কম।

netsh int tcp set global ecncapability=disabled

4
ধন্যবাদ! ইসিএন অক্ষম করার পরে আমি সবচেয়ে ঝামেলাযুক্ত সাইটগুলির সংযোগের জন্য 100% সাফল্যের হার দেখছি! আমাদের প্রক্সিটি আবার চালু করার আগে আমাকে সকালে আরও পরীক্ষা করতে হবে, তবে আমি এগিয়ে গিয়ে এই উভয়কে উত্তর হিসাবে এবং মাইক্রোসফ্ট কিউএর ব্যবহারকারীর উপর অব্যাহত যুদ্ধের এক অপূর্ব বিজয় হিসাবে চিহ্নিত করব।
মর্তি

9
সত্যি কথা বলতে গেলে কিছু ফায়ারওয়াল অ্যাডমিনরা বোকামি বলে মাইক্রোসফ্টের দোষ আমি মনে করি না। ইসিএন পাওয়া খুব সুন্দর, কারণ এটি অনেক সাহায্য করে, এবং আমরা সবাই যদি এটি কোনও দিন ব্যবহার শুরু করতে পারি তবে এটি খুব ভাল।
মাইকেল হ্যাম্পটন

ওহ, আমি ভাবছি যদি এই রিসেট আমি যুগ যুগ ধরে Imgur এবং উইকিয়া থেকে পেয়ে আসছি টন ব্যাখ্যা (দুটি বিভিন্ন স্থানীয় আইএসপির সঙ্গে ঘটে, কিন্তু কখনও যখন VPN'd অন্য দেশে, যা আমার বিভ্রান্ত মাধ্যমে)
grawity

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