def test_ipv4_0_aliases(self): """Test setting public IPv4 for FreeBSD networking""" interfaces = {"xn0":{"ip4s":[{"address":"10.127.31.38", "netmask":"255.255.255.0"}], "ip6s":[], "routes":[], "mac":"40:40:8f:1e:a0:0a", "gateway4":"10.127.31.1", "dns":["10.6.24.4", "10.6.24.5"]}, "xn1":{"ip4s":[{"address":"192.168.2.30", "netmask":"255.255.224.0"}], "ip6s":[], "routes":[{"network":"10.176.0.0", "netmask":"255.248.0.0", "gateway":"10.177.96.1"}, {"network":"10.191.192.0", "netmask":"255.255.192.0", "gateway":"10.177.96.1"}], "mac":"40:40:a2:87:6e:26"}} inputdata = '\n'.join([ 'hostname="oldhostname"', 'check_quotas="NO"', 'ipv6_enable="YES"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'ifconfig_re0="DHCP"', 'ifconfig_rl0="10.0.1.1 netmask 255.255.255.0 up"', 'ifconfig_rl0_alias0="10.0.1.2 netmask 255.255.255.255"', 'dhcpd_enable="YES"', 'dhcpd_flags="-q"', 'dhcpd_conf="/usr/local/etc/dhcpd.conf"', '']) expecteddata = '\n'.join([ 'check_quotas="NO"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'dhcpd_enable="NO"', 'hostname=myhostname', 'ifconfig_xn0="10.127.31.38 netmask 255.255.255.0 up"', 'ifconfig_xn1="192.168.2.30 netmask 255.255.224.0 up"', 'route_lan0="-net 10.176.0.0 -netmask 255.248.0.0 10.177.96.1"', 'route_lan1="-net 10.191.192.0 -netmask 255.255.192.0 ' \ '10.177.96.1"', 'static_routes="lan0,lan1"', 'defaultrouter="10.127.31.1"', '']) filedata = network._create_rcconf_file(StringIO(inputdata), interfaces, 'myhostname') self.assertEqual(filedata, expecteddata)
def test_ipv4_0_aliases(self): """Test setting public IPv4 for FreeBSD networking""" interfaces = { "xn0": { "label": "public", "ip4s": [{ "address": "10.127.31.38", "netmask": "255.255.255.0" }], "ip6s": [], "routes": [], "mac": "40:40:8f:1e:a0:0a", "gateway4": "10.127.31.1", "dns": ["10.6.24.4", "10.6.24.5"] }, "xn1": { "label": "private", "ip4s": [{ "address": "192.168.2.30", "netmask": "255.255.224.0" }], "ip6s": [], "routes": [{ "network": "10.176.0.0", "netmask": "255.248.0.0", "gateway": "10.177.96.1" }, { "network": "10.191.192.0", "netmask": "255.255.192.0", "gateway": "10.177.96.1" }], "mac": "40:40:a2:87:6e:26" } } input = [ 'hostname="oldhostname"', 'check_quotas="NO"', 'ipv6_enable="YES"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'ifconfig_re0="DHCP"', 'ifconfig_rl0="10.0.1.1 netmask 255.255.255.0 up"', 'ifconfig_rl0_alias0="10.0.1.2 netmask 255.255.255.255"', 'dhcpd_enable="YES"', 'dhcpd_flags="-q"', 'dhcpd_conf="/usr/local/etc/dhcpd.conf"', '' ] filedata = network._create_rcconf_file(StringIO('\n'.join(input)), interfaces, 'myhostname') generated = filedata.rstrip().split('\n') expected = [ 'check_quotas="NO"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'dhcpd_enable="NO"', 'hostname=myhostname', '# Label public', 'ifconfig_xn0="10.127.31.38 netmask 255.255.255.0 up"', '# Label private', 'ifconfig_xn1="192.168.2.30 netmask 255.255.224.0 up"', 'route_lan0="-net 10.176.0.0 -netmask 255.248.0.0 10.177.96.1"', 'route_lan1="-net 10.191.192.0 -netmask 255.255.192.0 ' \ '10.177.96.1"', 'static_routes="lan0,lan1"', 'defaultrouter="10.127.31.1"', ] self.assertSequenceEqual(generated, expected)
def test_ipv4_2_aliases(self): """Test setting public IPv4 with an IP alias""" interfaces = { "xn0": { "ip4s": [{ "address": "10.127.31.38", "netmask": "255.255.255.0" }, { "address": "10.127.32.38", "netmask": "255.255.255.0" }, { "address": "10.127.32.39", "netmask": "255.255.255.255" }], "ip6s": [], "routes": [], "mac": "40:40:8f:1e:a0:0a", "gateway4": "10.127.31.1", "dns": ["10.6.24.4", "10.6.24.5"] }, "xn1": { "ip4s": [{ "address": "192.168.2.30", "netmask": "255.255.224.0" }], "ip6s": [], "routes": [{ "network": "10.176.0.0", "netmask": "255.248.0.0", "gateway": "10.177.96.1" }, { "network": "10.191.192.0", "netmask": "255.255.192.0", "gateway": "10.177.96.1" }], "mac": "40:40:a2:87:6e:26" } } inputdata = '\n'.join([ 'hostname="oldhostname"', 'check_quotas="NO"', 'ipv6_enable="YES"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'ifconfig_re0="DHCP"', 'ifconfig_rl0="10.0.1.1 netmask 255.255.255.0 up"', 'ifconfig_rl0_alias0="10.0.1.2 netmask 255.255.255.255"', 'dhcpd_enable="YES"', 'dhcpd_flags="-q"', 'dhcpd_conf="/usr/local/etc/dhcpd.conf"', '' ]) expecteddata = '\n'.join([ 'check_quotas="NO"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'dhcpd_enable="NO"', 'hostname=myhostname', 'ifconfig_xn0="10.127.31.38 netmask 255.255.255.0 up"', 'ifconfig_xn0_alias0="10.127.32.38 netmask 255.255.255.0"', 'ifconfig_xn0_alias1="10.127.32.39 netmask 255.255.255.255"', 'ifconfig_xn1="192.168.2.30 netmask 255.255.224.0 up"', 'route_lan0="-net 10.176.0.0 -netmask 255.248.0.0 10.177.96.1"', 'route_lan1="-net 10.191.192.0 -netmask 255.255.192.0 ' \ '10.177.96.1"', 'static_routes="lan0,lan1"', 'defaultrouter="10.127.31.1"', '']) filedata = network._create_rcconf_file(StringIO(inputdata), interfaces, 'myhostname') self.assertEqual(filedata, expecteddata)
def test_ipv4_2_aliases(self): """Test setting public IPv4 with an IP alias""" interfaces = {"xn0":{"label": "public", "ip4s":[{"address":"10.127.31.38", "netmask":"255.255.255.0"}, {"address":"10.127.32.38", "netmask":"255.255.255.0"}, {"address":"10.127.32.39", "netmask":"255.255.255.255"}], "ip6s":[], "routes":[], "mac":"40:40:8f:1e:a0:0a", "gateway4":"10.127.31.1", "dns":["10.6.24.4", "10.6.24.5"]}, "xn1":{"label": "private", "ip4s":[{"address":"192.168.2.30", "netmask":"255.255.224.0"}], "ip6s":[], "routes":[{"network":"10.176.0.0", "netmask":"255.248.0.0", "gateway":"10.177.96.1"}, {"network":"10.191.192.0", "netmask":"255.255.192.0", "gateway":"10.177.96.1"}], "mac":"40:40:a2:87:6e:26"}} input = [ 'hostname="oldhostname"', 'check_quotas="NO"', 'ipv6_enable="YES"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'ifconfig_re0="DHCP"', 'ifconfig_rl0="10.0.1.1 netmask 255.255.255.0 up"', 'ifconfig_rl0_alias0="10.0.1.2 netmask 255.255.255.255"', 'dhcpd_enable="YES"', 'dhcpd_flags="-q"', 'dhcpd_conf="/usr/local/etc/dhcpd.conf"', '' ] filedata = network._create_rcconf_file(StringIO('\n'.join(input)), interfaces, 'myhostname') generated = filedata.rstrip().split('\n') expected = [ 'check_quotas="NO"', 'pf_enable="YES"', 'pflog_enable="YES"', 'sshd_enable="YES"', 'dhcpd_enable="NO"', 'hostname=myhostname', '# Label public', 'ifconfig_xn0="10.127.31.38 netmask 255.255.255.0 up"', 'ifconfig_xn0_alias0="10.127.32.38 netmask 255.255.255.0"', 'ifconfig_xn0_alias1="10.127.32.39 netmask 255.255.255.255"', '# Label private', 'ifconfig_xn1="192.168.2.30 netmask 255.255.224.0 up"', 'route_lan0="-net 10.176.0.0 -netmask 255.248.0.0 10.177.96.1"', 'route_lan1="-net 10.191.192.0 -netmask 255.255.192.0 ' \ '10.177.96.1"', 'static_routes="lan0 lan1"', 'defaultrouter="10.127.31.1"', ] self.assertSequenceEqual(generated, expected)