नेटवर्क इंटरफ़ेस कनेक्शन स्विच करते समय ssh कनेक्शन को जीवित और लगातार बनाए रखें


13

परिदृश्य:

  1. लैपटॉप के साथ मेरे डेस्क पर ईथरनेट में प्लग किया गया और SSH पर रिमोट सर्वर से जुड़ा
  2. लैपटॉप के साथ कार्यालय के दूसरी तरफ जाना चाहते हैं और एसएसएच कनेक्शन को बाधित किए बिना वाईफाई में बदल सकते हैं

मैंने कोशिश की है: पहले वाईफाई से कनेक्ट करना और फिर ईथरनेट को डिस्कनेक्ट करना; और पहले ईथरनेट को डिस्कनेक्ट करना फिर वाईफाई से कनेक्ट करना। न ही काम आता है। दोनों ओएस विकल्पों के साथ-साथ क्लाइंट के लिए उबंटू और ओएस एक्स सर्वर का उपयोग करते समय भी प्रयास किया गया। कोई भाग्य नहीं।

ऐसा लगता है जैसे मुझे अपने SSH कनेक्शन को बताने के कुछ तरीके की आवश्यकता है कि इसे पुराने डिस्कनेक्ट किए गए इंटरफ़ेस के बजाय नए कनेक्ट किए गए नेटवर्क इंटरफ़ेस का उपयोग करना शुरू करना चाहिए। कोई विचार?

मुझे एहसास है कि मैं पूरे दिन वाईफाई पर रह सकता हूं, लेकिन मैं ऐसा नहीं करना चाहता। मुझे यह भी एहसास है कि मैं बस रिमोट सर्वर पर एक स्क्रीन सत्र के भीतर से काम कर सकता हूं और फिर इंटरफेस बदलने के बाद उस स्क्रीन सत्र से दोबारा जुड़ सकता हूं, लेकिन मैं ऐसा नहीं करना चाहता। उदाहरण के लिए, मैं SSH पर डेटाबेस डंप जैसे कुछ बड़े कमांड को पाइप कर सकता हूं या SSHFS के माध्यम से फाइलें खोल सकता हूं, या मैं फिर से कनेक्ट करने के उपद्रव से बचना चाहता हूं


3
यदि आपको दोनों तरीकों से समान आईपी पता मिलता है, तो यह जस्ट वर्क होना चाहिए। यदि नहीं, तो यह बहुत असंभव है।
एलन करी

@AlanCurry यदि क्लाइंट और सर्वर दोनों MPTCP का समर्थन करते हैं, तो यह संभव है। लेकिन MPTCP समर्थन अभी भी बहुत सीमित है, इसलिए ऐसा होने की संभावना नहीं है।
14

जवाबों:


4

मुझे संदेह है कि यह समाधान SSHFS आदि के लिए काम नहीं करेगा, लेकिन आप Mosh पर एक नज़र डाल सकते हैं जो कम से कम शेल के लिए रोमिंग समर्थन प्रदान करता है।


यह एक बहुत अच्छा समाधान की तरह दिखता है, लेकिन दुर्भाग्य से इसे सर्वर पर भी इंस्टॉल करने की आवश्यकता होती है, जो कि अनुमतियों के कारण हमेशा संभव नहीं होता है।
user000001

4

मुझे डर है कि आप ऐसा नहीं कर सकते, परिभाषा के अनुसार। एक एसएसएच सत्र एक टीसीपी कनेक्शन पर चलता है, जिसे चार-टपल (स्रोत पता, स्रोत पोर्ट, गंतव्य पता, गंतव्य पोर्ट) द्वारा परिभाषित किया गया है। आप मौजूदा कनेक्शन को क्लाइंट पर एक अलग पते पर स्थानांतरित नहीं कर सकते हैं (इस तथ्य से अलग है कि ओएस कनेक्शन को तब फाड़ देगा जब इंटरफ़ेस नीचे जाता है)।

NAT इस चित्र को जटिल कर सकता है, लेकिन किसी भी तरह से नहीं जो आपकी मदद करेगा।


हां, लेकिन एप्लिकेशन एक बार फिर से कनेक्ट हो सकता है क्योंकि यह जानता है कि सॉकेट बंद हो गया है। क्या SSH प्रोटोकॉल में पुराने सत्र को फिर से शुरू करने का प्रावधान है?
अजय ब्रह्मक्षत्रिय

@AjayBrahmakshatriya SSH के पास सत्रों को फिर से शुरू करने के लिए कोई साधन नहीं है
Ferrybig

2

पुराना सूत्र, मैं जानता हूं, लेकिन पूर्णता के लिए जब से मैं उसी चीज की तलाश में था ...

विंडोज 7 या नए में आपको बस अपने वाईफाई एडाप्टर और ईथरनेट एडेप्टर दोनों का चयन करने में सक्षम होना चाहिए और "ब्रिज कनेक्शन" चुनें। यह आपको दोनों के लिए एक एकल आईपी पता देगा, और अब आप ईथरनेट को विल (निरंतर वाईफाई कवरेज दिए गए) पर डिस्कनेक्ट और पुन: कनेक्ट करने में सक्षम होंगे।


अच्छा विचार है, मुझे यह कोशिश करनी होगी।
डग

ऐसा करने पर, सेटअप के आधार पर दोनों नेटवर्क को एक साथ नहीं किया जा सकता है, यह नेटवर्क के क्षेत्र में सभी को मारता है (स्रोत: यह मेरे साथ हुआ है)
फेरीबग

2

मैं इसे दो तरीकों से प्रबंधित करता हूं:

अपने डेटासेंटर (RDP / Windows / etc) में टर्मिनल सर्वर से सत्र शुरू करें

या

GNU या स्थापित करें और लॉगिन के बाद उन्हें शुरू करें।

मैं पसंद करता हूं tmuxक्योंकि screenबहुत पुराना स्कूल है, लेकिन अगर आपको केवल समर्थित पैकेज स्थापित करने की अनुमति screenहै, तो आरएचईएल रेपो में है।

या

दोनों करो।


tmuxवास्तव में काम है। के अंदर रिमोट सामान चलाना tmuxएक उत्कृष्ट आदत है।
चूजों

हाँ मैं सहमत हूँ। कई विंडो फ़ंक्शन बहुत अच्छा है।
डग

1

यह आसानी से नहीं किया जा सकता है।

मैं आपको बहुत सारे महंगे अनुप्रयोगों की ओर संकेत कर सकता हूं, जो आपको आईपी या एपी के बीच चलते समय, या यहां तक ​​कि विस्तारित अवधि नेटवर्क डिस्कनेक्शन के बीच एक टेलनेट या एसएसएच सत्र रखने की अनुमति देते हैं, लेकिन वे मूल रूप से एक हमेशा-खुले सर्वर बनाकर इसे हासिल करते हैं। क्लाइंट मशीन के लिए -साइड सत्र ताकि सर्वर को कनेक्शन के अलग या गिराए जाने का पता न चले।

मुझे लगता है कि आप ऐसा काम कर सकते हैं, लेकिन मुझे लगता है कि अगर यह करना आसान था, तो मेरे ग्राहकों को वायरलेस हैंडहेल्ड स्कैनर पर अपने टर्मिनल कनेक्शन को खुले रखने के लिए 5 आंकड़ा लागत के साथ बलात्कार नहीं किया जाएगा।

हालांकि, मैंने स्क्रीन पर ठोकर खाई , जो लगातार एसएसएच सत्र बनाने का दावा करता है , जो वास्तव में काम कर सकता है ... इसे शॉट दें।


1

समस्या शायद यह है कि जब आप सक्षम और वाईफाई के बीच स्विच करते हैं तो आपका स्रोत आईपी पता बदल जाता है। यह ssh सत्र को वापस आने से रोकेगा।

मैंने इसे एक vpn से जोड़कर linux में संभाला और सुनिश्चित किया कि vpn कनेक्शन हमेशा आपके खाते में एक ही आईपी देता है (लागू करने के लिए मुश्किल नहीं है, लेकिन मौका अधिक है कि आप पहले से ही डिफ़ॉल्ट रूप से vpn पर एक ही आईपी प्राप्त करेंगे यदि यह है उपलब्ध है, लेकिन बेहतर यह सुनिश्चित करने के लिए लागू होता है)। मैं ज्यादातर vtun का उपयोग करता हूं, लेकिन Openvpn भी ठीक है। सुनिश्चित करें कि आपके कनेक्शन vpn (सही रूटिंग, पुश उपसर्ग, ...) पर जाएं

मैं 5 मिनट तक केबल से ऑफ़लाइन रहने में सक्षम हूं और फिर वाईफाई से कनेक्ट कर सकता हूं और फिर भी अपने सभी ssh सत्रों से जुड़े रह सकता हूं। चल रहे पिंग, mtr, htop, ... बस जारी रखें जब vpn बहाल किया जाता है जैसे कि कुछ भी नहीं हुआ।


0

जब आप पहली बार ssh सत्र शुरू करते हैं तो केवल wifi पर होने का प्रयास करें। फिर अपने ईथरनेट को प्लग इन करें। इससे नए कनेक्शन को ईथरनेट पर जाने की अनुमति मिलनी चाहिए, लेकिन स्थापित कनेक्शन वाईफाई पर रहेगा। कम से कम मैंने इसे OSX के साथ इस तरह काम करते देखा है, इसलिए OS / हार्डवेयर भिन्न हो सकते हैं।


0

मुझे पूरा यकीन है कि आप इसे हैकिंग w / VMs और टनलिंग की कुछ मूर्खतापूर्ण राशि के साथ कर सकते हैं।

यह अप्रयुक्त है, लेकिन मुझे बताएं कि क्या यह वास्तव में काम करता है।

  1. एक अतिथि VM बनाएं जिसमें 2 इंटरफेस, 1 ब्रिजेड एडॉप्टर (वाईफाई के लिए) और 1 होस्ट केवल नेटवर्किंग हो
  2. कहते हैं कि वीएम के पास पत्नी के लिए 192.168.0.25 है और केवल होस्ट के लिए 192.168.56.5 है।
  3. वीएम के भीतर ssh कनेक्शन w / रिमोट सुरंग के पोर्ट 22 के लिए एक सुरंग बनाएं ssh -L 10022:remote.server.example.com:22
  4. अब सुरंग के माध्यम से कनेक्ट करें। ssh 192.168.56.3 -p 10022
  5. जब आप अपना वाईफाई कनेक्शन खो देते हैं, तो VM पर ईथर नेट एडॉप्टर से एडॉप्टर बदलें।
  6. उम्मीद है कि यह रूटिंग हूप या स्क्रू अप रूटिंग टेबल नहीं है

मुझे पता है अगर यह काम करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.