#  Basic Switched network
#
#  --------------      --------------      --------------
#  |  node_a  |------|  switch_1  |------|  node_b  |
#  --------------      --------------      --------------
#
io_settings:
  save_step_metadata: false
  save_pcap_logs: true
  save_sys_logs: true
  sys_log_level: WARNING
  agent_log_level: INFO
  save_agent_logs: true
  write_agent_log_to_terminal: True


game:
  max_episode_length: 256
  ports:
  - ARP
  - DNS
  - HTTP
  - POSTGRES_SERVER
  protocols:
  - ICMP
  - TCP
  - UDP

simulation:
  network:
    nodes:

    - type: switch
      hostname: switch_1
      num_ports: 8

    - hostname: node_a
      type: computer
      ip_address: 192.168.10.21
      subnet_mask: 255.255.255.0
      default_gateway: 192.168.10.1
      applications:
      - type: C2Server
        options:
          listen_on_ports:
            - 80
            - 53
            - 21
    - hostname: node_b
      type: computer
      ip_address: 192.168.10.22
      subnet_mask: 255.255.255.0
      default_gateway: 192.168.10.1
      applications:
      - type: C2Beacon
        options:
          c2_server_ip_address: 192.168.10.21
          keep_alive_frequency: 5
          masquerade_protocol: TCP
          masquerade_port: HTTP
          listen_on_ports:
            - 80
            - 53
            - 21

    links:
    - endpoint_a_hostname: switch_1
      endpoint_a_port: 1
      endpoint_b_hostname: node_a
      endpoint_b_port: 1
      bandwidth: 200
    - endpoint_a_hostname: switch_1
      endpoint_a_port: 2
      endpoint_b_hostname: node_b
      endpoint_b_port: 1
      bandwidth: 200
