Communication device, and computer program for communication device
The communication device improves user convenience by allowing users to distinguish and manage communication permissions for devices within and outside a sub-network through advanced identification and display features, enhancing filtering efficiency.
Patent Information
- Application Number
- JP2023222652
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-28
- Publication Date
- 2025-07-10
AI Technical Summary
Existing communication systems lack user-friendly methods for distinguishing and managing communication permissions between devices within and outside a specific sub-network, leading to inconvenience in setting up filtering processes.
A communication device equipped with a memory to store network information, display units for selection screens, and specifying units to identify and display first and second-type external devices, allowing users to selectively permit or deny communication based on network type.
Enhances user convenience by enabling clear identification and management of communication permissions for devices within and outside a sub-network, improving the filtering process efficiency.
Smart Images

Figure 2025104682000001_ABST
Abstract
Description
Technical Field
[0001] This specification discloses a technique for controlling communication from an external device to a communication device.
Background Art
[0002] Patent Document 1 discloses a home gateway. The home gateway has a firewall function and allows only packets including the IP addresses of pre-authorized devices to pass through. When the home gateway detects a packet having an IP address of an unauthorized device, it asks the user whether to authorize the device. Then, when the user desires authorization, the home gateway allows the packets including the IP address of the device to pass through.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] This specification discloses a technique for improving user convenience in a situation where a filtering process for permitting or not permitting communication between a communication device and an external device is executed.
Means for Solving the Problems
[0005] This specification discloses a communication device. When the communication device belongs to a specific sub-network among a plurality of sub-networks constituting a local area network, the communication device includes a memory for storing network information capable of specifying the network address of the specific sub-network, one or more first-type external devices belonging to the specific sub-network, and one or more second-type external devices belonging to a sub-network different from the specific sub-network among the plurality of sub-networks. A first display control unit for causing a display unit to display a first selection screen for selecting which of them should be searched, and when it is selected by the user in the first selection screen that the one or more first-type external devices should be searched, a first specifying unit for specifying the one or more first-type external devices by using the network information in the memory and transmitting a search signal to the outside, a second display control unit for causing the display unit to display a first search result screen indicating the one or more first-type external devices when the one or more first-type external devices are specified, and when it is selected by the user in the first selection screen that the one or more second-type external devices should be searched, a second specifying unit for specifying the one or more second-type external devices by transmitting a search signal to the outside, and a third display control unit for causing the display unit to display a second search result screen indicating the one or more second-type external devices when the one or more second-type external devices are specified. When a specific external device is selected in the first search result screen or the second search result screen, a filter processing execution unit for executing a filter process regarding whether to permit communication with the specific external device may be provided.
[0006] According to the above configuration, when it is selected by the user that the communication device should search for the first type of external device on the first selection screen, the communication device identifies one or more first type of external devices, and causes the display unit to display a first search result screen showing the identified one or more first type of external devices. Also, when it is selected by the user that the communication device should search for the second type of external device on the first selection screen, the communication device identifies one or more second type of external devices, and causes the display unit to display a second search result screen showing the identified one or more second type of external devices. For this purpose, the user can select a specific external device to be the target of the filtering process after recognizing the first type of external device or the second type of external device on the first search result screen or the second search result screen. Therefore, the convenience for the user is improved.
[0007] In this specification, further, the following communication device is also disclosed. The communication device includes: a memory that stores network information capable of identifying the network address of a specific subnet when the communication device belongs to the specific subnet among a plurality of subnets constituting a local area network; a third identifying unit that identifies a plurality of external devices belonging to either the specific subnet or one or more other subnets different from the specific subnet among the plurality of subnets by transmitting a search signal externally; a fourth identifying unit that uses the network information in the memory to identify one or more first type of external devices belonging to the specific subnet and one or more second type of external devices belonging to the one or more other subnets among the plurality of external devices; a display control unit that causes the display unit to display a search result screen showing the one or more first type of external devices and the one or more second type of external devices in a distinguishable manner; and a filter processing execution unit that executes a filter process regarding whether to permit communication with the specific device information when a specific external device is selected on the search result screen.
[0008] According to the above configuration, the communication device identifies one or more first-type external devices and one or more second-type external devices from among a plurality of external devices belonging to a specific subnetwork and any one or more other subnets of the plurality of subnets, and causes the display unit to display a search result screen indicating them in a distinguishable manner. For this purpose, the user can select a specific external device to be the target of the filtering process after distinguishing and recognizing the first-type external devices and the second-type external devices on the search result screen. Therefore, the convenience for the user is improved.
[0009] A computer program for realizing the above communication device, a computer-readable storage medium storing the computer program, and a method executed by the above communication device are also novel and useful.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Modes for Carrying Out the Invention
[0011] (First Embodiment) (Configuration of Communication System 2; FIG. 1) As shown in FIG. 1, the communication system 2 includes a network 5 composed of a plurality of sub-networks 6 and 8. The network 5 is formed in a facility such as a company or a university. For example, the sub-network 6 is formed in a certain department of a company, and the sub-network 8 is formed in another department of the company. The network 5 includes a router 60 for each device in the network 5 to perform communication via the Internet 4. The sub-network 6 includes a switching hub 70, a printer 10, and a plurality of terminals 100 and 200. The sub-network 8 includes a switching hub 80, a printer 300, and a plurality of terminals 400 and 500.
[0012] (Configuration of Router 60) The router 60 not only has a function of relaying communication via the Internet 4, but also has a Dynamic Host Configuration Protocol (DHCP) server function and a Domain Name System (DNS) server function. The DHCP server function is a function of assigning IP addresses to each device belonging to the network 5. For example, when the router 60 receives an IP address assignment request from a certain device in the network 5, it selects one IP address from within a predetermined range of IP addresses, and transmits the selected IP address and a predetermined subnet mask to the certain device. Here, the IP address assigned by the router 60 is variable (i.e., a dynamic IP address). In a modified example, a DHCP server different from the router 60 may be installed in the network 5.
[0013] The DNS server function is a function used for so-called name resolution. For each of a plurality of devices belonging to the network 5, the router 60 stores in association the device name of the device and the IP address of the device (for example, the IP address assigned by the DHCP server function of the router 60). For example, assume a situation where the device name "PC100" of the terminal 100 and the IP address of the terminal 100 are registered in the router 60 in association. In this case, when the router 60 receives, for example, an inquiry request including the device name "PC100" of the terminal 100 from the printer 10, the router 60 transmits an inquiry response including the IP address associated with the device name "PC100" to the printer 10. Thereby, the printer 10 can know the IP address of the terminal 100. That is, the printer 10 can execute name resolution. In a modified example, a DNS server different from the router 60 may be installed in the network 5.
[0014] The network address of the subnet 6 is "192.168.1". As shown in "SM (abbreviation for Subnet Mask)" in FIG. 1, the same subnet mask "255.255.255.0" is assigned to each of the devices 10, 100, 200 belonging to the subnet 6. The IP address "192.168.1.1" is assigned to the printer 10. The printer 10 has the device name "PR10". The IP address "192.168.1.2" is assigned to the terminal 100. The terminal 100 has the device name "PC100". The IP address "192.168.1.3" is assigned to the terminal 200. The terminal 200 has the device name "PC200". Each of the devices 10, 100, 200 is connected to the router 60 via the switching hub 70.
[0015] The network address of subnetwork 8 is "192.168.2". Each of the devices 300, 400, 500 belonging to subnetwork 6 is assigned the same subnet mask "255.255.255.0". The printer 300 is assigned the IP address "192.168.2.1". The printer 300 has the device name "PR300". The terminal 400 is assigned the IP address "192.168.2.2". The terminal 400 has the device name "PC400". The terminal 500 is assigned the IP address "192.168.2.3". The terminal 500 has the device name "PC500". Each of the devices 300, 400, 500 is connected to the router 60 via the switching hub 80.
[0016] (Configuration of Printer 10; Figure 2) The printer 10 is a peripheral device capable of executing a printing function (for example, a peripheral device of terminals 100, 200). The printer 10 includes an operation unit 12, a display unit 14, a communication interface 16, a printing execution unit 18, and a control unit 30. Hereinafter, the interface will be referred to as "I / F".
[0017] The operation unit 12 includes a plurality of keys. The user can input various instructions to the printer 10 by operating the operation unit 12. The display unit 14 is a display for displaying various information. The display unit 14 also functions as a so-called touch panel (i.e., an operation unit). The communication I / F 16 is connected to the switching hub 70. The communication I / F 16 may be a wireless I / F or a wired I / F. The printing execution unit 18 includes a printing mechanism such as an inkjet method or a laser method.
[0018] The control unit 30 includes a CPU 32 and a memory 34. The memory 34 includes a main storage device and an auxiliary storage device (not shown). The CPU 32 executes various processes according to a program 40 stored in the auxiliary storage device of the memory 34. Specifically, the CPU 32 loads the program 40 from the auxiliary storage device to the main storage device and executes the program 40 to execute the various processes described above. The main storage device is, for example, a RAM and a cache memory. The auxiliary storage device may be, for example, a flash memory, an SSD (abbreviation for Solid State Drive), or a ROM, or a combination thereof.
[0019] The memory 34 further stores the IP address "192.168.1.1" of the printer 10 itself, the subnet mask "255.255.255.0" of the printer 10 itself, and the default gateway address "192.168.1.0". The default gateway address is the IP address of the router 60.
[0020] The memory 34 further stores a template table 42. The template table 42 can store a plurality of templates. In each template, a template number (e.g., "1", "2"), a template name (e.g., "Authorized Device 1", "Authorized Device 2"), status information (e.g., "Valid"), filter information (e.g., "Allow"), an IP address (e.g., "192.168.1.2", "192.168.2.2"), a device name (e.g., "PC100", "PC400"), and update information (e.g., "Required") are associated.
[0021] The template number is information for identifying a template. Although it is just an example, the template number may be an integer from 1 to 16. The template name is the name of the template specified by the user. The status information indicates either "valid", which means using the template, or "invalid", which means not using the template. The filter information is information regarding whether to permit communication between the device identified by the device information (i.e., IP address and device name) included in the template and the printer 10. The filter information indicates either "Allow", which means permitting communication, or "Deny", which means not permitting communication. The update information indicates either "required", which means updating the IP address included in the template, or "not required", which means not updating the said IP address.
[0022] As described above, the router 60 has a DHCP server function. Therefore, dynamic IP addresses are assigned to each of the devices 10, 100, 200, etc. connected to the router 60. And each IP address of each device may change, for example, at the timing when the device is started up. In order to cope with such an event, the update information "required" is stored. For example, when the IP address of a certain device is a static IP address instead of a dynamic IP address, "not required" may be stored as the update information included in the template for the said device.
[0023] Memory 34 further stores a DNS cache table 44. In the DNS cache table 44, an IP address (such as "192.168.1.2", etc.) and a device name (such as "PC100", etc.) are stored in association with each other. Each time the router 60 having a DNS server function assigns an IP address to a device, it stores the IP address and the device name of the device in association with each other. The printer 10 transmits a request signal for requesting transmission of each stored IP address to the router 60 and receives a plurality of pieces of combined information from the router 60. Each piece of combined information includes the IP address assigned by the router 60 and the device name of the device to which the IP address is assigned. The DNS cache table 44 is a table for storing (i.e., caching) a plurality of pieces of combined information received from the router 60.
[0024] Memory 34 further stores a DNS cache flag. The DNS cache flag indicates either "ON", which indicates that the template table 42 has not yet been updated using the latest DNS cache table 44, or "OFF", which indicates that the template table 42 has been updated using the latest DNS cache table 44. For example, when the printer 10 receives a plurality of pieces of combined information from the router 60, it updates the DNS cache table 44. In this case, the printer 10 switches the DNS cache flag from "OFF" to "ON". Then, when the printer 10 updates the template table 42 using the latest DNS cache table 44 in the process described later, it switches the DNS cache flag from "ON" to "OFF".
[0025] (Configuration of Terminal 100) The terminal 100 is, for example, an administrator terminal used by an administrator of each device belonging to the network 5. The terminal 100 is, for example, a desktop PC, a notebook PC, a tablet PC, a smartphone, a PDA, or the like. The terminal 100 includes an operation unit 112, a display unit 114, a communication I / F 116, and a control unit 130.
[0026] The operation unit 112 has a plurality of keys. The user can input various instructions to the terminal 100 by operating the operation unit 112. The display unit 114 is a display for displaying various information. The display unit 114 may function as a so-called touch panel (i.e., an operation unit). The communication I / F 116 is connected to the switching hub 70. The communication I / F 16 may be a wireless I / F or a wired I / F.
[0027] The control unit 130 includes a CPU 132 and a memory 134. The memory 134 includes a main storage device and an auxiliary storage device (not shown). The CPU 132 executes various processes according to a program 140 stored in the auxiliary storage device of the memory 134. Specifically, the CPU 132 loads the program 140 from the auxiliary storage device to the main storage device and executes the program 140 to execute the above various processes. The main storage device is, for example, a RAM and a cache memory. The auxiliary storage device may be, for example, a flash memory, an SSD, or a ROM, or a combination thereof. The memory 134 further stores the IP address "192.168.1.2" of the terminal 100 itself and the subnet mask "255.255.255.0" of the terminal 100 itself.
[0028] (Configuration of Other Devices 200, 300, 400, 500) Each of the terminals 200, 400, 500 is used by a general user different from the administrator. Each of the terminals 200, 400, 500 has the same configuration as the terminal 100 except that it stores its own IP address. The printer 300 has the same configuration as the printer 10 except that it stores its own IP address.
[0029] (Specific Processes; Figures 3 to 5) Referring to FIGS. 3 to 5, a process for storing a template in the template table 42 of the printer 10 will be described. Hereinafter, from the viewpoint of ease of understanding, when describing the processes executed by the CPU 32 of the printer 10 and the CPU 132 of the terminal 100 according to the programs 40 and 140, the description will be based on the printer 10 and the terminal 100 rather than the respective CPUs 32 and 132. Also, all the following communications executed by the printer 10 and the terminal 100 are executed via the communication I / Fs 16 and 116. Therefore, hereinafter, when describing the processes related to communication, the description of "via the communication I / F 16 (or 116)" will be omitted. In the initial state of FIG. 3, no information is yet stored in the template table 42 of the printer 10. Note that in FIG. 3, some of the communications and processes for displaying the respective screens of FIGS. 4 and 5 are omitted from the illustration.
[0030] The terminal 100 receives, at T10, an access instruction from the user including an input operation of the IP address of the web server in the printer 10. In this case, the terminal 100 transmits, at T12, an access request including the IP address as the destination address to the printer 10.
[0031] The printer 10 receives, at T12, the access request from the terminal 100. The printer 10 can function as a web server and transmit screen data representing various web pages to the terminal 100. First, the printer 10 transmits, at T14, home screen data representing the home screen to the terminal 100.
[0032] At T14, the terminal 100 receives home screen data from the printer 10. At T16, the printer 10 displays a home screen (not shown). The home screen includes a plurality of buttons for performing various settings related to the printer 10. The plurality of buttons includes a button indicating a firewall setting. The firewall setting is a setting related to the communication of the printer 10, and more specifically, a setting regarding which devices' communication to permit or deny. When the terminal 100 receives a selection of the button from the user at T18, at T20, it sends a firewall setting request to the printer 10.
[0033] When the printer 10 receives a firewall setting request from the terminal 100 at T20, at T22, it sends firewall setting screen data representing a firewall setting screen to the terminal 100.
[0034] When the terminal 100 receives the firewall setting screen data from the printer 10 at T22, at T24, it displays a firewall setting screen SC1 (see FIG. 4). Hereinafter, the subsequent processing will be described with reference to FIGS. 4 and 5 as well.
[0035] As shown in FIG. 4, the firewall setting screen SC1 includes an area for specifying the default policy regarding the communication of the printer 10. This area includes a "Deny" button that means to reject the communication of the printer 10 in principle, and an "Allow" button that means to permit the communication of the printer 10 in principle. For example, when the "Deny" button is selected by the user, that is, when "Deny" is specified as the default policy of the printer 10, the printer 10 rejects the communication with any device in principle. However, the printer 10 can exceptionally permit the communication with the devices specified in the template described later. That is, in this case, the template functions as a white list indicating the devices that can communicate. Also, for example, when the "Allow" button is selected by the user, that is, when "Allow" is specified as the default policy of the printer 10, the printer 10 permits the communication with any device in principle. However, the printer 10 can exceptionally reject the communication with the devices specified in the template described later. That is, in this case, the template functions as a black list indicating the devices that cannot communicate. The firewall setting screen SC1 further includes a template creation button B1.
[0036] When the terminal 100 receives, from the user at T30, the selection of the default policy "Deny" and the selection of the template creation button B1, the terminal 100 transmits a template creation request (not shown in FIG. 3) to the printer 10.
[0037] When the printer 10 receives the template creation request from the terminal 100, the printer 10 transmits template list screen data (not shown in FIG. 3) representing the template list screen SC2 to the terminal 100.
[0038] When the terminal 100 receives the template list screen data from the printer 10, it displays the template list screen SC2. The template list screen SC2 is a screen for selecting one template from a plurality of templates. The template list screen SC2 includes buttons B2 to B4 corresponding to each template. The template list screen SC2 further includes radio buttons A2 to A4 corresponding to the buttons B2 to B4. When the radio button A2 or the like is in the selected state, the template corresponding to the radio button is valid, and when the radio button A2 or the like is in the unselected state, the template corresponding to the radio button is invalid. Note that since no rules have been specified for each template shown on the template list screen SC2 at the current stage, the character string "not set" is arranged on the right side of each of the buttons B2 to B4. The template list screen SC2 further includes a home button B5 for returning to the firewall setting screen SC1.
[0039] In T32, when the terminal 100 receives the selection of the button B2 from the user, it transmits a template creation request (not shown in FIG. 3) including the template number "1" corresponding to the button B2 to the printer 10.
[0040] When the printer 10 receives the template creation setting request from the terminal 100, it transmits template setting screen data (not shown in FIG. 3) representing the template setting screen SC3 to the terminal 100.
[0041] When the terminal 100 receives the template setting screen data from the printer 10, it displays the template setting screen SC3. The template setting screen SC3 includes a template number "1", a template name input area R1, a radio button A5 for selecting an IP address search method, a network address input area R2, and a search start button B6. The template name input area R1 is an area for receiving an input of the name of the template from the user. The radio button A5 is a button for selecting whether to search for the IP addresses of each device within the sub-network 6 to which the printer 10 belongs ("within sub-network" button), or whether to search for the IP addresses of each device outside the sub-network 6 to which the printer 10 belongs ("outside sub-network" button).
[0042] At T34, the terminal 100 receives from the user an input of the template name "Authorized Device 1", a selection of the "within sub-network" button, and a selection of the search start button B6. In this case, as shown in Figure 3, at T36, the terminal 100 sends an in-sub-network search instruction to the printer 10. The in-sub-network search instruction includes the template name "Authorized Device 1" and information indicating that the "within sub-network" button has been selected.
[0043] When the printer 10 receives a subnet search instruction from the terminal 100 at T36, it masks its own IP address "192.168.1.1" with its own subnet mask "255.255.255.0" to identify the network address "192.168.1" of the subnet 6 to which the printer 10 belongs. Then, at T38, the printer 10 sends a broadcast search signal that includes the broadcast address "192.168.1.255" of the identified network address "192.168.1" as the destination address and includes the IP address "192.168.1.1" as the source address. As a result, the search signal is received by each device 100, 200 within the subnet 6. In a modified example, at T38, the printer 10 may send the search signal by specifying a value of the lower 8 bits (i.e., the host address) than the network address "192.168.1" as the destination IP address. That is, in the above example, the IP addresses from "192.168.1.0" to "192.168.1.254" are specified.
[0044] When the terminal 100 receives the search signal from the printer 10 at T38, it sends a response signal to the printer 10 at T40. The response signal includes the IP address "192.168.1.1" of the printer 10 as the destination address and includes the IP address "192.168.1.2" of the terminal 100 itself as the source address. The response signal further includes the device name "PC100" of the terminal 100.
[0045] When the terminal 200 receives the search signal from the printer 10 at T38, it sends a response signal to the printer 10 at T42. The response signal includes the IP address "192.168.1.1" of the printer 10 as the destination address and includes the IP address "192.168.1.3" of the terminal 200 itself as the source address. The response signal further includes the device name "PC200" of the terminal 200.
[0046] When the printer 10 receives response signals from the terminal 100 and the terminal 200 in T40 and T42, it identifies the combination of the IP address "192.168.1.2" and the device name "PC100" of the terminal 100 included in the response signal received from the terminal 100, and further identifies the combination of the IP address "192.168.1.3" and the device name "PC200" of the terminal 200 included in the response signal received from the terminal 200. Then, in T44, the printer 10 transmits search result screen data including each of the identified combinations to the terminal 100.
[0047] When the terminal 100 receives the search result screen data from the printer 10 in T44, it displays the search result screen SC4 (see FIG. 4) represented by the search result screen data in T46. As shown in FIG. 4, the search result screen SC4 includes the combination of the IP address "192.168.1.2" and the device name "PC100", and the combination of the IP address "192.168.1.3" and the device name "PC200". The search result screen SC4 further includes a radio button A6 corresponding to each combination and a registration button B7. In T48, the terminal 100 accepts the selection of the radio button corresponding to the combination of the IP address "192.168.1.2" and the device name "PC100" and the selection of the registration button B7 from the user. In this case, as shown in FIG. 3, in T50, the terminal 100 transmits an IP address selection result including the IP address "192.168.1.2" and the device name "PC100" to the printer 10.
[0048] When the printer 10 receives the IP address selection result from the PC100 in T50, it transmits IP address update setting screen data (not shown in FIG. 3) representing the IP address update setting screen SC5 to the terminal 100.
[0049] When the terminal 100 receives the IP address update setting screen data from the printer 10, it displays the IP address update setting screen SC5. As shown in FIG. 4, the IP address update setting screen SC5 includes a message asking the user whether to set the update of the IP address, a "Set" button B8, and a "Do not set" button B9.
[0050] At T60, when the terminal 100 receives the selection of the "Set" button B8 from the user, it sends an update selection result (not shown in FIG. 3) indicating that the "Set" button B8 has been selected to the printer 10.
[0051] When the printer 10 receives the update selection result from the terminal 100, at T70 as shown in FIG. 3, it executes template storage processing. Specifically, the printer 10 associates the template number "1" included in the template creation request received according to T32 in FIG. 4, the IP address "192.168.1.2" included in the IP address selection result of T50 in FIG. 3, and the device name "PC100" included in the IP address selection result, and stores them in the template table 42. Further, since the update selection result received according to T60 in FIG. 4 indicates "Set", the printer 10 stores update information indicating "Yes" in association with the template number "1". Also, since the current default policy is set to "Deny", the printer 10 stores filter information indicating "Allow", which is the opposite of "Deny", in association with the template number "1". Then, the printer 10 stores status information indicating "Valid" in association with the template number "1". When a new template is created, the status information indicating "Valid" is stored by default.
[0052] Through each of the above processes, in the template table 42, a template identified by the template number "1" is registered. As a result, the printer 10 generally rejects communication with any device, but exceptionally permits communication with the terminal 100 specified by the template number "1". Then, the printer 10 transmits template list screen data (not shown in FIG. 3) representing the template list screen SC6 to the terminal 100.
[0053] When the terminal 100 receives the template list screen data from the printer 10, it displays the template list screen SC6. The template list screen SC6 is the same as the template list screen SC2 except for the following points. The button B2 corresponding to the template "1" indicates "Permitted Device 1" instead of "Template 1". The radio button A2 corresponding to the button B2 is in a selected state instead of an unselected state. Instead of the character string "Unset", "Allow" is displayed on the right side of the button B2.
[0054] When the terminal 100 receives the selection of the home button B5 from the user at T80, it transmits a home screen request (not shown in FIG. 3) to the printer 10.
[0055] When the printer 10 receives the home screen request from the terminal 100, it transmits firewall setting screen data (not shown in FIG. 3) representing the firewall setting screen to the terminal 100.
[0056] When the terminal 100 receives the firewall setting screen data from the printer 10, it displays the firewall setting screen SC7. As shown in FIG. 5, the firewall setting screen SC7 has a mode in which the area for specifying the default policy is not selectable by the user. That is, the area has a so-called grayed-out mode. Other points are the same as the firewall setting screen SC1 in FIG. 4.
[0057] When the terminal 100 receives the selection of the template creation button B1 from the user at T90, it sends a template creation request (not shown in FIG. 3) to the printer 10.
[0058] When the printer 10 receives a template creation request from the terminal 100, it sends template list screen data (not shown in FIG. 3) representing a template list screen to the terminal 100.
[0059] When the terminal 100 receives the template list screen data from the printer 10, it displays the template list screen SC8. The template list screen SC8 is the same as the template list screen SC6 in FIG. 4. When the terminal 100 receives the selection of the button B3 from the user at T92, it sends a template creation request (not shown in FIG. 3) including the template number "2" corresponding to the button B3 to the printer 10.
[0060] When the terminal 100 receives the template setting screen data from the printer 10, it displays the template setting screen SC9. The template setting screen SC9 is the same as the template setting screen SC3 in FIG. 4 except that it shows the template number "2". Each area R3, R4, button A7, B10 is the same as each area R1, R2, button A5, B6, respectively.
[0061] At T94, the terminal 100 receives the input of the template name "Authorized Device 2", the selection of the "Outside Subnet" button, the input of the network address "192.168.2", and the selection of the search start button B10 from the user. In this case, as shown in FIG. 3, at T96, the terminal 100 sends an outside subnet search instruction to the printer 10. The outside subnet search instruction includes the template name "Authorized Device 2", information indicating that the "Outside Subnet" button has been selected, and the network address "192.168.2".
[0062] When the printer 10 receives an off-subnet search instruction from the terminal 100 in T96, in T98, it transmits a search signal that includes the IP addresses from "192.168.2.0" to "192.168.2.254" that contain the network address "192.168.2" included in the off-subnet search instruction, and includes the IP address "192.168.1.1" as the source address. Since the outside of the subnetwork 6 to which the printer 10 belongs is specified as the destination address, the search signal is transmitted toward the default gateway address "192.168.1.0" (i.e., the IP address of the router 60) stored in the memory 34. Then, the search signal is transferred to the subnetwork 8 having the network address "192.168.2" via the router 60. As a result, the search signal is received by each of the devices 300, 400, 500 within the subnetwork 8.
[0063] When the printer 300 receives a search signal from the printer 10 in T98, in T100, it transmits a response signal to the printer 10. The response signal includes the IP address "192.168.1.1" of the printer 10 as the destination address and includes the IP address "192.168.2.1" of the printer 300 itself as the source address. The response signal further includes the device name "PR300" of the printer 300.
[0064] When the terminal 400 receives a search signal from the printer 10 in T98, in T102, it transmits a response signal to the printer 10. The response signal includes the IP address "192.168.1.1" of the printer 10 as the destination address and includes the IP address "192.168.2.2" of the terminal 400 itself as the source address. The response signal further includes the device name "PC400" of the terminal 400.
[0065] When the terminal 500 receives a search signal from the printer 10 at T98, it transmits a response signal to the printer 10 at T104. The response signal includes the IP address "192.168.1.1" of the printer 10 as the destination address and the IP address "192.168.2.3" of the terminal 500 itself as the source address. The response signal further includes the device name "PC500" of the terminal 500.
[0066] When the printer 10 receives response signals from the printer 300, the terminal 400, and the terminal 500 respectively at T100 - T104, it identifies the combinations of the IP addresses and device names included in each response signal. Specifically, the printer 10 identifies the combination of the IP address "192.168.2.1" and the device name "PR300" of the printer 300, the combination of the IP address "192.168.2.2" and the device name "PC400" of the terminal 400, and the combination of the IP address "192.168.2.3" and the device name "PC500" of the terminal 500. Then, at T44 which is cited, the printer 10 transmits search result screen data including the above identified combinations to the terminal 100.
[0067] When the terminal 100 receives search result screen data from the printer 10 at T44 which is cited, it displays a search result screen SC10 (see FIG. 5) represented by the search result screen data at T46 which is cited. As shown in FIG. 5, the search result screen SC10 includes the above three combinations. The search result screen SC10 further includes a radio button A8 corresponding to each combination and a registration button B11. At T110 (i.e., T48 cited in FIG. 3), the terminal 100 accepts the selection of the radio button corresponding to the combination of the IP address "192.168.2.2" and the device name "PC400" and the selection of the registration button B11 from the user. In this case, as shown in FIG. 3, at T50 which is cited, the terminal 100 transmits an IP address selection result including the IP address "192.168.2.2" and the device name "PC400" to the printer 10.
[0068] When the printer 10 receives the IP address selection result from the terminal 100 in the cited T50, it transmits IP address update setting screen data representing the IP address update setting screen SC11 to the terminal 100.
[0069] When the terminal 100 receives the IP address update setting screen data from the printer 10, it displays the IP address update setting screen SC11. As shown in FIG. 5, the IP address update setting screen SC11 is the same as the IP address update setting screen SC5 in FIG. 4. In T112, when the terminal 100 receives the selection of the "Set" button B8 from the user, it transmits an update selection result indicating that the "Set" button B8 has been selected to the printer 10.
[0070] When the printer 10 receives the update selection result from the terminal 100, as shown in FIG. 3, it executes template storage processing in T120. Specifically, the printer 10 associates the template number "2" included in the template creation request received according to T92 in FIG. 5, the IP address "192.168.2.2" included in the IP address selection result of T50 cited in FIG. 3, and the device name "PC400" included in the IP address selection result, and stores them in the template table 42. Further, since the update selection result received according to T112 in FIG. 5 indicates "Set", the printer 10 stores update information indicating "Yes" in association with the template number "2". Also, since the current default policy is set to "Deny", the printer 10 stores filter information indicating "Allow", which is the opposite of "Deny", in association with the template number "2". Then, the printer 10 stores status information indicating "Valid" in association with the template number "2".
[0071] Through each of the above processes, information regarding template number "2" is registered in the template table 42. As a result, the printer 10 basically rejects communication with any device, but can exceptionally permit communication between the terminal 100 specified by template number "1" and the terminal 400 specified by template number "2". That is, the process of storing a template in T70 or T120 is a filtering process that basically rejects communication between an external device and the printer 10, but permits communication between the printer 10 and the device selected by the user. Then, the printer 10 transmits template list screen data representing the template list screen SC12 to the terminal 100.
[0072] When the terminal 100 receives the template list screen data from the printer 10, it displays the template list screen SC12. The template list screen SC12 is the same as the template list screen SC6, except for the following points. The button B3 indicates "Permitted Device 2" instead of "Template 2". The radio button A3 corresponding to the button B3 is in a selected state instead of a non-selected state. Instead of the character string "Unset", "Allow" is displayed to the right of the button B3.
[0073] According to the above configuration, when the user selects in the template setting screen SC3 of FIG. 4 that the printer 10 should search for each device within the subnetwork 6 to which the printer 10 belongs (T34 in FIG. 3), the printer 10 masks its own IP address "192.168.1.1" with its own subnet mask "255.255.255.0" to identify the network address "192.168.1" of the subnetwork 6. Then, the printer 10 transmits a search signal including the broadcast address "192.168.1.255" of the identified network address "192.168.1" as the destination address (T38) to identify each device 100, 200 within the subnetwork 6. Specifically, the printer 10 identifies the combination of the IP address "192.168.1.2" and the device name "PC100" of the terminal 100, and the combination of the IP address "192.168.1.3" and the device name "PC200" of the terminal 200 included in the response signal received from the terminal 200. Then, the printer 10 causes the search result screen SC4 including the identified combinations to be displayed on the display unit 114 of the terminal 100 (T44).
[0074] Further, when the user selects in the template setting screen SC9 of FIG. 5 that the printer 10 should search for each device belonging outside the subnetwork 6 to which the printer 10 belongs (T94 in FIG. 3), the printer 10 transmits a search signal including, as a destination address, a network address "192.168.2" different from the network address "192.168.1" of the subnetwork 6 and input by the user (T98), thereby identifying each device 300, 400, 500 within the subnetwork 8. Specifically, the printer 10 identifies the combination of the IP address "192.168.2.1" and the device name "PR300" of the printer 300, the combination of the IP address "192.168.2.2" and the device name "PC400" of the terminal 400, and the combination of the IP address "192.168.2.3" and the device name "PC500" of the terminal 500. Then, the printer 10 causes the display unit 114 of the terminal 100 to display a search result screen SC10 including the identified combinations (T44, which is cited after T104 in FIG. 3).
[0075] For this reason, the user can select the devices 100, 400 to be subjected to the filtering process after recognizing each device 100, 200 within the subnetwork 6 to which the printer 10 belongs or each device 300, 400, 500 within the subnetwork 8 different from the subnetwork 6 in the search result screen SC4 or the search result screen SC10. Therefore, the convenience for the user is improved.
[0076] Here, in the firewall setting screen SC1 of FIG. 4, when the "Allow" button is selected by the user, that is, when "Allow" is specified as the default policy of the printer 10, an explanation will be given. When the terminal 100 receives, from the user, the selection of the default policy "Allow" and the selection of the template creation button B1 in the firewall setting screen SC1, the terminal 100 displays the template list screen SC2. When the terminal 100 receives the selection of the button B2 from the user in the template list screen SC2 by performing the same operations as described above, the terminal 100 sends a template creation request to the printer 10 and displays the template setting screen SC3. When the terminal 100 receives, from the user, the input of the template name "Unauthorized Device 1", the selection of the "Within Subnet" button, and the selection of the search start button B6 in the template setting screen SC3, the terminal 100 sends a within-subnet search instruction to the printer 10.
[0077] The printer 10 receives the within-subnet search instruction from the terminal 100. Thereafter, in the printer 10 and each of the terminals 100 and 200, the same processing as T38 to T60 in FIGS. 3 and 4 is executed.
[0078] When the printer 10 receives the update selection result from the terminal 100, the printer 10 executes template storage processing. Specifically, the printer 10 associates the template number "1" included in the template creation request, the IP address "192.168.1.2" included in the IP address selection result of T50 in FIG. 3, and the device name "PC100" included in the IP address selection result, and stores them in the template table 42. Further, since the update selection result received according to T60 in FIG. 4 indicates "Set", the printer 10 stores update information indicating "Required" in association with the template number "1". Also, since the current default policy is set to "Allow", the printer 10 stores filter information indicating "Deny", which is the opposite of "Allow", in association with the template number "1". Then, the printer 10 stores status information indicating "Valid" in association with the template number "1".
[0079] Through each of the above processes, information regarding template number "1" is registered in the template table 42. As a result, the printer 10 can, in principle, permit communication with any device, but can exceptionally reject communication with the terminal 100 specified by the template number "1". That is, the process of storing the template in this case is a filtering process that permits communication between the external device and the printer 10 in principle, but rejects communication between the device selected by the user and the printer 10. Note that on the template setting screen SC3, instead of the "within subnet" button, the "outside subnet" button may be selected by the user. Also in this case, the process of storing the template is a filtering process that permits communication between the external device and the printer 10 in principle, but rejects communication between a certain device outside the subnetwork 6 (for example, any one of devices 300, 400, 500) and the printer 10.
[0080] (IP address update process; FIGS. 6 and 7) Next, with reference to FIGS. 6 and 7, the IP address update process executed by the CPU 32 of the printer 10 will be described. The IP address update process is a process for updating the IP address included in the template. In each process of FIGS. 6 and 7, the trigger for starting the process is different and the update method is different. The IP address update process of FIG. 6 is started triggered by the printer 10 being powered on.
[0081] In S10, the CPU 32 identifies one template from the template table 42 in the memory 34.
[0082] In S12, the CPU 32 determines whether the status information included in the identified template is "valid" and whether the update information included in the identified template is "required". If the status information is "valid" and the update information is "required" (YES in S12), the CPU 32 proceeds to S14. On the other hand, if the status information is "invalid" or the update information is "not required" (NO in S12), the CPU 32 proceeds to S18, and in this case, the processes of S14 and S16 described below are not executed.
[0083] In S14, the CPU 32 sends a query request including the device name included in the identified template to the DNS server (i.e., the router 60), and acquires the IP address corresponding to the device name by receiving a query response including the IP address associated with the device name. That is, the CPU 32 performs name resolution.
[0084] In S16, the CPU 32 compares the IP address included in the identified template with the IP address acquired in S14, and if the two are different, changes and stores the IP address included in the identified template to the acquired IP address. Note that the CPU 32 does not change the IP address if the two match.
[0085] In S18, the CPU 32 determines whether the processes after S10 have been executed for all the templates in the template table 42. If the CPU 32 determines that the processes have been executed for all the templates (YES in S18), the process of FIG. 6 ends. If the CPU 32 determines that the processes have not been executed for all the templates (NO in S18), the CPU 32 returns to S10.
[0086] Next, the IP address update process of FIG. 7 will be described. The IP address update process of FIG. 7 is started triggered by the arrival of a predetermined timing. The predetermined timing may be, for example, a predetermined time of the day, or the timing when a predetermined update operation is executed by the user.
[0087] In S30, the CPU 32 determines whether the DNS cache flag in the memory 34 indicates "ON". When the DNS cache flag indicates "ON" (YES in S30), the CPU 32 proceeds to S32. When the DNS cache flag indicates "OFF" (NO in S30), the process of FIG. 7 ends.
[0088] The processes of S32 and S34 are the same as S10 and S12 of FIG. 6, respectively. When the state information included in the identified template is "valid" and the update information included in the identified template is "required" (YES in S34), the CPU 32 proceeds to S36. On the other hand, when the state information is "invalid" or the update information is "not required" (NO in S34), the CPU 32 proceeds to S40, and in this case, the processes of S36 and S38 described later are not executed.
[0089] In S36, the CPU 32 identifies the device name included in the identified template, and acquires the IP address associated with the identified device name from the DNS cache table 44 in the memory 34.
[0090] In S38, the CPU 32 compares the IP address included in the template identified in S32 with the IP address acquired from the DNS cache table 44 in S36. When the two are different, the CPU 32 changes the IP address included in the identified template to the acquired IP address and stores it. Note that when the two match, the CPU 32 does not change the IP address included in the identified template.
[0091] In S40, the CPU 32 determines whether the processes after S32 have been executed for all the templates in the template table 42. When the CPU 32 determines that the processes have been executed for all the templates (YES in S40), the CPU 32 proceeds to the process of S42. When the CPU 32 determines that the processes have not been executed for all the templates (NO in S40), the CPU 32 returns to S32.
[0092] In S42, the CPU 32 switches the DNS cache flag from "ON" to "OFF". This ends the process of FIG. 7.
[0093] As described above, the printer 10 executes an IP address update process for changing the IP address of a template including the update information "required" in the template table 42 (S16 in FIG. 6, S38 in FIG. 7). Thereby, even if the IP address of the device corresponding to the template is changed, the printer 10 can use the changed IP address.
[0094] (Corresponding relationship) The printer 10 is an example of a "communication device". The network 5, the sub-network 6, and the sub-network 8 are examples of a "local area network", a "specific sub-network", and "one or more other sub-networks", respectively. The combination of the IP address and the subnet mask of the printer 10 is an example of "network information". The terminal 100 and the terminal 200 are examples of a "first type of external device", respectively. The printer 300, the terminal 400, and the terminal 500 are examples of a "second type of external device", respectively. The display unit 114 of the terminal 100 is an example of a "display unit". The template setting screen SC3 in FIG. 4 and the template setting screen SC9 in FIG. 5 are examples of a "first selection screen". The search result screen SC4 in FIG. 4 and the search result screen SC10 in FIG. 5 are examples of a "first search result screen" and a "second search result screen", respectively. The process of storing a template in T70 or T120 in FIG. 3 is an example of a "filter process". The device name is an example of "name information". The IP address obtained from the router in S14 of FIG. 6 and the IP address obtained from the DNS cache table 44 in S36 of FIG. 7 are examples of a "second IP address". The router 60 having a DNS server function is an example of a "name resolution server". The DNS cache flag is an example of an "update flag". The DNS cache flag "ON" and the DNS cache flag "OFF" are examples of a "first value" and a "second value", respectively.
[0095] The process of transmitting the template setting screen data representing the template setting screen SC3 to the terminal 100 and the process of transmitting the template setting screen data representing the template setting screen SC9 to the terminal 100 are each an example of the process executed by the "first display control unit". T40 and T42 in FIG. 3 are an example of the process executed by the "first specifying unit". T44 in FIG. 3 is an example of the process executed by the "second display control unit". T100 to T104 in FIG. 3 are an example of the process executed by the "second specifying unit". T44 cited after T104 in FIG. 3 is an example of the process executed by the "third display control unit". T70 and T120 in FIG. 3 are an example of the process executed by the "filter processing execution unit". S14 in FIG. 6 and S36 in FIG. 7 are an example of the process executed by the "acquisition unit". S16 in FIG. 6 and S38 in FIG. 7 are an example of the process executed by the "modifying unit". The process of receiving a plurality of combinations of IP addresses and device names from the router 60 and the process of storing the plurality of combinations of information in the DNS cache table 44 are each an example of the process executed by the "reception unit" and the "storage control unit".
[0096] (Second Embodiment; FIGS. 8 and 9) Subsequently, the second embodiment will be described. In this embodiment, the template setting screen and the search result screen are different from those in the first embodiment. In the initial state of FIG. 8, no information is yet stored in the template table 42 of the printer 10. In FIGS. 8 and 9, the same processes and the same screens as in FIGS. 4 and 5 are denoted by the same reference numerals, and the description thereof is omitted.
[0097] When the terminal 100 receives the template setting screen data from the printer 10, it displays the template setting screen SC20. As shown in FIG. 8, the template setting screen SC20 includes a template number "1", a template name input area R1, a button B13 for selecting a start network address, a button B14 for selecting an end network address, and a search start button B15. The buttons B13 and B14 are buttons for specifying the range of the network address of the subnetwork to be searched.
[0098] Here, before the printer 10 transmits the template setting screen data to the terminal 100, the printer 10 masks its own IP address "192.168.1.1" with its own subnet mask "255.255.255.0" to identify the network address "192.168.1" of the subnetwork 6 to which the printer 10 belongs. Then, the printer 10 identifies the range of IP addresses from "192.168.0" to "192.168.255" as the range including the identified network address "192.168.1". The printer 10 transmits the identified range of IP addresses to the terminal 100 together with the template setting screen data.
[0099] In T200, when the terminal 100 receives from the user the input of the template name "Authorized Device 3" and the selection of the button B13 for selecting a start network address, it displays the template setting screen SC21 including a pull-down PD1. The pull-down PD1 is an area for selecting one IP address from the above range of IP addresses from "192.168.0" to "192.168.255". In T202, the terminal 100 receives the selection of the IP address "192.168.1" from the user. In this case, the terminal 100 displays the template setting screen SC22 in which the selected network address "192.168.1" is input as the start network address.
[0100] Next, when the terminal 100 receives the selection of the button B14 for the user to select the end network address at T204, it displays a template setting screen SC23 (see FIG. 9) including a pull-down PD2. The pull-down PD2 is an area for selecting one IP address from the above IP address range from "192.168.0" to "192.168.255". The terminal 100 receives the selection of the IP address "192.168.2" from the user at T204. In this case, a template setting screen SC24 with the selected network address "192.168.2" input as the end network address is displayed on the terminal 100.
[0101] When the terminal 100 receives the selection of the search start button B15 from the user at T206, it transmits a search instruction including the start network address "192.168.1" and the end network address "192.168.2" to the printer 10.
[0102] When the printer 10 receives the search instruction from the terminal 100, it includes the broadcast address "192.168.1.255" of the start network address "192.168.1" and the "192.168.2.255" of the end network address "192.168.2" included in the received search instruction as the destination address, and transmits a broadcast search signal including the IP address "192.168.1.1" as the source address. As a result, the search signal is received by each device 100, 200 in the subnet 6 and each device 300, 400, 500 in the subnet 8.
[0103] When the printer 10 receives response signals from each of the terminal 100, the terminal 200, the printer 300, the terminal 400, and the terminal 500, it identifies the combination of the IP address and the device name included in each response signal. That is, the printer 10 identifies five combinations. Next, the printer 10 identifies two combinations (i.e., "192.168.1.2" - "PC100", "192.168.1.3" - "PC200") having a network address that matches the network address "192.168.1" of the printer 10 from among the above five combinations. Further, the printer 10 identifies three combinations (i.e., "192.168.2.1" - "PR300", "192.168.2.2" - "PC400", "192.168.2.3" - "PC500") having a network address that does not match the network address "192.168.1" of the printer 10 from among the above five combinations. Then, the printer 10 transmits search result screen data including the above two combinations and information indicating "within the subnet", and the above three combinations and information indicating "outside the subnet" to the terminal 100.
[0104] When the terminal 100 receives the search result screen data from the printer 10, it displays the search result screen SC25 represented by the search result screen data. The search result screen SC25 includes the above five combinations. The above two combinations are associated with a character string indicating "within the subnet", and the above three combinations are associated with a character string indicating "outside the subnet". That is, the search result screen SC25 shows the devices within the subnet 6 and the devices outside the subnet 6 in a distinguishable manner. The search result screen SC25 further includes a radio button A9 corresponding to each combination and a registration button B16. At T208, the terminal 100 accepts the selection of the radio button corresponding to the combination of the IP address "192.168.1.2" and the device name "PC100" and the selection of the registration button B16 from the user. In this case, the terminal 100 transmits the IP address selection result including the IP address "192.168.1.2" and the device name "PC100" to the printer 10. Each subsequent process T160, etc. and each screen SC26, SC27, etc. are the same as those in the first embodiment.
[0105] Through each of the above processes, the printer 10 can execute a filtering process that basically rejects communication with any device but exceptionally permits communication with the terminal 100 specified by the template number "1".
[0106] In addition, in the firewall setting screen SC1 of FIG. 8, when the "Allow" button is selected by the user, that is, when "Allow" is specified as the default policy of the printer 10, the screens of FIGS. 8 and 9 are also displayed. In this case, the printer 10 stores filter information indicating "Deny", which is the opposite of "Allow", in the template storage process. That is, the printer 10 can execute a filtering process that basically permits communication with any device but exceptionally rejects communication with the terminal 100 specified by the template number "1".
[0107] (Effect of this embodiment) According to the above configuration, for each network address between the start network address and the end network address specified by the user, the printer 10 identifies each device 100, 200 in the subnet 6 and each device 300, 400, 500 in the subnet 8 by transmitting a broadcast search signal. Then, the printer 10 causes the search result screen SC25 including each identified combination to be displayed on the display unit 114 of the terminal 100. Here, on the search result screen SC25, each device in the subnet 6 and each device outside the subnet 6 are shown in a distinguishable manner. For this reason, the user can distinguish and recognize each device 100, 200 in the subnet 6 to which the printer 10 itself belongs and each device 300, 400, 500 in the subnet 8 different from the subnet 6 on the search result screen SC25, and then select the device to be the target of the filtering process (i.e., the terminal 100). Therefore, the convenience for the user is improved.
[0108] (Corresponding relationship) The process of the printer 10 executed in response to the selection of the search start button B15 in FIG. 9 is an example of the process executed by the "third identifying unit". After that, the process of the printer 10 identifying each device in the subnet 6 and each device outside the subnet 6 is an example of the process executed by the "fourth identifying unit". The process of the printer 10 transmitting the search result screen data to the terminal 100 is an example of the process executed by the "display control unit". The process of storing the template is an example of the process executed by the "filtering process execution unit".
[0109] Although the specific examples of the present invention have been described in detail above, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes of the specific examples illustrated above. The modifications of the above embodiments are listed below.
[0110] (Modification Example 1) In T36 of FIG. 3, when the printer 10 receives a subnet search instruction from the terminal 100, in T38, the printer 10 may transmit a search signal using the broadcast address corresponding to all network addresses in the network 5. In this case, the search signal is received by each device 100, 200, 300, 400, 500 in the network 5. Then, when the printer 10 receives a response signal from each device 100, 200, 300, 400, 500, the printer 10 uses the IP address "192.168.1.1" and the subnet mask "255.255.255.0" of the printer 10 to identify the network address "192.168.1". Then, the printer 10 identifies two devices 100, 200 in the subnet 6 by identifying two response signals including the identified network address "192.168.1" from each response signal. This process is an example of the process executed by the "first identification unit".
[0111] (Modification Example 2) In the search result screen SC4 of FIG. 4, the search result screen SC10 of FIG. 5, and the search result screen SC25 of FIG. 9, instead of the combination of the IP address and the device name of each device, only the IP address may be displayed, or only the device name may be displayed. Further, the printer 10 may further execute communication with each device to be displayed on the search result screen SC4 etc. (for example, communication such as Simple Network Management Protocol (SNMP)), and receive the model information of each device. In this case, in the search result screen SC4 etc., only the model information may be displayed, or in addition to the model information, the IP address and / or the device name may be displayed. Generally speaking, the "first search result screen", and / or, the "second search result screen", and / or, the "search result screen" may include at least one of the name information, the IP address, and the model information.
[0112] (Modification Example 3) The template setting screen SC9 in FIG. 5 may not include the network address input area R2. In this case, in T96 of FIG. 3, the printer 10 receives, from the terminal 100, information indicating that the "Outside Subnet" button has been selected and a search instruction for outside the subnet that does not include a network address. In T98, the printer 10 designates network addresses "192.168.0" and "192.168.2" to "192.168.255" other than its own network address "192.168.1" and designates the host address as the broadcast address (i.e., 255) and transmits a search signal. Generally speaking, the "second specifying unit" does not have to specify one or more second types of external devices using a subnet specified by the user.
[0113] (Modification Example 4) The template setting screen SC9 in FIG. 5 may not include the network address input area R2. In this case, in T96 of FIG. 3, the printer 10 receives, from the terminal 100, information indicating that the "Outside Subnet" button has been selected and a search instruction for outside the subnet that does not include a network address. Then, in T98, the printer 10 may transmit a search signal using the broadcast address corresponding to all network addresses in the network 5. In this case, the search signal is received by each device 100, 200, 300, 400, 500 in the network 5. After that, when the printer 10 receives a response signal from each device 100, 200, 300, 400, 500, the printer 10 specifies the network address "192.168.1" using the IP address "192.168.1.1" of the printer 10 and the subnet mask "255.255.255.0". Then, the printer 10 specifies three response signals including network addresses other than the specified network address "192.168.1" from each response signal to specify three devices 300, 400, 500 outside the subnet 6. This process is an example of the process executed by the "second specifying unit".
[0114] (Modification Example 5) The template setting screen SC20 in FIG. 8 may not include the button B13 for selecting the start network address and the button B14 for selecting the end network address. In this case, the printer 10 may transmit a broadcast search signal in response to the selection of the search start button B15 (see FIG. 9). This process is also an example of the process executed by the "third specifying unit". Then, similar to the above Modification Examples 1 and 4, the printer 10 specifies two devices 100 and 200 within the subnet 6 and three devices 300, 400, and 500 outside the subnet 6. This process is also an example of the process executed by the "fourth specifying unit".
[0115] (Modification Example 6) The processes in FIGS. 6 and 7 may be omitted. In this case, in the template table 42, the update information can be omitted. In this modification example, the "acquisition unit" and the "modification unit" can be omitted.
[0116] (Modification Example 7) The printer 10 may store the network address itself of the subnet 6 to which the printer 10 itself belongs. In this modification example, the network address itself is an example of the "network information".
[0117] (Modification Example 8) In the above embodiments, the processes of each step in FIGS. 3 to 9 are realized by software (for example, the program 40 of the printer 10), but at least one of these processes may be realized by hardware such as a logic circuit.
[0118] Also, the technical elements described in this specification or the drawings exhibit technical utility alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Further, the technology exemplified in this specification or the drawings can achieve a plurality of purposes simultaneously, and achieving one of these purposes itself has technical utility.
[0119] In the claims of a patent application at the time of filing, even if each claim depends only on some of the claims, each claim is not limited to being able to depend only on some of the claims. Within a technically non - conflicting range, each claim can also depend on other claims that it did not depend on at the time of filing. That is, the technologies of each claim can be combined in various ways as follows. (Item 1) A communication device, when the communication device belongs to a specific sub - network among a plurality of sub - networks constituting a local area network, a memory for storing network information capable of specifying the network address of the specific sub - network; a first display control unit for causing a display unit to display a first selection screen for selecting which of one or more first - type external devices belonging to the specific sub - network and one or more second - type external devices belonging to a sub - network different from the specific sub - network among the plurality of sub - networks should be searched; a first specifying unit for specifying the one or more first - type external devices by using the network information in the memory and transmitting a search signal to the outside when it is selected by the user in the first selection screen that the one or more first - type external devices should be searched; a second display control unit for causing the display unit to display a first search result screen indicating the one or more first - type external devices when the one or more first - type external devices are specified; a second specifying unit for specifying the one or more second - type external devices by transmitting a search signal to the outside when it is selected by the user in the first selection screen that the one or more second - type external devices should be searched; a third display control unit for causing the display unit to display a second search result screen indicating the one or more second - type external devices when the one or more second - type external devices are specified; A filter processing execution unit that executes a filter process regarding whether to permit communication with the specific external device when the specific external device is selected on the first search result screen or the second search result screen; A communication device comprising the same. (Item 2) The first search result screen includes at least one of name information of the external device, an IP address of the external device, and model information of the external device for each of the one or more first-type external devices. The second search result screen includes at least one of name information of the external device, an IP address of the external device, and model information of the external device for each of the one or more second-type external devices. The communication device according to Item 1. (Item 3) The second specifying unit, on the first selection screen, when it is selected by the user to search for the one or more second-type external devices and a network address of a subnetwork different from the specific subnetwork among the plurality of subnets is specified by the user, uses the specified network address and transmits the search signal to the outside to specify the one or more second-type external devices. The communication device according to Item 1 or 2. (Item 4) A communication device, When the communication device belongs to a specific subnetwork among a plurality of subnets constituting a local area network, a memory that stores network information capable of specifying the network address of the specific subnetwork; A third specifying unit that specifies a plurality of external devices belonging to either the specific subnetwork or one or more other subnets different from the specific subnetwork among the plurality of subnets by transmitting a search signal to the outside; A fourth specifying unit that specifies, from among the plurality of external devices, one or more first-type external devices belonging to the specific subnetwork and one or more second-type external devices belonging to the one or more other subnets, by using the network information in the memory; A display control unit that causes a display unit to display a search result screen showing the one or more first-type external devices and the one or more second-type external devices in a distinguishable manner; A filter processing execution unit that executes a filter process regarding whether to permit communication with the specific device information when a specific external device is selected on the search result screen; A communication device comprising the above. (Item 5) The communication device according to item 4, wherein the search result screen includes at least one of name information, an IP address, and model information of each of the plurality of external devices. (Item 6) The third specifying unit specifies the plurality of external devices by using two or more designated network addresses and transmitting the search signal to the outside when the network address of the specific subnetwork and one or more network addresses of the one or more other subnets are specified by a user. The communication device according to item 4 or 5. (Item 7) The filter process includes associating and storing in the memory the name information of the specific external device and a first IP address of the specific external device. The communication device further includes An acquisition unit that acquires a second IP address of the specific external device by using the name information of the specific external device after the filter process is executed; A change unit that changes the IP address stored in the memory in association with the name information of the specific external device from the first IP address to the second IP address. The communication device according to any one of items 1 to 6, comprising the above. (Item 8) The acquisition unit transmits the name information of the specific external device to a name resolution server and acquires the second IP address from the name resolution server, the communication device according to item 7. (Item 9) The communication device further includes a reception unit that receives, from a name resolution server, for each of one or more external devices including the specific external device, the name information of the external device and the IP address of the external device; a storage control unit that associates, for each of the one or more external devices, the name information of the external device and the IP address of the external device and stores the association in the memory as a name resolution cache, and the acquisition unit acquires the second IP address associated with the name information of the specific external device from the name resolution cache in the memory, the communication device according to item 7. (Item 10) The filtering process includes storing in the memory, in association with the name information of the specific external device, the first IP address of the specific external device, and an update flag according to a user's selection, the update flag indicates either a first value corresponding to updating the IP address or a second value corresponding to not updating the IP address, when the update flag indicates the first value, the acquisition unit acquires the second IP address, the change unit changes the IP address stored in the memory in association with the name information of the specific external device from the first IP address to the second IP address, when the update flag indicates the second value, the second IP address is not acquired, the IP address stored in the memory in association with the name information of the specific external device is not changed from the first IP address to the second IP address, the communication device according to any one of items 7 to 9. (Item 11) The communication device according to any one of items 1 to 10, wherein the network information includes the IP address of the communication device and the subnet mask of the communication device.
Explanation of Signs
[0120] 2: Communication system, 4: Internet, 5: Network, 6, 8: Subnet, 10: Printer, 12: Operation unit, 14: Display unit, 16: Communication interface, 18: Printing execution unit, 30: Control unit, 32: CPU, 34: Memory, 40: Program, 42: Template table, 44: DNS cache table, 60: Router, 70, 80: Switching hub, 100: Terminal, 112: Operation unit, 114: Display unit, 116: Communication I / F, 130: Control unit, 132: CPU, 134: Memory, 140: Program, 200: Terminal, 300: Printer, 400: Terminal, 500: Terminal
Claims
1. A communication device, when the communication device belongs to a specific subnet among a plurality of subnets constituting a local area network, a memory that stores network information capable of specifying the network address of the specific subnet; a first display control unit that causes a display unit to display a first selection screen for selecting whether to search for one or more first-type external devices belonging to the specific subnet or one or more second-type external devices belonging to a subnet different from the specific subnet among the plurality of subnets; a first specifying unit that, when it is selected by the user to search for the one or more first-type external devices on the first selection screen, uses the network information in the memory and transmits a search signal to the outside to specify the one or more first-type external devices; a second display control unit that causes the display unit to display a first search result screen indicating the one or more first-type external devices when the one or more first-type external devices are specified; a second specifying unit that, when it is selected by the user to search for the one or more second-type external devices on the first selection screen, transmits a search signal to the outside to specify the one or more second-type external devices; a third display control unit that causes the display unit to display a second search result screen indicating the one or more second-type external devices when the one or more second-type external devices are specified; a filter processing execution unit that executes a filter process regarding whether to permit communication with the specific external device when a specific external device is selected on the first search result screen or the second search result screen; A communication device comprising the above.
2. The first search result screen includes at least one of name information of the external device, the IP address of the external device, and model information of the external device for each of the one or more first-type external devices. The second search result screen includes at least one of name information of the external device, the IP address of the external device, and model information of the external device for each of the one or more second-type external devices. The communication device according to Claim 1.
3. The communication device according to claim 1, wherein, on the first selection screen, when it is selected by the user that one or more second-type external devices should be searched in the second specific part, and when the user designates a network address of a sub-network different from the specific sub-network among the plurality of sub-networks, the designated network address is used and the search signal is transmitted to the outside to identify the one or more second-type external devices.
4. A communication device, when the communication device belongs to a specific sub-network among a plurality of sub-networks constituting a local area network, a memory that stores network information capable of identifying the network address of the specific sub-network; a third specifying unit that specifies a plurality of external devices belonging to any one of the specific sub-network and one or more other sub-networks different from the specific sub-network among the plurality of sub-networks by transmitting a search signal to the outside; a fourth specifying unit that specifies, from among the plurality of external devices, one or more first-type external devices belonging to the specific sub-network and one or more second-type external devices belonging to the one or more other sub-networks by using the network information in the memory; a display control unit that causes a display unit to display a search result screen indicating the one or more first-type external devices and the one or more second-type external devices in a distinguishable manner; a filter processing execution unit that executes a filter process regarding whether to permit communication with the specific device information when a specific external device is selected on the search result screen; A communication device comprising:
5. The communication device according to claim 4, wherein the search result screen includes at least one of name information of each of the plurality of external devices, an IP address of the external device, and model information of the external device.
6. The third specific part utilizes two or more designated network addresses and transmits the search signal externally when the network address of the specific subnetwork and one or more network addresses of the one or more other subnetworks are specified by the user, thereby identifying the plurality of external devices. The communication device according to claim 4.
7. The filtering process includes storing in the memory by associating the name information of the specific external device and the first IP address of the specific external device. The communication device further includes an acquisition unit that acquires a second IP address of the specific external device using the name information of the specific external device after the filtering process is executed; a modification unit that changes the IP address stored in the memory in association with the name information of the specific external device from the first IP address to the second IP address; The communication device according to claim 1 or 4, comprising.
8. The acquisition unit transmits the name information of the specific external device to a name resolution server and acquires the second IP address from the name resolution server. The communication device according to claim 7.
9. The communication device further includes a reception unit that receives, from a name resolution server, for each of one or more external devices including the specific external device, the name information of the external device and the IP address of the external device; a storage control unit that associates the name information of each of the one or more external devices and the IP address of the external device and stores them in the memory as a name resolution cache; The communication device according to claim 7, wherein the acquisition unit acquires the second IP address associated with the name information of the specific external device from the name resolution cache in the memory.
10. The filtering process includes storing in the memory by associating the name information of the specific external device, the first IP address of the specific external device, and an update flag according to a user's selection. The update flag indicates either a first value corresponding to updating the IP address or a second value corresponding to not updating the IP address. When the update flag indicates the first value the acquisition unit acquires the second IP address. The changing unit changes the IP address stored in the memory in association with the name information of the specific external device from the first IP address to the second IP address, when the update flag indicates the second value, the second IP address is not acquired, and the IP address stored in the memory in association with the name information of the specific external device is not changed from the first IP address to the second IP address. The communication device according to claim 7.
11. The network information includes the IP address of the communication device and the subnet mask of the communication device. The communication device according to claim 1 or 4.
12. A computer program for a communication device, wherein when the communication device belongs to a specific subnet among a plurality of subnets constituting a local area network, the communication device includes a memory for storing network information capable of specifying the network address of the specific subnet, the computer program causes the computer of the communication device to perform the following parts, namely, a first display control unit that causes a display unit to display a first selection screen for selecting which one of one or more first-type external devices belonging to the specific subnet and one or more second-type external devices belonging to a subnet different from the specific subnet among the plurality of subnets should be searched; a first specifying unit that, when it is selected by the user in the first selection screen that the one or more first-type external devices should be searched, uses the network information in the memory and transmits a search signal to the outside to specify the one or more first-type external devices; a second display control unit that, when the one or more first-type external devices are specified, causes the display unit to display a first search result screen indicating the one or more first-type external devices; a second specifying unit that, when it is selected by the user in the first selection screen that the one or more second-type external devices should be searched, transmits a search signal to the outside to specify the one or more second-type external devices; a third display control unit that, when the one or more second-type external devices are specified, causes the display unit to display a second search result screen indicating the one or more second-type external devices; A filter processing execution unit that executes a filter process regarding whether to permit communication with the specific external device when the specific external device is selected on the first search result screen or the second search result screen; A computer program that functions as. **Claim 13** A computer program for a communication device, wherein when the communication device belongs to a specific sub-network among a plurality of sub-networks constituting a local area network, the communication device includes a memory that stores network information capable of specifying the network address of the specific sub-network; a third specifying unit that specifies a plurality of external devices belonging to any one of the specific sub-network and one or more other sub-networks different from the specific sub-network among the plurality of sub-networks by transmitting a search signal externally; a fourth specifying unit that specifies, from among the plurality of external devices, one or more first-type external devices belonging to the specific sub-network and one or more second-type external devices belonging to the one or more other sub-networks by using the network information in the memory; a display control unit that causes a display unit to display a search result screen indicating the one or more first-type external devices and the one or more second-type external devices in a distinguishable manner; a filter processing execution unit that executes a filter process regarding whether to permit communication with the specific device information when the specific external device is selected on the search result screen; A computer program that functions as.
Citation Information
Patent Citations
Domestic network setting method, home gateway device, home gateway program, and recording medium
WO2005122492A1