Ниже приведен пример shell скрипта, который позволяет устанавливать и
отключать GRE туннель для ОС Linux (требуется установленный пакет iproute2):
| Скрипт для IPGRE
|
#!/bin/sh
PATH=/bin:/sbin:/usr/sbin:/usr/bin
GRE_IFACE="gre1"
GRE_SERVER_IP="207.226.45.245"
MY_IP="xxx.xxx.xxx.xxx" # Ваш реальный IP адрес
MY_GW="xxx.xxx.xxx.xxx" # IP адрес вашего локального шлюза
GRE_SRV_IP="172.xxx.xxx.xxx" # Адрес полученный от техподдержки
GRE_CLI_IP="172.xxx.xxx.xxx" # Адрес полученный от техподдержки
#SPECTRUM_REAL_IP="" # Только если вы получили реальный IP адрес от SpectrumSat
start(){
echo -n "Starting GRE... "
ip tunnel del $GRE_IFACE > /dev/null 2>&1
ip tunnel add $GRE_IFACE mode gre local $MY_IP remote $GRE_SERVER_IP && \
ip link set $GRE_IFACE up && \
ip address add ${GRE_CLI_IP}/32 dev $GRE_IFACE && \
ip route add ${GRE_SRV_IP}/32 dev $GRE_IFACE && \
ip route add $GRE_SERVER_IP via $MY_GW && \
echo "OK"
# ip address add ${SPECTRUM_REAL_IP}/32 dev $GRE_IFACE
ip route replace default dev $GRE_IFACE
}
stop(){
ip tunnel del $GRE_IFACE
ip route delete $GRE_SERVER_IP > /dev/null 2>&1
ip route replace default via $MY_GW
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo "Usage: $0 start|stop "
;;
esac
|
| Скрипт для IPIP
|
#!/bin/sh
PATH=/bin:/sbin:/usr/sbin:/usr/bin
IPIP_IFACE="ipip1"
IPIP_SERVER_IP="207.226.45.245"
MY_IP="xxx.xxx.xxx.xxx" # Ваш реальный IP адрес
MY_GW="xxx.xxx.xxx.xxx" # IP адрес вашего локального шлюза
IPIP_SRV_IP="172.xxx.xxx.xxx" # Адрес полученный от техподдержки
IPIP_CLI_IP="172.xxx.xxx.xxx" # Адрес полученный от техподдержки
#SPECTRUM_REAL_IP="" # Только если вы получили реальный IP адрес от SpectrumSat
start(){
echo -n "Starting IPIP... "
ip tunnel del $IPIP_IFACE > /dev/null 2>&1
ip tunnel add $IPIP_IFACE mode ipip local $MY_IP remote $IPIP_SERVER_IP && \
ip link set $IPIP_IFACE up && \
ip address add ${IPIP_CLI_IP}/32 dev $IPIP_IFACE && \
ip route add ${IPIP_SRV_IP}/32 dev $IPIP_IFACE && \
ip route add $IPIP_SERVER_IP via $MY_GW && \
echo "OK"
# ip address add ${SPECTRUM_REAL_IP}/32 dev $IPIP_IFACE
ip route replace default dev $IPIP_IFACE
}
stop(){
ip tunnel del $IPIP_IFACE
ip route delete $IPIP_SERVER_IP > /dev/null 2>&1
ip route replace default via $MY_GW
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo "Usage: $0 start|stop "
;;
esac
|