Исправлено имя интерфейса ppp?

1191
13th Matrix

У меня есть много туннелей или серверов pptp vpn для подключения, и linux назначит ppp0 для 1-го подключения, ppp1 для 2-го подключения и так далее. Мне нужно исправить интерфейсы, чтобы я мог правильно переадресовать соединение через iptables. Есть ли способ исправить имя интерфейса для каждого туннеля?

0

1 ответ на вопрос

2
MariusMatutiae

That's not the way this is done. The way to do it is specified in the ever-helpful Arch Linux wiki, under the heading Split Tunneling based on port by /etc/ppp/ip-up.d.

Let me explain. All files in /etc/ppp/ip-up.d are executed every time a pptp connection is established, and the file 01-routebyport.sh is passed the following arguments,as per the Web page above:

 # This script is called with the following arguments: # Arg Name # $1 Interface name # $2 The tty # $3 The link speed # $4 Local IP number # $5 Peer IP number # $6 Optional ``ipparam'' value foo 

Thus, since you are passed the peer IP number and the interface name, you can build your iptables rules by means of case:

 case $5 in: 1.1.1.1) iptables -i $1 -j DROP 8.8.8.8) iptables -i$1-j ACCEPT 

and so on.

Так что я думаю, что невозможно использовать имя пользовательского интерфейса? Спасибо за URL и скрипт. Я немного знаком с сценариями оболочки, я посмотрю, что я могу сделать. 13th Matrix 8 лет назад 0
@ 13thMatrix Лучше, чем «невозможно использовать имя пользовательского интерфейса»: вам не нужно знать, как называется каждый интерфейс, вы можете позволить своему ПК сделать это за вас, и все же заставить его работать. Меньше работы для тебя. MariusMatutiae 8 лет назад 0
Мне, наконец, удается все написать. Это немного сложнее, чем я думал, потому что у меня есть множество VPN-соединений, которым нужно много правил iptables для пересылки Благодарю. 13th Matrix 8 лет назад 0

Похожие вопросы