मैं इसी तरह की जानकारी की तलाश में यहां पहुंचा था और आश्चर्यचकित था कि कई लोग कहते हैं कि यह आपके निजी आईपी पते को लीक करना ठीक है। मुझे लगता है कि हैक किए जाने के संदर्भ में, यह बहुत बड़ा अंतर नहीं है अगर आप सुरक्षित नेटवर्क पर हैं। हालाँकि, DigitalOcean में सभी स्थानीय नेटवर्क ट्रैफ़िक ठीक उसी केबलों पर हैं, जहाँ हर किसी के पास वास्तव में बाकी सभी ट्रैफ़िक तक पहुँच हो सकती है (संभवत: मैन इन द मिडल अटैक)। यदि आपको बस एक ही डेटा सेंटर में एक कंप्यूटर मिलेगा। जानकारी निश्चित रूप से आपको मेरे ट्रैफ़िक को हैक करने के करीब एक कदम देती है। (अब प्रत्येक ग्राहक का अपना निजी नेटवर्क है जैसे अन्य क्लाउड सेवाओं जैसे AWS के साथ।)
कहा जा रहा है, अपनी खुद की BIND9 सेवा के साथ, आप आसानी से अपने सार्वजनिक और निजी आईपी को परिभाषित कर सकते हैं। यह view
सुविधा का उपयोग करके किया जाता है , जिसमें एक सशर्त शामिल होता है। यह आपको एक DNS को क्वेरी करने और आंतरिक आईपी के बारे में एक उत्तर प्राप्त करने की अनुमति देता है, यदि आप अपने स्वयं के आंतरिक आईपी पते से पूछ रहे हों।
सेटअप के लिए दो ज़ोन की आवश्यकता होती है। चयन का उपयोग करता है match-clients
। यहाँ BIND9 के साथ दो-इन-वन DNS सर्वर से सेटअप का एक उदाहरण है :
acl slaves {
195.234.42.0/24; // XName
193.218.105.144/28; // XName
193.24.212.232/29; // XName
};
acl internals {
127.0.0.0/8;
10.0.0.0/24;
};
view "internal" {
match-clients { internals; };
recursion yes;
zone "example.com" {
type master;
file "/etc/bind/internals/db.example.com";
};
};
view "external" {
match-clients { any; };
recursion no;
zone "example.com" {
type master;
file "/etc/bind/externals/db.example.com";
allow-transfer { slaves; };
};
};
यहां बाहरी क्षेत्र है और हम देख सकते हैं कि आईपी निजी नहीं हैं
; example.com
$TTL 604800
@ IN SOA ns1.example.com. root.example.com. (
2006020201 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800); Negative Cache TTL
;
@ IN NS ns1
IN MX 10 mail
IN A 192.0.2.1
ns1 IN A 192.0.2.1
mail IN A 192.0.2.128 ; We have our mail server somewhere else.
www IN A 192.0.2.1
client1 IN A 192.0.2.201 ; We connect to client1 very often.
आंतरिक क्षेत्र के लिए, हम पहले बाहरी क्षेत्र को शामिल करते हैं, जो कि यह कैसे काम करता है। यदि आप एक आंतरिक कंप्यूटर हैं, तो आप केवल आंतरिक क्षेत्र का उपयोग करते हैं, इसलिए आपको अभी भी बाहरी क्षेत्र परिभाषाओं की आवश्यकता है, इसलिए $include
कमांड:
$include "/etc/bind/external/db.example.com"
@ IN A 10.0.0.1
boss IN A 10.0.0.100
printer IN A 10.0.0.101
scrtry IN A 10.0.0.102
sip01 IN A 10.0.0.201
lab IN A 10.0.0.103
अंत में, आपको यह सुनिश्चित करना होगा कि आपके सभी कंप्यूटर अब उस DNS और उसके दासों का उपयोग करें। एक स्थैतिक नेटवर्क को मानते हुए, इसका अर्थ होगा आपकी /etc/network/interfaces
फ़ाइल का संपादन करना और nameserver
विकल्प में अपने DNS IP का उपयोग करना । कुछ इस तरह:
iface eth0 inet static
...
nameserver 10.0.0.1 10.0.0.103 ...
अब आप सभी को सेट होना चाहिए।