public void loadCfg(String fileName) throws Exception {
		// load config
		synchronized(hostCache) {
			Properties p = new Properties();
			p.load(new FileInputStream(fileName));
			for (Object k: p.keySet()) {
				String key = (String)k;
				String value = p.getProperty(key);
				// build host record from value
				HostRecord record = new HostRecord(key);
				String ips[] = value.substring(1, value.length()-1).split(", ");
				for (String ip: ips) {
					String s[] = ip.split("\\.");
					if (s.length == 4) {
						byte parts[] = new byte[4];
						for (int i = 0; i < s.length; i++)
							parts[i] = (byte) Integer.parseInt(s[i]);
						record.addIpAddress(new IPAddress(parts));
					}
				}
				hostCache.addHost(record);
			}
		}
	}