Skip to content

FreeBSD : GRE Tunnel

Topologi

Interface

FreeBSD1

em0 -> Internet

em1 -> e0 PC1

gre0 -> gre0 FreeBSD2

FreeBSD2

em0 -> Internet

em1 -> e0 PC2

gre0 -> gre0 FreeBSD1

Konfigurasi FreeBSD1

IPv4 Forwarding

sysctl net.inet.ip.forwarding=1
echo "net.inet.ip.forwarding=1" >> /etc/sysctl.conf

IP Address

sysrc ifconfig_em0="inet 192.168.122.4 255.255.255.0"
sysrc ifconfig_em1="inet 10.10.10.1 255.255.255.0"

Konfigurasi FreeBSD2

IPv4 Forwarding

sysctl net.inet.ip.forwarding=1
echo "net.inet.ip.forwarding=1" >> /etc/sysctl.conf

IP Address

sysrc ifconfig_em0="inet 192.168.122.5 255.255.255.0"
sysrc ifconfig_em1="inet 10.10.20.1 255.255.255.0"

Konfigurasi PC1

ip 10.10.10.2/24 10.10.10.1

Konfigurasi PC2

ip 10.10.20.2/24 10.10.20.1

Konfigurasi GRE Tunnel

Penjelasan IP:
172.16.1.1 -> IP Tunnel FreeBSD1

172.16.1.2 -> IP Tunnel FreeBSD2

192.168.122.4 -> IP yang terhubung ke internet (ibarat IP Public) milik FreeBSD1

192.168.122.5 -> IP yang terhubung ke internet(ibarat IP Public) milik FreeBSD2

FreeBSD1

ifconfig gre0 create
ifconfig gre0 172.16.1.1 172.16.1.2 netmask 255.255.255.252
ifconfig gre0 tunnel 192.168.122.4 192.168.122.5

FreeBSD2

ifconfig gre0 create
ifconfig gre0 172.16.1.2 172.16.1.1 netmask 255.255.255.252
ifconfig gre0 tunnel 192.168.122.5 192.168.122.4

Static Routing

Static Routing untuk menghubungkan internal network

Penjelasan IP:

172.16.1.1 -> IP Tunnel FreeBSD1

172.16.1.2 -> IP Tunnel FreeBSD2

10.10.10.0/24 -> Network Internal FreeBSD1

10.10.20.0/24 -> Network Internal FreeBSD2

FreeBSD1

route add 10.10.20.0/24 172.16.1.2

FreeBSD2

route add 10.10.10.0/24 172.16.1.1

Test Ping dari PC1 ke PC2 dan sebaliknya

Memasukkan Konfigurasi Tunnel di /etc/rc.conf

FreeBSD1

cloned_interfaces="gre0"
ifconfig_gre0="inet 172.16.1.1 172.16.1.2 netmask 255.255.255.252
tunnel 192.168.122.4 192.168.122.5"
static_routes="tunnel"
route_tunnel="10.10.20.1/24 172.16.1.2"

FreeBSD2

cloned_interfaces="gre0"
ifconfig_gre0="inet 172.16.1.2 172.16.1.1 netmask 255.255.255.252
tunnel 192.168.122.5 192.168.122.4"
static_routes="tunnel"
route_tunnel="10.10.10.1/24 172.16.1.1"

Referensi:

  • https://mikepultz.com/2010/05/simple-freebsd-tunnels/
  • https://www.freebsd.org/cgi/man.cgi?query=gre&sektion=4
Published inFreeBSD

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *