72 lines
2.4 KiB
Bash
Executable File
72 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
#WARNING: this file may not work properly, be sure to know what you
|
|
#do when using it
|
|
|
|
#/*
|
|
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
|
# * contributor license agreements. See the NOTICE file distributed with
|
|
# * this work for additional information regarding copyright ownership.
|
|
# * The OpenAirInterface Software Alliance licenses this file to You under
|
|
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
|
# * except in compliance with the License.
|
|
# * You may obtain a copy of the License at
|
|
# *
|
|
# * http://www.openairinterface.org/?page_id=698
|
|
# *
|
|
# * Unless required by applicable law or agreed to in writing, software
|
|
# * distributed under the License is distributed on an "AS IS" BASIS,
|
|
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# * See the License for the specific language governing permissions and
|
|
# * limitations under the License.
|
|
# *-------------------------------------------------------------------------------
|
|
# * For more information about the OpenAirInterface (OAI) Software Alliance:
|
|
# * contact@openairinterface.org
|
|
# */
|
|
|
|
################################################################################
|
|
# file init_nas_s1
|
|
# brief loads the ue_ip module and sets up IP for the UE
|
|
# you may want to edit it to fit your settings (replace oip0 by oipX for
|
|
# instance)
|
|
# author Florian Kaltenberger
|
|
#
|
|
#######################################
|
|
|
|
LTEIF=oip1
|
|
#OPENAIR_DIR=/home/oai/svn-oai/openair4G
|
|
|
|
load_module() {
|
|
mod_name=${1##*/}
|
|
mod_name=${mod_name%.*}
|
|
if awk "/$mod_name/ {found=1 ;exit} END {if (found!=1) exit 1}" /proc/modules
|
|
then
|
|
echo "module $mod_name already loaded: I remove it first"
|
|
sudo rmmod $mod_name
|
|
fi
|
|
echo loading $mod_name
|
|
sudo insmod $1
|
|
}
|
|
|
|
load_module ../../targets/bin/ue_ip.ko
|
|
|
|
if [ "$1" = "UE" ]; then
|
|
echo "bring up $LTEIF interface for UE"
|
|
sudo ifconfig $LTEIF up
|
|
fi
|
|
|
|
sudo ip route flush cache
|
|
sleep 1
|
|
sudo sysctl -w net.ipv4.conf.all.log_martians=1
|
|
echo "Disabling reverse path filtering"
|
|
sudo sysctl -w net.ipv4.conf.all.rp_filter=0
|
|
sudo ip route flush cache
|
|
|
|
# Check table 200 lte in /etc/iproute2/rt_tables
|
|
fgrep lte /etc/iproute2/rt_tables > /dev/null
|
|
if [ $? -ne 0 ]; then
|
|
echo "200 lte " >> /etc/iproute2/rt_tables
|
|
fi
|
|
sudo ip rule add fwmark 1 table lte
|
|
sudo ip route add default dev $LTEIF table lte
|