iptables chuyển tiếp tất cả lưu lượng truy cập đến giao diện


14

Tôi có hai giao diện eth1eth0. Tôi muốn tất cả lưu lượng truy cập eth0được chuyển tiếp đến eth1. Tôi đã tạo một quy tắc iptable như thế này:

iptables -A FORWARD -s 0/0 -i eth0 -p tcp -o eth1 -j ACCEPT

Nhưng điều này không làm việc. Đây có phải là cách chính xác để làm điều này?

Câu trả lời:


22

Nếu bạn chưa kích hoạt chuyển tiếp trong kernel, hãy làm như vậy.

  • Mở /etc/sysctl.confvà không chú ýnet.ipv4.ip_forward = 1

  • Sau đó thực hiện $ sudo sysctl -p

Thêm các quy tắc sau vào iptables

sudo iptables -t nat -A POSTROUTING --out-interface eth1 -j MASQUERADE  
sudo iptables -A FORWARD --in-interface eth0 -j ACCEPT

Tất cả lưu lượng chuyển tiếp sẽ đi qua chuỗi FORWARD. Để lọc các gói giờ bạn sẽ phải tạo quy tắc trên chuỗi đó chỉ định giao diện nào đến / đi thay vì sử dụng chuỗi INPUT / OUTPUT.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.