CLOSE_WAIT রাজ্যে এতিম সংযোগগুলি


30

আমার কাছে একটি SLES মেশিন রয়েছে যা চিরকালের জন্য প্রদর্শিত হবে তার জন্য একটি CLOSE_WAIT রাজ্যে টিসিপি সংযোগ জমা করে। এই বর্ণনাকারীরা অবশেষে সমস্ত উপলব্ধ স্মৃতি আপ স্তন্যপান। এই মুহূর্তে, আমি তাদের মধ্যে 3037 পেয়েছি, তবে তাড়াতাড়ি রিবুট করার আগে এটি অনেক বেশি ছিল।

মজার বিষয়টি হ'ল তারা স্থানীয় বন্দরগুলির সংযোগ থেকে নয় যা আমি শ্রবণ প্রক্রিয়া আশা করি। তাদের কোনও সম্পর্কিত পিআইডি নেই এবং তাদের টাইমারগুলি মেয়াদ শেষ হয়ে গেছে বলে মনে হয়।

# netstat -ton | grep CLOSE_WAIT
tcp      176      0 10.0.0.60:54882     10.0.0.12:31663      CLOSE_WAIT  off (0.00/0/0)
tcp       54      0 10.0.0.60:60957     10.0.0.12:4503       CLOSE_WAIT  off (0.00/0/0)
tcp       89      0 10.0.0.60:50959     10.0.0.12:3518       CLOSE_WAIT  off (0.00/0/0)

# netstat -tonp | grep CLOSE_WAIT
tcp       89      0 10.0.0.59:45598     10.0.0.12:1998       CLOSE_WAIT  -                   
tcp       15      0 10.0.0.59:60861     10.0.0.12:1938       CLOSE_WAIT  -                   
tcp        5      0 10.0.0.59:56173     10.0.0.12:1700       CLOSE_WAIT  -     

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

# cat /proc/sys/net/ipv4/tcp_fin_timeout 
60
# cat /proc/sys/net/ipv4/tcp_keepalive_time 
7200

তাহলে কি দেয়? যদি টাইমারগুলির মেয়াদ শেষ হয়ে যায়, তাহলে স্ট্যাকটি কি স্বয়ংক্রিয়ভাবে এই জিনিসগুলি সাফ করা উচিত নয়? এই জিনিসগুলি তৈরি হওয়ায় আমি কার্যকরভাবে নিজেকে একটি দীর্ঘমেয়াদী ডস দিচ্ছি।


ওহ, এবং আমার গবেষণা দেখায় যে অন্যরা 'lsof -i' তে এই জাতীয় নিদর্শনগুলি দেখছে। আমি সেখানে অদ্ভুত কিছু দেখছি না
পবউইন

2
এটি sudo netstat -tonpকোন প্রোগ্রামটি দিয়ে আসছে তা দেখার চেষ্টা করুন ।
বিলথোর

1
পোস্ট এবং আমার উত্তর stackoverflow.com/a/17697733/540323 সহায়তা করবে।
আমিল ওয়াদুওয়ারা

উত্তর:


16

না, সময়সীমা নেই CLOSE_WAIT। আমি মনে করি এটিই offআপনার আউটপুটটির অর্থ।

বেরিয়ে আসার জন্য CLOSE_WAIT, অ্যাপ্লিকেশনটিকে সকেটটি স্পষ্টভাবে বন্ধ করতে হবে (বা প্রস্থান করতে হবে)।

দেখুন কিভাবে CLOSE_WAIT বিরতি

যদি netstatদেখানো হয় -প্রক্রিয়া কলামে:

  • আপনি কি উপযুক্ত সুযোগসুবিধা এবং ক্ষমতা (যেমন রুট হিসাবে) নিয়ে চলছে?
  • এগুলি কার্নেল প্রক্রিয়া হতে পারে (যেমন এনএফএসডি)

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

1
লিঙ্কটি নষ্ট হয়ে গেছে।
নাথান


10

CLOSE_WAITইঙ্গিত দেয় যে ক্লায়েন্ট সংযোগটি বন্ধ করছে তবে অ্যাপ্লিকেশনটি এখনও এটি বন্ধ করে দেয়নি, বা ক্লায়েন্টটি নেই। কোন প্রোগ্রাম বা প্রোগ্রামগুলিতে এই সমস্যা রয়েছে তা আপনার সনাক্ত করা উচিত। netstat -tonp 2>&1 | grep CLOSEসংযোগগুলি হোল্ডিং হিসাবে কোন প্রোগ্রামগুলি নির্ধারণ করতে ব্যবহার করার চেষ্টা করুন ।

যদি কোনও প্রোগ্রাম তালিকাভুক্ত না হয়, তবে পরিষেবাটি কার্নেল দ্বারা সরবরাহ করা হচ্ছে। এগুলি সম্ভবত আরপিসি পরিষেবাদি যেমন nfsবা rpc.lockd। শোনার কার্নেল পরিষেবাগুলি তালিকাভুক্ত করা যেতে পারে netstat -lntp 2>&1 | grep -- -

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

নিম্নলিখিতগুলি করে আপনি আপনার এনএফএস পরিষেবাগুলি স্থির বন্দরে বাঁধতে সক্ষম করতে পারেন:

  1. এনএফএসের জন্য চারটি অব্যবহৃত পোর্ট নির্বাচন করুন (এখানে 323263-32766 ব্যবহৃত হয়েছে)
  2. এনএফএসের জন্য স্থির পোর্ট যুক্ত করুন /etc/services
    rpc.statd-bc 32763 / udp # আরসিপি স্ট্যাটড সম্প্রচার
    rpc.statd-bc 32763 / tcp
    rpc.statd 32764 / udp # আরসিপি স্ট্যাটড শুনুন
    rpc.statd 32764 / tcp
    rpc.mountd 32765 / udp # RPC মাউন্ট করা হয়েছে
    rpc.mountd 32765 / tcp
    rpc.lockd 32766 / udp # RPC লকড / নলকএমজিআর
    rpc.lockd 32766 / tcp
  3. বিকল্পগুলি ব্যবহার করার জন্য স্ট্যাটেড কনফিগার করুন --port 32763 --outgoing-port 32764
  4. বিকল্পটি ব্যবহার করতে rpcmountd কনফিগার করুন --port 32765
  5. এনএফএস এবং আরপিসি পরিষেবা বন্ধ এবং পুনরায় চালু করুন।

আমি লিখেছি যে কোনও পিআইডি ছিল না, তবে আমার কাজ দেখায় নি। আমি আপনার পরামর্শ অনুযায়ী একটি দ্রুত সম্পাদনা করেছি, ধন্যবাদ।
পবিউইন

@opboin: পিআইডিএস (কার্নেল পরিষেবাগুলি) ছাড়াই পোর্টগুলিতে মন্তব্য যুক্ত করা হয়েছে।
বিলথোর

3
বন্ধ-অপেক্ষা-করো উপায়ে যে পিয়ার তার শেষ বন্ধ করে দিয়েছে এবং স্থানীয় ওএস ঘনিষ্ঠ স্থানীয় অ্যাপ্লিকেশনের জন্য অপেক্ষা করছে।
ব্যবহারকারী 207421
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.