For this and possible future extension I think it will be better if you have list of options that cannot be set if network is managed. so having something like:
```
const list<string> UNMANAGED_OPTIONS = [ NAMESERVER_1, NAMESERVER_2, NAMESERVER_3 ];

and then in cycle
if ( contains(UNMANAGED_OPTIONS, option) && NetworkService::IsManaged() )
```
so if you add more options, you known how to prevent easy option with cannot be set with managed network. If almost nothing can be set, then maybe make sense to create opposite list.