# MAC OS Networking Issue - Interface VLANs and Virtual Adapter



## Andrew Hardy (Apr 30, 2013)

Hey everybody - glad to be on these forums and need some assistance.
Basically what I am trying to achieve is a virtual interface (imitating a physical thunderbolt adapter) that will allow me to create VLAN interfaces and attach them to the created virtual adapter.

The default action of MAC OSx is only to allow VLAN creation on the Thunderbolt adapter when its physically plugged in but every now and then (as an example on the move) this is not viable as there is no physical interface or device to plug in to, thus virtual environments relying on the VLAN interfaces for connectivity fail.

What I am looking for is a method in which I can A. Create a Tun/Tap Virtual interface, B. Create Virtual interfaces either via Xcode or via the Gui (preferred)  and C. Have the ability to utilize a "deemed up" interface to bridge my virtual machines to - using VMware Fusion.

I am in the IT Network/Security industry and being able to re-create specific components of client environments virtually and prove/disprove theories is a perfect way of selling a solution/proof of concept prior to agreeing to acceptance of a provided solution (quite possibly that of a third party that may/may not make perfect sense to the company contracted to implement)... as one example.

Where I'm at:
=========

1. I have created the Tun interface via a C script and I run that on demand when I wish to use this feature.
2. I have logically created the VLAN interfaces and mapped it to the Tun interface in Xcode.
3. On visual inspection, I can associate the normal networking functions I.E... Subnet Mask, IP address, DNS, WINS and additional information within the menu tree but I <Cannot> view the duplex configuration, mac address information, proxy configuration in the created VLAN menus. I click on "Hardware" and nothing displays, it grays out and that's it.

At this point I'm assuming third party software doesn't know how to relate to the new manual created interfaces because a specific function/attributes haven't been defined else where.

I'm hoping that somebody here in this forum has reinvented this particular case and may know what I need to update in XCode to make this function accordingly. I have very limited knowledge in the Mac OSX operating system but think I have made very good progress in accomplishing my end goal. Based on initial forums I have read, I haven't been able to make the ends of the puzzle meet - I suspect I'm missing something and on the right path but if there is an easier way to accomplish this I'm definitely up for learning something new.

Please note that when I run my script, my ifconfig output shows that the interface is functioning. Further more if I ping the IP address associated with the 'tun0 interface' I get a response. Of note, the "LAB INTERFACE" attribute appears but even though its valid and responding to ICMP at the stack level, it will not display as active in the network menu via the GUI. The systems seem to suggest that I'm 90% way through the manual configuration but missing a vital menu tree that I need to add the GUID of the new interface to as well as define some parameters. I'm suspecting maybe the parameters need to be in the networkinterfaces.plist menu - I've made sense of all but one attribute and that is the IOPathMatch parameter. How would I go about viewing the IOPathMatch value for the tun interface that is a software based NIC? What would I enter as the string for this component to make it function correctly? I'm assuming this is the menu tree I need to modify to match the newly created NIC? Any expert advice would be appreciated - it'll more than likely be less time consuming bring this question to the forum sooner rather than later. I'm sure there will be a few techies out there that would like to make this work as it could be quite beneficial whilst moving around.

Thanks in advance,


Andy


----------



## Satcomer (Apr 30, 2013)

Did you check out System Preferences->Network pane and assign something to the inference you want to use (using the 'Advanced' button in the Network pane target to other settings).

Plus if you looking for a Terminal code then open Terminal and type: 
	
	



```
man networksetup
```


----------



## Andrew Hardy (May 3, 2013)

Hi Satcomer, 

Yes I have - I checked System Preferences --> Network and Advanced. That is where I configure the IP detail. It does not give me the ability to enable VLAN functionality.

Clicking on the "Cog" then clicking "Manage Virtual Interfaces" and then creating a new VLAN and associating it a tag is all well and good but what doesn't appear in the menu is the interface I would like to attach the VLAN to. It seems that the OS does not understand how to attach a virtual interface to a software based NIC (Tap/Tun as an example). Is there a work around to this shy of purchasing a new thunderbolt adapter and using a 50 cm cable to bridge the two together to cheat the OS?


----------



## Satcomer (May 4, 2013)

Then run the Terminal commands: 

1. 
	
	



```
networksetup -listVLANS
```

2. 
	
	



```
networksetup -createVLAN
```

3. 
	
	



```
networksetup -deleteVLAN
```

4. 
	
	



```
networksetup -listdevicesthatsupportVLAN
```

If you could see this in Terminal's networksetup instead of doubting me then you would have saw all this in the networksetup manual I told you about the first time!!!


----------



## Andrew Hardy (May 4, 2013)

No doubting at all - appreciated your response.

I'll investigate using the networksetup options you have pointed out above and see if I can get this working.


Cheers.


----------

