Exemple #1
0
        public void FirewalTcpFilterAccept_BytesAndPackets_NotZero()
        {
            var firewallItem = new FirewallFilter()
            {
                Action  = FirewallFilter.ActionType.Accept, //default value
                Chain   = "input",
                Comment = "test-tcp",
            };

            Connection.Save(firewallItem);
            var tmp = Connection.LoadById <FirewallFilter>(firewallItem.Id); //generate traffic

            System.Threading.Thread.Sleep(1000);

            try
            {
                tmp = Connection.LoadById <FirewallFilter>(firewallItem.Id);
                Assert.AreNotEqual(tmp.Bytes, 0);
                Assert.AreNotEqual(tmp.Packets, 0);
            }
            finally
            {
                Connection.Delete(firewallItem);
            }
        }
Exemple #2
0
        private static void AddFirewalFilter(ITikConnection connection)
        {
            var firewallFilter = new FirewallFilter()
            {
                Chain  = FirewallFilter.ChainType.Forward,
                Action = FirewallFilter.ActionType.Accept,
            };

            connection.Save(firewallFilter);

            var loaded = connection.LoadAll <FirewallFilter>().First();

            loaded.Comment = "TEST";
            connection.Save(loaded);
        }
Exemple #3
0
        public void FirewalTcpFilterAccept_Issue51_WillNotFail()
        {
            var firewallItem = new FirewallFilter()
            {
                Action     = FirewallFilter.ActionType.Accept, //default value
                Chain      = "forward",
                Comment    = "test-tcp",
                DstAddress = "8.8.8.8",
                DstPort    = "53",
                Protocol   = "tcp",
                SrcAddress = "1.1.1.1",
                SrcPort    = "22",
            };

            Connection.Save(firewallItem);

            Connection.Delete(firewallItem);
        }
Exemple #4
0
        public static bool Mikrotik()

        {
            using (ITikConnection connection = ConnectionFactory.CreateConnection(TikConnectionType.Api)) // Use TikConnectionType.Api for mikrotikversion prior v6.45
            {
                connection.Open("10.19.20.1", "OrionAdmin", "Frank1e2015");
                ITikCommand cmd      = connection.CreateCommand("/system/identity/print");
                var         identity = cmd.ExecuteScalar();
                Console.WriteLine("Identity: {0}", identity);
                var logs = connection.LoadList <Log>();
                foreach (Log log in logs)
                {
                    Console.WriteLine("{0}[{1}]: {2}", log.Time, log.Topics, log.Message);
                }
                var firewallFilter = new FirewallFilter()
                {
                    Chain  = FirewallFilter.ChainType.Forward,
                    Action = FirewallFilter.ActionType.Accept,
                };
                connection.Save(firewallFilter);
                ITikCommand torchCmd = connection.CreateCommand("/tool/torch",
                                                                connection.CreateParameter("interface", "ether1"),
                                                                connection.CreateParameter("port", "any"),
                                                                connection.CreateParameter("src-address", "0.0.0.0/0"),
                                                                connection.CreateParameter("dst-address", "0.0.0.0/0"));

                torchCmd.ExecuteAsync(response =>
                {
                    Console.WriteLine("Row: " + response.GetResponseField("tx"));
                });
                Console.WriteLine("Press ENTER");
                Console.ReadLine();
                torchCmd.Cancel();
                return(true);
            }
        }