# 使用 ssh 連線虛擬機

# 如何查看你的主機 ip

在你的虛擬機輸入以下指令

ifconfig

# ssh 連線

開啟你的 Powershell 輸入以下指令

ssh [你的帳號]@[你的主機ip]

例如

ssh alen911018@192.168.56.102

輸入密碼即連線成功

# Free5GC

# 建立 run.sh 檔案

開啟你的 free5gc 虛擬機,輸入以下指令

sudo vim run.sh

# 在 vim 中編輯

  1. 按下 i,螢幕左下角要顯示 -- INSERT --
  2. 打入以下程式碼 (若你是在 Powershell 編輯,可以直接 ctl + c , ctl + v貼上)。
#!/bin/bash
echo [你的密碼] | sudo -S iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE
SESSION="free5gc"
WINDOW="$SESSION:main"
# 刪除現有的 tmux
tmux kill-session -t $SESSION
# 建立 session
tmux new-session -d -s $SESSION
# window 重命名
tmux rename-window -t $SESSION:0 "main"
# 傳送指令
tmux send-keys -t $WINDOW "echo [你的密碼] | sudo -S ls" C-m
tmux send-keys -t $WINDOW "cd ~/free5gc/" C-m
tmux send-keys -t $WINDOW "./force_kill.sh" C-m
tmux send-keys -t $WINDOW "./run.sh" C-m
# 分割 pane
tmux split-pane -h -t $WINDOW
# 傳送命令
tmux send-keys "cd ~/free5gc/webconsole/" C-m
tmux send-keys "go run server.go" C-m
# attach session
tmux a -t $SESSION
  1. 按下 esc 再按下 shift + ; (就是 : 的意思)。
  2. 輸入 wq , 按下 Enter 存檔並離開。

NOTE: [你的密碼] 部分要改成你的密碼。(中括號 [] 不用加)

# 執行 run.sh

sh ./run.sh

或是把腳本檔案加上執行權限,就可以直接執行腳本,不需要透過 sh 指令

sudo chmod +x ./run.sh
./run.sh

# UERANSIM

# 建立 run.sh 檔案

sudo vim run.sh

# 在 vim 中編輯

  1. 按下 i,螢幕左下角要顯示 -- INSERT --
  2. 打入以下程式碼 (若你是在 Powershell 編輯,可以直接 ctl + c , ctl + v 貼上)。
#!/bin/bash
SESSION="ueransim"
WINDOW="$SESSION:main"
# 刪除現有的 tmux
tmux kill-session -t $SESSION
# 建立 session
tmux new-session -d -s $SESSION # -d: detach
# window 重命名
tmux rename-window -t $SESSION:0 "main"
# 傳送命令
tmux send-keys -t $WINDOW 'cd ~/UERANSIM/build/' C-m # cd ~/UERANSIM/build/
tmux send-keys -t $WINDOW './nr-gnb -c ../config/free5gc-gnb.yaml' C-m
# 水平分割 pane
tmux split-window -h -t $WINDOW
# 傳送命令
tmux send-keys -t $WINDOW "echo [你的密碼] | sudo -S ls" C-m
tmux send-keys -t $WINDOW 'cd ~/UERANSIM/build' C-m
tmux send-keys -t $WINDOW 'sudo ./nr-ue -c ../config/free5gc-ue.yaml' C-m
sleep 5
sh ./ping.sh
  1. 按下 esc 再按下 shift + ; (就是 : 的意思)。
  2. 輸入 wq , 按下 Enter 存檔並離開。

NOTE: [你的密碼] 部分要改成你的密碼。 (中括號 [] 不用加)

# 建立 ping.sh 檔案

sudo vim ping.sh

同前面使用 vim 的方法複製以下內容

#!/bin/bash
echo 0000 | sudo -S ip route add default dev uesimtun0
ping -c 8 -I uesimtun0 google.com

# 執行 run.sh

sh ./run.sh