Я могу программно добавлять отдельные правила в брандмауэр Windows (Server 2008 R2), однако я стараюсь избегать нескольких правил для каждого IP-адреса и просто хочу обновить существующее правило RemoteAddresses. Ниже приведен код, который я использую для добавления правил. Я прилагаю все усилия, чтобы выяснить, как обновить существующие правила для удаленных адресов, но безуспешно.
Любая помощь приветствуется!
string ip = "x.x.x.x";
INetFwRule2 firewallRule = (INetFwRule2)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FWRule"));
firewallRule.Name = "Block Bad IP Addresses";
firewallRule.Description = "Block Nasty Incoming Connections from IP Address.";
firewallRule.Action = NET_FW_ACTION_.NET_FW_ACTION_BLOCK;
firewallRule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_IN;
firewallRule.Enabled = true;
firewallRule.InterfaceTypes = "All";
firewallRule.RemoteAddresses = ip;
INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FwPolicy2"));
firewallPolicy.Rules.Add(firewallRule);