2011-06-29 16 views
5

के बाद iptables से मूल गंतव्य पुनर्प्राप्त करना मैं सामान्य उपयोग के लिए एक एप्लिकेशन प्रॉक्सी लिख रहा हूं।रेडियरेक्ट

मैं एक पारदर्शी प्रॉक्सी, जहाँ मेरा मूल योजना रीडायरेक्ट नियम आगे अपने आवेदन प्रॉक्सी के लिए सभी कनेक्शनों के साथ iptables का उपयोग करना है के रूप में उपयोग करना चाहते हैं।

समस्या यहाँ है कि मेरे आवेदन प्रॉक्सी इच्छित गंतव्य के बारे में जानकारी खोना निश्चित रूप से है।

क्या मूल रूप से इच्छित प्राप्तकर्ता को पुनर्प्राप्त करने के लिए iptables से पूछना संभव है? इस समस्या का कोई अन्य संभावित समाधान भी सराहना की है!

उत्तर

7

शायद यही वह है जिसे आप ढूंढ रहे थे?

http://www.network-builders.com/iptables-redirect-original-destination-ip-t69515.html

TCP सॉकेट की SO_ORIGINAL_DST विकल्प पढ़ें।
या कनेक्शन ट्रैकिंग तालिका/proc/net/ip_conntrack में देखें।

#include <linux/netfilter_ipv4.h> 

struct sockaddr_in addr; 
bzero((char *) &addr, sizeof(addr)); 
addr.sin_family = AF_NET; 
socklen_t addr_sr = sizeof(addr); 
getsockopt(fd, SOL_IP, SO_ORIGINAL_DST, &addr, &addr_sz); 

मुझे लगता है कि आप अजगर के लिए कुछ इसी तरह की है कि परिवर्तित करने के लिए सक्षम होना चाहिए।

+0

एक आकर्षण की तरह काम करता है, धन्यवाद –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^