public bool HasConfiguration() { _serviceModel = LoadModel(); var netif = _serviceModel.Interfaces; return(netif.Any(_ => _.Status == NetworkInterfaceStatus.Up)); }
public NetworkConfiguration() { _networkInterfaces = GetAllNames(); NetworkInterfaces = GetAllNames(); InterfacePhysical = GetPhysicalInterfaces(); InterfaceVirtual = GetVirtualInterfaces(); InterfaceBond = GetBondInterfaces(); InterfaceBridge = GetBridgeInterfaces(); InterfacePhysicalModel = GetPhysicalInterfacesModel(); InterfaceVirtualModel = GetVirtualInterfacesModel(); InterfaceBondModel = GetBondInterfacesModel(); InterfaceBridgeModel = GetBridgeInterfacesModel(); Directory.CreateDirectory(Parameter.AntdCfgServices); if (!File.Exists(_cfgFile)) { _serviceModel = new NetworkConfigurationModel(); } else { try { var text = File.ReadAllText(_cfgFile); var obj = JsonConvert.DeserializeObject <NetworkConfigurationModel>(text); _serviceModel = obj; } catch (Exception) { _serviceModel = new NetworkConfigurationModel(); } } }
public void ApplyInterfaceSetting() { _serviceModel = LoadModel(); var netifs = _serviceModel.Interfaces; foreach (var netif in netifs) { ApplyInterfaceSetting(netif); } }
public static void Save(NetworkConfigurationModel model) { var text = JsonConvert.SerializeObject(model, Formatting.Indented); if (File.Exists(CfgFile)) { File.Copy(CfgFile, CfgFileBackup, true); } File.WriteAllText(CfgFile, text); ConsoleLogger.Log("[network] configuration saved"); }
public void RemoveInterfaceSetting(string guid) { _serviceModel = LoadModel(); var netif = _serviceModel.Interfaces; var model = netif.First(_ => _.Guid == guid); if (model == null) { return; } netif.Remove(model); _serviceModel.Interfaces = netif; Save(_serviceModel); }
public void AddInterfaceSetting(NetworkInterfaceConfigurationModel model) { _serviceModel = LoadModel(); var netif = _serviceModel.Interfaces; var check = netif.Where(_ => _.Interface == model.Interface).ToList(); if (check.Any()) { check.ForEach(_ => RemoveInterfaceSetting(_.Guid)); } netif.Add(model); _serviceModel.Interfaces = netif; Save(_serviceModel); }
public void ApplyDefaultInterfaceSetting() { _serviceModel = LoadModel(); var interfaces = new List <string>(); interfaces.AddRange(InterfacePhysical); interfaces.AddRange(InterfaceBridge); var launcher = new CommandLauncher(); foreach (var netIf in interfaces) { launcher.Launch("ip4-set-mtu", new Dictionary <string, string> { { "$net_if", netIf }, { "$mtu", _serviceModel.DefaultMtu } }); launcher.Launch("ip4-set-txqueuelen", new Dictionary <string, string> { { "$net_if", netIf }, { "$txqueuelen", _serviceModel.DefaultTxqueuelen } }); } }
private IEnumerable <NetworkInterfaceConfigurationModel> GetBridgeInterfacesModel() { _serviceModel = LoadModel(); var netifs = _serviceModel.Interfaces; var list = new List <NetworkInterfaceConfigurationModel>(); foreach (var pi in InterfaceBridge) { if (netifs.Any(_ => _.Interface == pi)) { list.Add(netifs.FirstOrDefault(_ => _.Interface == pi)); } else { list.Add(new NetworkInterfaceConfigurationModel { Interface = pi }); } } return(list); }