আপনি এটি জিএনইউ / লিনাক্সের নেটওয়ার্ক নেমস্পেসের সাহায্যে করতে পারেন।
কীভাবে ওপেনভিপিএন এবং একটি পৃথক নেমস্পেসে একক অ্যাপ্লিকেশন চালানো যায় তা এখানে:
নেট নেটওয়ার্ক নেমস্পেস তৈরি করুন:
ip netns add myvpn
নেমস্পেসে লুপব্যাক ইন্টারফেস শুরু করুন (অন্যথায় অনেক কিছুই প্রত্যাশার মতো কাজ করে না ...)
ip netns exec myvpn ip addr add 127.0.0.1/8 dev lo
ip netns exec myvpn ip link set lo up
ভার্চুয়াল নেটওয়ার্ক ইন্টারফেস তৈরি করুন যা ওপেনভিপিএনকে (নেমস্পেসে) আসল নেটওয়ার্ক অ্যাক্সেস করতে দেবে, এবং নেমস্পেসের (vpn0) ইন্টারফেসটিকে তার ডিফল্ট গেটওয়ে হিসাবে ইন্টারফেসটি ব্যবহারের জন্য নেমস্পেসে (vpn1) কনফিগার করবে
ip link add vpn0 type veth peer name vpn1
ip link set vpn0 up
ip link set vpn1 netns myvpn up
ip addr add 10.200.200.1/24 dev vpn0
ip netns exec myvpn ip addr add 10.200.200.2/24 dev vpn1
ip netns exec myvpn ip route add default via 10.200.200.1 dev vpn1
নেমস্পেসের ইন্টারফেসের জন্য IPv4 রাউটিং এবং NAT সক্ষম করুন। যেহেতু আমার ডিফল্ট ইন্টারফেসটি একটি ওয়্যারলেস এক, আমি বহির্গামী ইন্টারফেসের জন্য iptables এ wl + (যা wlan0, wlp3s0 ইত্যাদির সাথে মেলে থাকতে পারে) ব্যবহার করি; যদি আপনি তারযুক্ত ইন্টারফেস ব্যবহার করেন তবে আপনার সম্ভবত এন + (বা ব্রিজযুক্ত ইন্টারফেসের জন্য + ব্রাউজ) ব্যবহার করা উচিত
iptables -A INPUT \! -i vpn0 -s 10.200.200.0/24 -j DROP
iptables -t nat -A POSTROUTING -s 10.200.200.0/24 -o wl+ -j MASQUERADE
sysctl -q net.ipv4.ip_forward=1
নেমস্পেরের ভিতরে নেমসারভারটি ব্যবহার করতে কনফিগার করুন
mkdir -p /etc/netns/myvpn
echo 'nameserver 8.8.8.8' > /etc/netns/myvpn/resolv.conf
প্রায় সম্পন্ন, এখন আমাদের নেমস্পেসে পুরো নেটওয়ার্ক অ্যাক্সেস থাকা উচিত
ip netns exec myvpn ping www.google.com
অবশেষে নেমস্পেসে ওপেনভিপিএন শুরু করুন
ip netns exec myvpn openvpn --config /etc/openvpn/myvpn.conf
একবার টিউন নেমস্পেসে উঠলে আপনি নিজের পছন্দসই প্রোগ্রামটি শুরু করতে প্রস্তুত!
while ! ip netns exec myvpn ip a show dev tun0 up; do sleep .5; done
ip netns exec myvpn sudo -u $MYSELF popcorntime
উত্স নিবন্ধ।
এছাড়াও উত্স নিবন্ধে একটি মোড়ক স্ক্রিপ্ট রয়েছে যা আপনি আপনার প্রয়োজনের জন্য মানিয়ে নিতে পারেন।