I have a direct connection between to FreeBSD machines using an ethernet cable. I have setup a tunnel over this link and am able to ping between all four IP addresses just fine (between tunnel IP address and static NIC IP addresses). I want to extend this by adding two additional tunnels gif1 and gif2. here is the content of my rc.conf

ifconfig_msk0="inet netmask"
cloned_interfaces="gif0 gif1 gif2"
ifconfig_gif0="inet tunnel up"
static_routes="tunnelone tunneltwo tunnelthree"
ifconfig_gif1="inet tunnel up"
ifconfig_gif2="inet tunnel up"
the routing tables seem correct. I am still able to ping on the gif0 interface. But when I try to ping or, i get network is down error. I don't understand what's the problem. I sniffed packets on wireshark and there is absolutely no activity on gif1 and gif2 interfaces during pings, just on gif0 and msk0 when i ping do i need to specify additional settings if i want to use multiple tunnels instead of just one in rc.conf?

could somebody please explain what am i doing wrong here?