[Question] Xin gợi ý vấn đề DNS |
21/04/2012 09:12:55 (+0700) | #1 | 261788 |
monday1010
Member
|
0 |
|
|
Joined: 13/12/2008 23:18:55
Messages: 33
Offline
|
|
Chào anh em,
Ai có từ khoá nào cho vấn đề sau giúp mình
Client --------------------------------Client's DNS Server
-----------request domain abc.com-->
<----------ip x.x.x.x------------------
Client---------------------x.x.x.x(WAN)--- Server1--192.168.1.0/24--Server2
------------request--------->Foward------>Foward------------------>Process
Vấn đề làm sao để : Khi client gửi dns request domain abc.com sẽ nhận được ip x.x.x.x, sau đó Client sẽ gửi request tới ip x.x.x.x (WAN), foward vào Server1, nhưng Server1 không xử lý request này mà sẽ trỏ sang Server2 thuộc cùng mạng local để xử lý request này của Client. Server1 và Server2 chạy CentOS
Mọi người cho mình hỏi: trên Server1 chỉ cần cài dns server có giải quyết được không, hay phải cài thêm Proxy server, ...vv Xin gợi ý giúp các từ khoá cho mỗi giải pháp luôn vì mình còn khá "gà" về phần này hehe
Tks all.
|
|
|
|
|
[Question] Xin gợi ý vấn đề DNS |
25/04/2012 14:11:11 (+0700) | #2 | 262045 |
|
|
[Question] Xin gợi ý vấn đề DNS |
27/04/2012 12:55:33 (+0700) | #3 | 262114 |
monday1010
Member
|
0 |
|
|
Joined: 13/12/2008 23:18:55
Messages: 33
Offline
|
|
Không phải roài. Dns forwarding nói đến việc xử lý các dns request, vấn đề của mình là qua bước này roài
Ý mình muốn Client nó vẫn connect tới Server1, nhưng thực chất việc xử lý là do Server2
Tks |
|
|
|
|
[Question] Xin gợi ý vấn đề DNS |
27/04/2012 13:35:17 (+0700) | #4 | 262117 |
|
tarzanvip
Member
|
0 |
|
|
Joined: 17/09/2004 16:54:06
Messages: 50
Offline
|
|
Bạn thử search: "DNS Cluster using LVS" xem |
|
|
|
|
[Question] Xin gợi ý vấn đề DNS |
05/05/2012 17:44:43 (+0700) | #5 | 262517 |
monday1010
Member
|
0 |
|
|
Joined: 13/12/2008 23:18:55
Messages: 33
Offline
|
|
tarzanvip wrote:
Bạn thử search: "DNS Cluster using LVS" xem
Hehe mình search từ khoá bạn đưa mà không đúng ý mình ( hay mình sai )
Ý cụ thể của mình là muốn cài dns server ( bind chẳng hạn ) trên chú Server 1 ( chạy centos ) làm sao để những request thuộc về domain abc.com sẽ trỏ sang cho chú Server 2 xử lý
Liệu có làm được vậy không ? Hic hic |
|
|
|
|
[Question] Xin gợi ý vấn đề DNS |
06/05/2012 13:14:57 (+0700) | #6 | 262562 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
monday1010 wrote:
tarzanvip wrote:
Bạn thử search: "DNS Cluster using LVS" xem
Hehe mình search từ khoá bạn đưa mà không đúng ý mình ( hay mình sai )
Ý cụ thể của mình là muốn cài dns server ( bind chẳng hạn ) trên chú Server 1 ( chạy centos ) làm sao để những request thuộc về domain abc.com sẽ trỏ sang cho chú Server 2 xử lý
Liệu có làm được vậy không ? Hic hic
Những request có domain là abc.com hay "thuộc về domain abc.com"? Hai cái khác nhau rất xa.
Cái gì sẽ "trỏ" sang chú serrver 2 để xử lý? |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Xin gợi ý vấn đề DNS |
06/05/2012 13:20:01 (+0700) | #7 | 262563 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
Thử cái này chưa:
Code:
zone "abc.com" {
type forward;
forwarders { xxx.xxx.xxx.xxx; };
};
Trong đó, xxx.xxx.xxx.xxx là IP của "thằng" server 2. |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Xin gợi ý vấn đề DNS |
08/05/2012 10:00:08 (+0700) | #8 | 262707 |
monday1010
Member
|
0 |
|
|
Joined: 13/12/2008 23:18:55
Messages: 33
Offline
|
|
|
|
[Question] Xin gợi ý vấn đề DNS |
08/05/2012 10:21:23 (+0700) | #9 | 262711 |
|
conmale
Administrator
|
Joined: 07/05/2004 23:43:15
Messages: 9353
Location: down under
Offline
|
|
monday1010 wrote:
conmale wrote:
monday1010 wrote:
tarzanvip wrote:
Bạn thử search: "DNS Cluster using LVS" xem
Hehe mình search từ khoá bạn đưa mà không đúng ý mình ( hay mình sai )
Ý cụ thể của mình là muốn cài dns server ( bind chẳng hạn ) trên chú Server 1 ( chạy centos ) làm sao để những request thuộc về domain abc.com sẽ trỏ sang cho chú Server 2 xử lý
Liệu có làm được vậy không ? Hic hic
Những request có domain là abc.com hay "thuộc về domain abc.com"? Hai cái khác nhau rất xa.
Cái gì sẽ "trỏ" sang chú serrver 2 để xử lý?
Hi Anh conmale,
Khác nhau có vài chữ mà xa vậy trời Thực ra cái đầu của monday1010 hơi tối nên trình bày có lẽ đi một dặm mất roài hehe
Thực tình :
Có 2 domain abc.com và xyz.com đều được config trỏ về ip WAN là 1.2.3.4, Trên router (modem) WAN sẽ thực hiện NAT port 80 vào trong Server1
Như vậy khi có request tới domain abc.com và xyz.com trên port 80 sẽ được "vứt" hết vào chú Server1
Bây giờ monday1010 muốn "trị" chú Server1 này sao để với request tới domain xyz.com port 80 thì server1 này sẽ quăng "cục" request này tới Server2, của mày đó làm đi nha
Vậy phải "trị" Server1 này ở đâu hả anh ? Trên Apache và dns server ??
Tks A
Xem bài #7 ở trên. |
|
What bringing us together is stronger than what pulling us apart. |
|
|
|
[Question] Xin gợi ý vấn đề DNS |
03/07/2012 21:48:17 (+0700) | #10 | 266041 |
monday1010
Member
|
0 |
|
|
Joined: 13/12/2008 23:18:55
Messages: 33
Offline
|
|
Lâu rồi lục lại cái này
Tìm được đoạn code bằng python cho mục đích này của mình :
Code:
import sys, socket, time, threading
LOGGING = True
loglock = threading.Lock( )
def log(s, *a):
if LOGGING:
loglock.acquire( )
try:
print '%s:%s' % (time.ctime( ), (s % a))
sys.stdout.flush( )
finally:
loglock.release( )
class PipeThread(threading.Thread):
pipes = [ ]
pipeslock = threading.Lock( )
def _ _init_ _(self, source, sink):
Thread._ _init_ _(self)
self.source = source
self.sink = sink
log('Creating new pipe thread %s ( %s -> %s )',
self, source.getpeername( ), sink.getpeername( ))
self.pipeslock.acquire( )
try: self.pipes.append(self)
finally: self.pipeslock.release( )
self.pipeslock.acquire( )
try: pipes_now = len(self.pipes)
finally: self.pipeslock.release( )
log('%s pipes now active', pipes_now)
def run(self):
while True:
try:
data = self.source.recv(1024)
if not data: break
self.sink.send(data)
except:
break
log('%s terminating', self)
self.pipeslock.acquire( )
try: self.pipes.remove(self)
finally: self.pipeslock.release( )
self.pipeslock.acquire( )
try: pipes_left = len(self.pipes)
finally: self.pipeslock.release( )
log('%s pipes still active', pipes_left)
class Pinhole(threading.Thread):
def _ _init_ _(self, port, newhost, newport):
Thread._ _init_ _(self)
log('Redirecting: localhost:%s -> %s:%s', port, newhost, newport)
self.newhost = newhost
self.newport = newport
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.sock.bind(('', port))
self.sock.listen(5)
def run(self):
while True:
newsock, address = self.sock.accept( )
log('Creating new session for %s:%s', *address)
fwd = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
fwd.connect((self.newhost, self.newport))
PipeThread(newsock, fwd).start( )
PipeThread(fwd, newsock).start( )
if _ _name_ _ == '_ _main_ _':
print 'Starting Pinhole port forwarder/wwwector'
import sys
# get the arguments, give help in case of errors
try:
port = int(sys.argv[1])
newhost = sys.argv[2]
try: newport = int(sys.argv[3])
except IndexError: newport = port
except (ValueError, IndexError):
print 'Usage: %s port newhost [newport]' % sys.argv[0]
sys.exit(1)
# start operations
sys.stdout = open('pinhole.log', 'w')
Pinhole(port, newhost, newport).start( )
Đặt tên script này là pinhole.py trên server1 và chạy nó :
Code:
# python pinhole.py 80 server2
Như vậy các request đến port 80 trên server1 sẽ được forward sang cho server2 xử lý. |
|
|
|
|
|
|
|
Users currently in here |
1 Anonymous
|
|
Powered by JForum - Extended by HVAOnline
hvaonline.net | hvaforum.net | hvazone.net | hvanews.net | vnhacker.org
1999 - 2013 ©
v2012|0504|218|
|
|