2012-06-14 43 views
7

Tôi có một máy chủ Linux có một mạng không dây đặc biệt để khách hàng kết nối. Sau khi kết nối, tôi muốn người dùng luôn được chuyển hướng đến máy chủ web của riêng mình bất kể họ nhập URL nào. Giải pháp lớn là thiết lập máy chủ DNS đầy đủ (có BIND hoặc tương đương) nhưng dường như quá mức. Tất cả những gì tôi cần là một chương trình đơn giản sẽ lắng nghe mọi yêu cầu DNS và luôn trả lời cùng một địa chỉ IP.Máy chủ DNS rất đơn giản

Tôi nhìn quanh một lần nhưng dường như không thể tìm thấy. Nó tốt nhất nên được viết bằng C hoặc Perl vì tôi không thực sự muốn cài đặt bất kỳ ngôn ngữ kịch bản nào khác.

+1

Làm thế nào về dnsmasq: http://serverfault.com/q/351108 –

+1

Bạn có thể sử dụng dnsmasq (DNS + DHCP đơn giản) – dAm2K

+0

FWIW, sử dụng DNS để bắt khách hàng trên các AP không dây hiện nay được coi là thực hành xấu bởi vì nó gây trở ngại với bộ đệm DNS. Giờ đây, các cổng cố định cố định sử dụng tính năng chặn HTTP. – Alnitak

Trả lời

1

Tôi đã sử dụng fakedns.py khi đảo ngược phần mềm độc hại. Nó có thể là quá giới hạn cho tình hình của bạn.

7

Tôi khuyên bạn nên sử dụng dnsmasq. Nó đầy đủ tính năng hơn mức bạn cần, nhưng nó được viết rất tốt, nhỏ và dễ cài đặt và cấu hình duy nhất bạn cần cung cấp là --address='/#/1.2.3.4' để yêu cầu trả lời tất cả các truy vấn (không khớp với một số quy tắc khác) với địa chỉ 1.2.3.4. dnsmasq nổi tiếng và được duy trì và có lẽ là một máy chủ mạnh mẽ hơn Net :: DNS :: Nameserver.

2

Khi tôi trả lời trong câu hỏi liên quan khác, tôi đã viết một máy chủ DNS cơ bản trong C++ cho một cuộc phỏng vấn xin việc theo giấy phép BSD.

Tôi nghĩ rằng mã là khá sạch sẽ, mặc dù tôi đã không được thực hiện kiểm tra đơn vị :-( Tôi đã thử nghiệm nó với đào, và mất khoảng một giao thức tuần hiểu DNS + thực hiện tài liệu +.

Nếu bất cứ ai muốn mở rộng nó, tôi đoán nó sẽ không phải là rất khó khăn Bởi vì tôi nghĩ rằng nó chỉ hỗ trợ các truy vấn ngược, như được yêu cầu trong việc thực hiện

mã này có thể được tìm thấy ở đây:.. http://code.google.com/p/dns-server/

Nó đã được di chuyển đến : https://github.com/tomasorti/dns-server