ইউসিএসপিআই-টিসিপি উপায়
নেটক্যাট ব্যতীত অন্যান্য সরঞ্জামদণ্ড রয়েছে। তাদের কয়েকটি ব্যবহার করার পদ্ধতি এখানে রয়েছে। তারা সকলেই serviceএমন কোনও স্ক্রিপ্টের অস্তিত্ব অনুমান করে funcযা আপনার চালায় , যা কিছু হোক না কেন:
#! / বিন / SH
পড়ার সময় - বার্তা
করা
প্রতিধ্বনি 1> & 2 "$ {TCPREMOTEIP IP" "$ {TCPREMOTEPORT r" আরএক্স "{ESS বার্তা}"
func
সম্পন্ন
TCPREMOTEIPএবং TCPREMOTEPORTবিভিন্ন পরিবেশের UCSPI-বিভিন্ন TCP প্রোটোকল দ্বারা সংজ্ঞায়িত করা হয়।
বিভিন্ন টুলসেট ব্যবহার করে স্ক্রিপ্টটি টিসিপি সংযোগের জন্য পৃথক প্রক্রিয়া হিসাবে তৈরি হয়েছে। এরপরে, সরঞ্জামগুলি একটি সংক্ষিপ্ত স্ক্রিপ্টের মধ্যে ব্যবহৃত হিসাবে প্রদর্শিত হবে। প্রচলিত নাম অনুসারে এই জাতীয় স্ক্রিপ্টটি runহ'ল কীভাবে কেউ এগুলি ডিমনটোলস-ফ্যামিলি সার্ভিস ম্যানেজারের অধীনে চালাবেন। তাদের অবশ্যই সরাসরি আহ্বান করা যেতে পারে।
বার্নস্টেইন ucspi-tcp
ড্যানিয়েল জে বার্নস্টেইনের ucspi-tcp tcpserverএর সাথে serviceস্ক্রিপ্টটি তৈরি করেছে:
#! / বিন / শি -e
exec tcpserver -v -P -R -H -l 0 0.0.0.0 7777। / পরিষেবা
বার্নস্টেইন ucspi-tcp এর IPv6- সক্ষম বর্ধিত সংস্করণ রয়েছে। এরউইন হফম্যানের সাহায্যে, tcpserverআইপিভি 4 এবং আইপিভি 6 উভয়কে হ্যান্ডেল করার চেষ্টা করে (যদি অপারেটিং সিস্টেম এটি সমর্থন করে তবে কয়েকজন তা করেন না) এবং serviceস্ক্রিপ্টটি উত্সাহিত করে :
#! / বিন / শি -e
exec tcpserver -v -P -R -H -l 0 :: 0 7777। / পরিষেবা
বেরকোট এস 6-নেটওয়ার্কিং, এস 6 এবং এক্সেলাইন
লরেন্ট Bercot এর S6-নেটওয়ার্কিং সঙ্গে, s6-tcpserver4এবং s6-tcpserver6IPv4 ও IPv6 আলাদাভাবে পরিচালনা করি এবং ডিম serviceস্ক্রিপ্ট:
#! / কমান্ড / execlineb
s6-tcpserver4 -v 0.0.0.0 7777
./service
#! / কমান্ড / execlineb
s6-tcpserver6 -v :: 0 7777
./service
এক যেমন টুলস interposing দ্বারা আরো জটিল সার্ভারের বিল্ড আপ করতে পারেন s6-tcpserver-accessএবং s6-applyuidgidচেন অব্যবহিত পূর্বে ./service।
NOS ইউসিএসপিআই সরঞ্জামসমূহ
নস টুলসেটের সাহায্যে, tcp-socket-listenটিসিপি সকেটে শুনেছে, আবার আইপিভি 4 এবং আইপিভি 6 একযোগে পরিচালনা করছেন যদি অপারেটিং সিস্টেমটি এমনটি সমর্থন করে এবং চেইনগুলি স্ক্রিপ্টটি tcp-socket-acceptপ্রবর্তন করে service:
#! / বিন / জখলাবার
tcp-सॉকেট-শুনুন --combine4and6 :: 7777
tcp-सॉকেট-গ্রহণ --verbose --localname 0
./service
অথবা ওপেনবিএসডি এর মতো অপারেটিং সিস্টেমে দুটি পৃথক প্রক্রিয়া চালায়:
#! / বিন / জখলাবার
tcp- সকেট-শুনুন 0.0.0.0 7777
tcp-सॉকেট-গ্রহণ --verbose --localname 0
./service
#! / বিন / জখলাবার
tcp-सॉকেট-শুনুন :: 7777
tcp-सॉকেট-গ্রহণ --verbose - স্থানীয় নাম ::
./service
চ্যানেলের মতো ucspi-socket-rules-checkএবং সরঞ্জামগুলিতে ইন্টারপোসিং করে কেউ আরও জটিল সার্ভার তৈরি করতে পারে setuidgid।
#! / বিন / জখলাবার
tcp-सॉকেট-শুনুন --combine4and6 :: 7777
setuidgid অপ্রয়োজনীয়-ব্যবহারকারী
tcp-सॉকেট-গ্রহণ --verbose --localname 0
ucspi- সকেট-বিধি-পরীক্ষা --verbose
./service
পেপ ipsvd
জেরিট প্যাপের আইপসভিডির tcpsvdসাথে serviceস্ক্রিপ্টটি তৈরি করা হয়েছে:
#! / বিন / শি -e
exec tcpsvd -v 0.0.0.0 7777 ./service
UCSPI-এর ফলে UDP
সাধারণ serviceস্ক্রিপ্ট হ্যান্ডেল করতে পারে যখন স্ট্যান্ডার্ড ইনপুট একটি স্ট্রিম সকেট হয়। তবে আপনি স্পষ্টভাবে টিসিপি নির্দিষ্ট করেন নি।
যদিও উল্লিখিত কিছু টুলকিটগুলি ইউডিপি সার্ভারগুলি একই পদ্ধতিতে টিসিপি সার্ভারগুলি তৈরি করতে ব্যবহার করতে পারে (নফ udp-socket-listenইন সিএফ ), শেল স্ক্রিপ্ট সহ প্রকৃত পরিষেবা প্রোগ্রামটি তৈরি করা মুশকিল, কারণ শেলটির বিল্টিনগুলি না স্ট্যান্ডার্ড ইনপুটটি যখন একটি ডেটাগ্রামের সকেট হয় তখন অগত্যা ভালভাবে মোকাবেলা করা উচিত ।
আরও পড়া
- প্রোটোকল:
- toolsets:
- ড্যানিয়েল জে বার্নস্টেইন। ucspi-tcp । cr.yp.to.
- s6- নেটওয়ার্কিং । লরেন্ট বেরকোট। skarnet.org।
- s6 । লরেন্ট বেরকোট। skarnet.org।
- জোনাথন ডি বয়েন পোলার্ড (2016)। জখলাবার । সফটওয়্যার।
- ipsvd । জেরিট পেপ smarden.org।
- রেফারেন্স ম্যানুয়ালগুলি: