List of usage examples for java.net InterfaceAddress toString
public String toString()
From source file:com.hypersocket.client.hosts.HostsFileManager.java
private boolean checkRange(int _8bits, int _16bits, int _24bits) throws SocketException, UnknownHostException { Enumeration<NetworkInterface> e = NetworkInterface.getNetworkInterfaces(); while (e.hasMoreElements()) { NetworkInterface net = e.nextElement(); for (InterfaceAddress i : net.getInterfaceAddresses()) { String range = _8bits + "." + _16bits + "." + _24bits; if (log.isInfoEnabled()) { log.info("Checking interface " + i.toString()); }/* w w w . java2 s.co m*/ if (i.getNetworkPrefixLength() > 0 && i.getNetworkPrefixLength() <= 31) { CIDR c = CIDR4.newCIDR(range + ".0" + "/" + i.getNetworkPrefixLength()); if (c.contains(i.getAddress())) { if (log.isInfoEnabled()) { log.warn(i.getAddress() + " appears to be in our chosen range " + range + ".0" + "/" + i.getNetworkPrefixLength()); } return false; } } } } return true; }
From source file:gov.nrel.bacnet.consumer.BACnet.java
private void initialize(Config config) throws IOException { LinkedBlockingQueue<Runnable> queue = new LinkedBlockingQueue<Runnable>(1000); RejectedExecutionHandler rejectedExec = new RejectedExecHandler(); // schedule polling on single threaded service because local device instance is not threadsafe execSvc = Executors.newFixedThreadPool(config.getNumThreads()); //give databus recording 2 threads to match old code recorderSvc = new ThreadPoolExecutor(20, 20, 120, TimeUnit.SECONDS, queue, rejectedExec); schedSvc = (ScheduledThreadPoolExecutor) Executors.newScheduledThreadPool(config.getNumThreads()); exec = new OurExecutor(schedSvc, execSvc, recorderSvc); String devname = config.getNetworkDevice(); int device_id = config.getDeviceId(); NetworkInterface networkinterface = null; try {/*ww w .j ava 2 s. c om*/ networkinterface = java.net.NetworkInterface.getByName(devname); } catch (Exception ex) { System.out.println("Unable to open device: " + devname); System.exit(-1); } if (networkinterface == null) { System.out.println("Unable to open device: " + devname); System.exit(-1); } List<InterfaceAddress> addresses = networkinterface.getInterfaceAddresses(); String sbroadcast = null; String saddress = null; //InterfaceAddress ifaceaddr = null; for (InterfaceAddress address : addresses) { logger.fine("Evaluating address: " + address.toString()); if (address.getAddress().getAddress().length == 4) { logger.info("Address is ipv4, selecting: " + address.toString()); sbroadcast = address.getBroadcast().toString().substring(1); saddress = address.getAddress().toString().substring(1); //ifaceaddr = address; break; } else { logger.info("Address is not ipv4, not selecting: " + address.toString()); } } logger.info("Binding to: " + saddress + " " + sbroadcast); localDevice = new LocalDevice(device_id, sbroadcast); localDevice.setPort(LocalDevice.DEFAULT_PORT); localDevice.setTimeout(localDevice.getTimeout() * 3); localDevice.setSegTimeout(localDevice.getSegTimeout() * 3); try { localDevice.initialize(); localDevice.setRetries(0); //don't retry as it seems to really be a waste. } catch (IOException e) { e.printStackTrace(); return; } if (config.getSlaveDeviceEnabled()) { slaveDeviceTimer = new Timer(); slaveDeviceTimer.schedule(new gov.nrel.bacnet.SlaveDevice(localDevice, config), 1000, config.getSlaveDeviceUpdateInterval() * 1000); } int counter = 0; String username = config.getDatabusUserName(); String key = config.getDatabusKey(); logger.info("user=" + username + " key=" + key); DatabusSender sender = null; if (config.getDatabusEnabled()) { sender = new DatabusSender(username, key, execSvc, config.getDatabusUrl(), config.getDatabusPort(), true); } logger.info("databus sender: " + sender); writer = new DatabusDataWriter(new DataPointWriter(sender)); logger.info("databus writer" + writer); }