VPN ने डीफॉल्ट मार्ग घेतल्याक्षणी दूरस्थ प्रवेश अनुपलब्ध होतो, तर तोच सर्व्हर कोणत्याही तक्रारीशिवाय LAN वर स्ट्रीम करत राहतो। Plex च्या लॉगमध्ये या बदलाचे कोणतेही स्पष्टीकरण नाही, कारण तुटलेला भाग Plex नाही: तो असा पत्ता प्रकाशित करतो जिथे रहदारी आता पोहोचत नाही। ग्राहकांमध्ये एकच सार्वजनिक पत्ता वाटणारा प्रदाता एक पोर्ट तुमच्या टनेल पत्त्यावर फॉरवर्ड करतो, आणि तुमच्या स्वतःच्या मशीनवरील काहीतरी अजूनही तो पोर्ट Plex श्रोत्याकडे नेले पाहिजे। पोहोचण्याची चाचणी हिरवी होण्यापूर्वी तीनही दुव्यांनी एकाच बाह्य पोर्टवर सहमत व्हावे।

साखळीत तीन दुवे आहेत, आणि Plex फक्त शेवटचा पाहतो

प्रदात्याकडे सार्वजनिक पत्ता आहे आणि तो त्याच्या एका पोर्टचा नकाशा तुमच्या टनेल पत्त्यावर करतो। तुमची मशीन त्या पोर्टवर येणारे सर्व घेऊन ते Plex श्रोत्याकडे पुनर्निर्देशित करते, जो सामान्यतः लूपबॅक पोर्ट 32400 वर बसतो। मग Plex ला बाह्य पोर्ट क्रमांक सांगितला जातो जेणेकरून त्याची स्वतःची तपासणी बाहेरील जग डायल करते त्याशी जुळेल।

कोणताही एक दुवा तोडला तरी वेब इंटरफेस दूरस्थ प्रवेश अनुपलब्ध असल्याचे नोंदवतो, कोणता दुवा अयशस्वी झाला याचा कोणताही सुगावा न देता। हेच मौन लोक सर्व्हर पुन्हा सुरू करतात, अॅप पुन्हा इंस्टॉल करतात आणि सेटिंग वारंवार टॉगल करतात पण सुई हलत नाही याचे कारण आहे। तीन दुवे स्वतंत्रपणे अयशस्वी होतात: जुन्या टनेल पत्त्याकडे लक्ष्यित फॉरवर्ड, फक्त Ethernet इंटरफेस व्यापणारे पुनर्निर्देशन, आणि अजूनही 32400 धरून ठेवणारे Plex फील्ड, सर्व एकच लाल मजकूर निर्माण करतात। अंदाज लावण्याऐवजी श्रोत्यापासून बाहेर काम करा, आणि अयशस्वी दुवा सामान्यतः एका मिनिटात स्वतःचे नाव सांगतो।

पहिला दुवा: VPN प्रदात्याकडे पोर्ट फॉरवर्ड करा

प्रदात्याचे पोर्ट फॉरवर्डिंग पान उघडा आणि नकाशा जोडा। बहुतेक अंमलबजावण्या तुम्हाला यादृच्छिक बाह्य पोर्ट देतात आणि आतील निवडू देतात, म्हणून वाटप स्वीकारा आणि ते तुमच्या क्लायंटकडे सध्या असलेल्या टनेल पत्त्याकडे निर्देशित करा। तो क्रमांक लिहून ठेवा, कारण पुढील प्रत्येक पायरी तो अगदी तसाच पुनरावृत्ती करते।

पुन्हा कनेक्ट होताना नकाशा फिरवणारे प्रदाते हेच या सेटअपची एक संध्याकाळ टिकून नंतर मरण्याचे नेहमीचे कारण आहे। काही स्थिर पोर्ट मागण्याची परवानगी देतात, इतर प्रत्येक हातमिळवणीवर नवीन वाटप करतात, म्हणून दुसरे काहीही स्पर्श करण्यापूर्वी सध्याचे नकाशा पान वाचा।

दुसरा दुवा: pf अँकरने पोर्ट पुनर्निर्देशित करा

macOS वर पुनर्निर्देशन pf अँकरमध्ये जाते, पॅकेट वाहून नेऊ शकणाऱ्या प्रत्येक इंटरफेससाठी एक नियम। आधी टनेलचा नियम आणि नंतर Ethernet चा नियम लिहा, दोन्हीवर तोच बाह्य पोर्ट ठेवा, नाहीतर फेलओव्हरदरम्यान Wi-Fi वरून येणारी रहदारी कुठेही उतरत नाही।

# /etc/pf.anchors/plex.forward
rdr pass on tun0 inet proto tcp from any to any port 41893 -> 127.0.0.1 port 32400
rdr pass on en0 inet proto tcp from any to any port 41893 -> 127.0.0.1 port 32400

अँकर फाइल स्वतःहून काहीही करत नाही; मुख्य कॉन्फिगरेशनने तिचा संदर्भ द्यावा आणि ती लोड करावी। या दोन ओळी /etc/pf.conf मध्ये ठेवा, कोणत्याही सध्याच्या पुनर्निर्देशन नियमांपूर्वी, नंतर पुन्हा लोड करा आणि कर्नेलने प्रत्यक्षात काय स्वीकारले ते वाचा।

rdr-anchor "plex"
load anchor "plex" from "/etc/pf.anchors/plex.forward"

sudo pfctl -vnf /etc/pf.anchors/plex.forward
sudo pfctl -f /etc/pf.conf
sudo pfctl -s nat

अज्ञात पोर्टबद्दल सिंटॅक्स तक्रार म्हणजे तुमच्या संपादनातून प्लेसहोल्डर शिल्लक राहिला। रिकाम्या nat तक्त्याचा अर्थ अँकर कधीही लोड झाला नाही, आणि सध्याच्या macOS वर pf डीफॉल्टनुसार सक्षम नसल्यामुळे, sudo pfctl -E दुरुस्तीचा भाग आहे, पर्यायी अतिरिक्त नाही। प्रत्येक रीबूटनंतर आणि प्रत्येक नकाशा बदलानंतर अँकर पुन्हा लोड करा। अँकर फाइल आवृत्ती नियंत्रणात ठेवा जेणेकरून प्रदात्याच्या पोर्ट बदलाचे पुन्हा शोधण्याच्या व्यायामाऐवजी एका ओळीचे संपादन होईल।

तिसरा दुवा: Plex मध्ये तोच पोर्ट पिन करा

Plex मध्ये सेटिंग्ज उघडा, नंतर सर्व्हर, नंतर दूरस्थ प्रवेश, आणि स्वतःहून पोर्ट निर्दिष्ट करू देणाऱ्या बॉक्सवर टिक करा। 32400 ऐवजी प्रदात्याचा बाह्य पोर्ट टाका, नंतर पोहोचण्याची चाचणी चालू द्या। नवीन बिल्डनी हे नियंत्रण जुन्या Connect पानावरून दूर हलवले आहे, म्हणून मार्गदर्शक जिथे म्हणतो तिथे फील्ड नसल्यास दूरस्थ प्रवेशाखाली पहा।

LAN वरून चाचणी करून काहीही सिद्ध होत नाही। त्याच Wi-Fi वरील लॅपटॉप थेट सर्व्हरपर्यंत पोहोचतो, म्हणून सार्वजनिक मार्ग मृत असतानाही तपासणी यशस्वी होते। सेल्युलर डेटावरील फोन, किंवा तुमच्या नेटवर्कबाहेरील कोणताही होस्ट वापरा आणि तिथून सार्वजनिक पत्ता आणि बाह्य पोर्ट डायल करा।

Plex ला दोष देण्यापूर्वी प्रत्येक दुव्याची पुष्टी करा

श्रोत्यापासून सुरुवात करा आणि बाहेर काम करा। Plex फक्त LAN पत्त्याला बांधलेले असल्यास तो लूपबॅककडे निर्देशित पुनर्निर्देशनाकडे दुर्लक्ष करेल, म्हणून पहिला आदेश तोच आहे जो तो कुठे ऐकतो हे सिद्ध करतो।

sudo lsof -nP -iTCP:32400 -sTCP:LISTEN

नंतर पुनर्निर्देशन अस्तित्वात आहे आणि तुम्ही प्रदात्याला दिलेल्या पोर्टशी जुळते हे सिद्ध करा। nat तक्त्याने दोन्ही इंटरफेसवर तोच बाह्य पोर्ट दाखवला पाहिजे।

sudo pfctl -s nat | grep 41893
nc -vz 203.0.113.42 41893

तो शेवटचा आदेश Mac वरून नाही, नेटवर्कबाहेरून चालवा। जर सेल्युलरवरून TCP कनेक्शन पूर्ण होते पण Plex अजूनही अनुपलब्ध दाखवतो, तर पोर्ट श्रोत्यापर्यंत पोहोचत आहे आणि उरलेला संशयित Plex फील्डमध्ये लिहिलेला क्रमांक आहे। काहीही अजिबात उत्तर देत नसल्यास, तुटणे वरच्या बाजूला आहे: प्रदात्याचा नकाशा, टनेल पत्ता, किंवा pf सक्षम नसणे।

संबंधित लेख